Install this version with Unity Hub
Additional downloadsSelect the runtime platforms of your choice from the list below (the desktop runtime is included as standard) or, to install the full complement of runtime platforms, use the download assistant installer above.
Unity Editor Windows (X86-64)
New to Unity? Get started
5.4.0f2 (Release Candidate 2) Release Notes (FULL)
- Asset Import: Importing is now supported for models with more than 100,000 objects.
- DX12: Added support for multi-display rendering.
- Editor: Optional "strict mode" when building projects and AssetBundles, which will fail the build if any errors (even non-fatal ones) are reported during the build process.
- GI: Light Probe Proxy Volumes
This component allows using more than one light probe sample for large dynamic objects (think large particle systems or important characters). This will sample probes into a 3D texture and use that in the shader.
- Requires shader model 4 (DX11+/PS4/XB1/GLCore).
- GI: Occlusion of the strongest mixed mode light is now stored per light probe.
- Graphics: Added ImageEffectAllowedInSceneView attribute for Image Effects. This will copy the Image Effect from the main camera onto the Scene View camera. This can be enabled / disabled in the Scene View Effects menu.
- Graphics: Added motion vector support:
- Requires RG16 texture support.
- Motion vectors track the screen space position of an object from one frame to the next, and can be used for post process effects.
- See the API docs for Renderer.motionVectors, Camera.depthTextureMode, SkinnedMeshRenderer.skinnedMotionVectors, PassType.MotionVectors, and DepthTextureMode.MotionVector.
- Graphics: Basic GPU Instancing Support
- Use GPU instancing to draw a large amount of identical geometries with very few draw calls.
- Works with MeshRenderers that use the same material and the same mesh.
- Only needs a few changes to your shader to enable it for instancing. Supports both custom vertex/fragment shader and surface shader.
- Set per-instance shader properties from script via MaterialPropertyBlock.
- Supports Graphics.DrawMesh command.
- Supports DX11/DX12 with SM 4.0 and up on Windows, OpenGL 4.1 and up on Windows/OSX/Linux, PlayStation 4 and Xbox One.
- Graphics: Fast texture copies via Graphics.CopyTexture.
- Graphics: Graphics jobs can now be enabled (see Player Settings) for a potential performance boost. Currently in experimental status due to unknown project-dependent side effects.
- Graphics: Texture Array support; seeTexture2DArray class.
- IAP: Added support for fetching IAP products incrementally in batches.
- FetchAdditionalProducts method added to IStoreController.
- IAP: Cloud catalog support:A 'useCloudCatalog' boolean has been added to UnityEngine.Purchasing.ConfigurationBuilder. When set, Unity IAP will fetch your catalog of products for sale from the Unity cloud. Catalog is configured via the Unity Analytics dashboard.
- IL2CPP: Android support for IL2CPP is now official (previously 'experimental').
- iOS: Added support for ODR initial install tags.
- iOS: Option for custom URL schemes added to Player Settings.
- Kernel: The transform component has been rewritten using SIMD and a cache-friendly data layout, so the code is now simpler and faster. As a result, Transform.Setparent for large hierarchies can also be more expensive, since all data for one hierarchy will always be tightly packed together.
- OSX: Added Editor-enabled retina support (text and some icons only).
- Particles: New Trigger Module, including:
- A script callback when particles touch a predefined list of collision shapes.
- Ability to modify/kill particles that are intersecting the collision shapes.
- Particles: Particle width, height and depth (for Mesh particles) can now be defined independently from each other.
- Physics: New functions implemented: Physics.OverlapCapsule & Physics.OverlapCapsuleNonAlloc.
- Physics: Overlap recovery, used to de-penetrate CharacterControllers from static objects when an overlap is detected. When activated, the CharacterController module will automatically try to resolve the penetration, and move the CharacterController to a safe place where it does not overlap other objects anymore.
- Physics: Running the PhysX simulation step can now be skipped if not required by Rigidbodies or WheelColliders.
- Physics: The ContactPoint.separation has been exposed.
- Shaders: Uniform array support:
- Uniform arrays can be set by new array APIs on MaterialPropertyBlock, Shader and Material.
- The size of an array is lifted to 1023.
- The old way of setting array elements by using number-suffixed names is deprecated.
- Substance: ProceduralMaterials are now supported at runtime on Windows Store/Phone platforms.
- VR: Added support for Native Spatializer Plugins for VR. Oculus Spatializer included with the support.
- VR: Native OpenVR support added:
- Note that native OpenVR support renders with an off-center asymmetric projection matrix. This means that any shaders which relied on fov / aspect may not work correctly.
- VR: Oculus Support for DirectX 12.
- VR: Optimized Single-Pass Stereo Rendering available in Player Settings.
- VR: VR Focus and ShouldQuit Support: -Application Focus is now controlled by respective VR SDK when Virtual Reality Support is enabled. -Application will quit if the respective VR SDK tells the app to quit when Virtual Reality Support is enabled
- VR: VR multi-device support:
- PlayerSettings: When the Virtual Reality Supported checkbox is checked, a prioritized list is shown allowing devs to choose which VR SDKs their game supports. (Similar to the Graphics API selection dialog)
- VR SDK list is per build-target.
- Dependencies (such as DLLs) will be copied to the build for every SDK in the list.
- At startup, Unity will go down the list and try to initialize each device. If any fail to initialize (for example, if the headset is not connected), Unity will move on to the next. If all fail, Unity won’t enter VR mode.
- PlayerSettings: Deprecated PlayerSettings stereoscopic 3D checkbox. This goes through the same subsystem as the VR devices, so a non-headmounted stereoscopic driver is one of the possible devices on supporting platforms.
- VR API: Deprecated VRDeviceType enum and VRSettings.loadedDevice. This is replaced with VRSettings.loadedDeviceName and VRSettings.LoadDeviceByName().
- VR API: Added the ability to get a list of supported SDKs. Readonly: string VRSettings.supportedDevices.
- Web: GamePerf service integration. You can now track your exceptions from the wild by enabling this in the Services window.
- Web: WebPlayer support has been removed, and the default player is now the platform desktop being run on for the Editor. Therefore desktop platform installation choices are no longer available for their respective editors.
- Windows: Added speech recognition APIs under UnityEngine.Windows.Speech. These APIs are supported on all Windows platforms as long as they're running on Windows 10: Windows Editor, Windows Standalone and Windows Store.
- Windows: Added support for G-Sync and FreeSync on Windows 10 on DirectX 11 (for the Windows Store player only) and DirectX 12 (for both the standalone player and the Windows Store player).
- Windows: Windows Standalone player now can be run in Low Integrity Mode.
- Windows Store: Command line argument -dontConnectAcceleratorEvent can now be added to disable accelerator event-based input. This disables support for some keys in Unity (like F10, Shift), but fixes issue with duplicate characters in some XAML controls.
- Windows Store: Realtime global illumination now works when using Windows 10 SDK.
- Windows Store: UnityWebRequest now supported for all SDKs.
Backwards Compatibility Breaking Changes
- Android: WebCam no longer works on Gingerbread devices.
- Deployment Management: Any errors logged during the build process will now cause the build to fail. This includes errors that previously allowed the build to succeed anyway, such as shader compilation failures.
- DX12: Introduced new native plugin interface IUnityGraphicsD3D12v2 . The old interface will not function anymore due to differences in internal graphics job submission.
- Editor: Deprecated UnityEditor.ShaderUtil.ShaderPropertyTexDim; users should now use Texture.dimension.
- GI: Deprecated Light.actuallyLightmapped; users should now use Light.isBaked and Light.bakedIndex instead. Baked Light now has unique index, instead of the flag "actuallyLightmapped"
- Graphics: Deprecated Material(String) constructor further. This will now always create a material with the error shader and print an error, in both Editor and player. It will be completely removed in a future Unity version.
- IMGUI: InvalidOperationException is no longer thrown on opening "select audio clip" pop up dialog. Added EditorGUI.DisabledScope to replace deprecated EditorGUI.[Begin/End]DisabledGroup().
- Physics: Made changes to avoid Physics transform drift by not sending redundant Transform updates.
- Physics: Physics Meshes are now rejected if they contain invalid (non-finite) vertices.
- Playables: Refactored API so that Playables are structs instead of classes, making the API allocation-less in C#.
- Scripting: Added two new script errors in the editor for catching calls to the Unity API during serialization. See "Scripting Serialization" page in the manual for more details.
- Scripting: UnityEngine.Object.GetInstanceID() is no longer thread safe (change made to facilitate a memory optimization).
- Shaders: Changed default shader compilation target to "#pragma target 2.5" (SM3.0 on DX9, DX11 9.3 feature level on WinPhone). Can still target DX9 SM2.0 and DX11 9.1 feature level with "#pragma target 2.0". The majority of built-in shaders target now 2.5. Notable exceptions are Unlit, VertexLit and fixed function shaders.
- Web: Promoted WebRequest interface from UnityEngine.Experimental.Networking to UnityEngine.Networking. Unity 5.2 and 5.3 projects that use UnityWebRequest will need to be updated.
- Android: Assets - Disabled texture streaming for Android.
- Android: Deprecated UnityPlayerNativeActivity and UnityPlayerProxyActivity; these will now print warnings to the logcat if in use.
- Android: Removed native activity implementation. An activity with the same name based on a regular activity is still in place for backwards compatibility reasons.
- Audio: Streamed audio clips are no longer preloaded. This is done to reduce the number of open file handles in scenes referencing a large number of streamed clips. The behaviour is not affected except for a slight increase in playback latency.
- Audio: Updated FMOD to 4.44.56.
- Desktop players: With Webplayer removal, desktop players are now part of their respective Editor installations, so the option to separately install them is removed.
- DX12: Disabled client/worker mode as a preparation step for pure threading (-force-gfx-mt now does nothing for DX12).
- DX12: Enabled GPU profiler in single-threaded mode (-force-gfx-direct).
- Editor: Editor will now trigger a warning when opening a project from any version not matching the project's matching last version string saved in information. This includes small version changes such as 5.4.0b1 to 5.4.0b2, or 5.4.0f3 to 5.4.0p1.
- Graphics: Default Camera's background clear color now has 0 alpha, instead of 5/255 alpha.
- Graphics: Unity splash screen replacement now uniform across platforms, featuring a light and pro-only dark style.
- Particles: Added particle radius parameter for world collisions.
- Physics: API changes:
- Renamed Cloth.useContinuousCollision to Cloth.enableContinuousCollision, and Cloth.solverFrequency to Cloth.clothSolverFrequency.
- Exposed Cloth.enableTethers.
- Physics: Fixed Character Controller Physics causing capsule to be thrown in the air when exiting another collider.
- Physics: Renamed Physics.solverIterationCount to Physics.defaultSolverIterations, and Rigidbody.solverIterationCount to Rigidbody.solverIterations.
- Samsung TV: Added Ignore BG Alpha Clear checkbox to Resolution section of Samsung TV player settings. This will disable the clearing of the alpha value for the background fill, allowing for blending between Unity's render layer and the layer behind.
- Scripting: Renamed onSceneLoaded to sceneLoaded, onSceneUnloaded to sceneUnloaded, and onActiveSceneChanged to activeSceneChanged, to be compliant with naming conventions.
- Scripting: Using GameObject.AddComponent is no longer allowed and will throw an exception. Derive a class from MonoBehaviour and add it instead.
- Shaders: Moved internal shader for computing screenspace cascaded shadows into Graphics Settings. If you were overriding it before by just dropping it into the project, you now need the custom one via Graphics Settings.
- Shaders: Removed support for EXT_shadow_samplers on non-iOS OpenGL ES 2.0 platform.
- Terrain: Terrain objects created in the Scene will now be properly renamed (in the same way as GameObjects) to avoid using the same name.
- Terrain: When different TerrainData are used for Terrain and TerrainCollider components on the same GameObject, a warning message will be shown with a button to fix the situation.
- UI: Switched component menu name for RectMask2D to match class name.
- WebGL: Removed .htaccess file generation.
- Windows Store: Deprecated PlayerSettings.WSA.enableLowLatencyPresentationAPI. It is now always enabled.
- Analytics: Added missing fields to the hwstats report.
- Analytics: Added support for Analytics on AppleTV device.
- Android: Added template for ProGuard obfuscation on exported project.
- Android: Android: Marshmallow - Added the possibility to disable the permission dialog by adding metadata to the activity.
- Android: Application name now supports non-alphanumeric characters and spaces.
- Android: Audio - Automatic OpenSL output has been updated to check the native device params and not use OpenSL if they look bad (fixes audio issues on buggy devices).
- Android: Buildpipe: Updated SDK tools requirements for the Editor.
- Android: Converted some fatal error messages to be presented on-screen rather than printed to the logcat.
- Android: Editor: Added Marshmallow to the list of APIs.
- Android: Enhanced robustness of Location input.
- Android: IL2CPP - Will now require Android NDK x64 on x64 Windows Editor instead of the 32-bit NDK.
- Android: SoftInput: Got rid of hardcoded text color, switched to Light theme.
- Android: Symbols for release libraries are now available in PlaybackEngines/AndroidPlayer/Variations/*/Release/Symbols.
- Android/IL2CPP: Full debug version of IL2CPP libraries are now stored in Temp/StagingArea/Il2Cpp/Native.
- Android/IL2CPP: Stripping of symbols and debug info is now enabled by default. Development builds still have symbols, which makes for a slightly larger binary.
- Animation: Improved Animation event performance for repeat calls to the same events on components.
- Audio: Added ability to transition AudioMixer snapshots by scaled and unscaled time.
- Audio: Added virtualization of audio effects. For audio sources that are virtual because they have been culled due to low audibility or priority, attached effect components or spatializers are now also bypassed in order to save CPU use. The new behaviour is on by default, but can be turned off in the audio project settings.
- Audio: Audio clip waveform preview now displays the actual format used for compression when the default format isn’t available on a certain platform.
- Audio: Fixed audio clip waveform preview rendering sync issues after import, and improved the way the waveforms are being rendered to be more dynamic and reveal more detail.
- Audio: Moved Preload Audio Data to the platform-specific settings section. The previous location was confusing as it was shown grayed-out in the inspector with a checkmark that depended on all overrides.
- Audio: SystemInfo now includes supportsAudio info.
- Cache Server: Improved the cache server so that it can properly handle scenarios when assets with missing references are being read.
- Cluster Rendering: Improvements to the cluster networking, including stability improvements while using cluster input.
- Compute: #pragma enable_d3d11_debug_symbols now supported just like regular shaders.
- Compute: Added DispatchIndirect function (similar to DrawProceduralIndirect; dispatches compute shader with parameters sourced from ComputeBuffer).
- Compute: API of hidden counters on ComputeBuffers can now be optionally reset when bound, and can be explicitly set via SetCounterValue.
- Compute: Exposed ComputeShader.GetKernelThreadGroupSizes to query compute thread group sizes.
- Compute: Improved error handling for compute shaders.
- Core: Added more profiling information to the PersistentManager.
- Core: Improved job execution. Spawn worker threads are now based on the number of logical processors instead of physical cores.
- Core: Object.Instantiate now takes a optional Transform parent parameter.
- Documentation: Improved the docs for Graphics.DrawMesh.
- DX12: Introduced -force-d3d12-stablepowerstate command line parameter. Use it when profiling the GPU.
- Editor: "Discard changes" in Scene context menu now reloads selected modified scenes.
- Editor: Added ability to hide the tetrahedron wireframe while editing light probe group.
- Editor: Added API to toggle preventing cross-scene references on/off.
- Editor: Added cancel button to "Opening Visual Studio" progress dialog.
- Editor: Added edit mode for light probe group to avoid accidental selection changes.
- Editor: Added EditorSceneManager.DetectCrossSceneReferences API.
- Editor: Added support for resizing the height of the Preferences window.
- Editor: Fixed the title of the Script Execution Order inspector.
- Editor: In Play Mode the DontDestroyOnLoad Scene will now only be shown if it has GameObjects.
- Editor: Scene headers are now always shown in the Hierarchy to prevent confusion when loading and unloading Scenes in Play Mode. This also allows user to see which Scene is loaded in OSX fullscreen mode.
- Editor - Other: ENABLE_PROFILER now works correctly in Editor for runtime DLL.
- GI: Added de-noising filter to baked final gather.
- GI: Added Lightmapping.realtimeGI and Lightmapping.bakedGI editor APIs.
- GI: Atlassing will now correctly generate atlases without wasting space when scaling down objects.
- GI: BakeEnlightenProbeSetJob results now stored in hashed file to speed up rebaking of light probes.
- GI: Final Gather no longer recomputes if the result is in the cache.
- GI: HDR color picker is now used for ambient color, instead of color plus ambient intensity.
- GI: Improved light update performance.
- GI: Improved mixing of realtime and baked shadows: removes shadow from the back-facing geometry, preserves bounce and contribution of other baked lights.
- GI: Upgraded to Enlighten 3.03.
- Graphics: A slice of 3D/2DArray can now be set as a render target (Graphics.SetRenderTarget depthSlice argument).
- Graphics: Added a -window-mode command line argument to override full-screen behaviour. Options: exclusive, borderless.
- Graphics: Added a property to allow skipping the bounding box recalculation when setting the list of indices or triangles of a Mesh. This is useful for LODs that use a sliding window.
- Graphics: Added GL.Flush API.
- Graphics: Added makeNoLongerReadable argument to Texture3D.Apply and Texture2DArray.Apply APIs, to allow for the release of system memory.
- Graphics: Added MaterialPropertyBlock.SetBuffer.
- Graphics: Added mechanism to tweak some Unity shader defines per-platform per-shader-hardware-tier. Currently it is exposed only to scripts (see UnityEditor.Rendering namespace, specifically UnityEditor.Rendering.PlatformShaderSettings for tweakable settings and UnityEditor.Rendering.EditorGraphicsSettings, for methods to get/set shader settings). Please note that if settings are different for some tiers, shader variants for ALL tiers will be compiled, but duplicates will be still stripped from final build.
- Graphics: Added RenderTexture.GetNativeDepthBufferPtr for native code plugins.
- Graphics: Added TextureDimension enum and Texture.dimension property.
- Graphics: Added useLightProbes argument to Graphics.DrawMesh (defaults to 'true').
- Graphics: Ambient Occlusion now has separate sliders for direct and indirect light. The default value is Ambient Occlusion on indirect light only.
- Graphics: DX11: Unity drawing annotations now correctly appear on Windows Store platforms when using GPU debuggers.
- Graphics: DX12: Optimized texture/mesh loading times by using GPU copy queue.
- Graphics: Reduced render batch breaking overhead due to LOD fading.
- IL2CPP: Optimized method prologues for code size and incremental builds.
- IL2CPP: Removed warnings from generated C++ code when compiling with clang.
- Installer: DownloadAssistant will now warn users if they try to install components which require Unity without selecting UnityEditor component.
- Installer: Mac Download Assistant will now write additional logs to ~/Library/Logs/Unity/DownloadAssistant.log.
- Installer: WindowsEditor Installer will install Release Notes online shortcut to the Windows start menu.
- iOS: Added device support for iPhone SE and iPad Pro 9.7".
- iOS: Added support for new native rendering plugin interface.
- iOS: Added Xcode 7.3 Build & Run support.
- iOS: Updated Game Center APIs will be used when present on the target device.
- iOS/IL2CPP: Added support for Xcode 7.3 (doesn't use __declspec attributes).
- iOS/tvOS: Change to use relative symlinks for plugins when building to a related folder.
- Metal: Support multithreaded rendering on iOS and OSX Metal devices.
- Multiplayer: Made matchName and matchSize serializable attributes so they can save on the network manager.
- Multiplayer: WebSocket: Improved memory allocation and socket writing procedure (fixed case of connection closing unexpectedly).
- OpenGL: Optimized shader translation for matrix array accessing. This especially improves instancing performance.
- OpenGL: Ported existing multidisplay support (Mac/Linux) to OpenGL core.
- Particles: Added implicit conversion operators when setting MinMaxCurve with constants. This allows "myModule.myCurve = 5.0f;" syntax. Added the same support for MinMaxGradient when using one color.
- Particles: Added option to select exactly which UV channels the Texture Animation Module is applied to.
- Particles: Added Undo support when auto re-parenting sub-emitters.
- Particles: Choosing a random start frame in the Texture Animation Module is now supported.
- Particles: It is now possible to read MinMaxCurve/MinMaxGradient in script, regardless of what mode it is set to. Previously it would give an error message in some modes.
- Physics: Added 'OneWayGrouping' property to PlatformEffector2D for group contacts.
- Physics: Added a warning when using a staticially combined mesh on a BoxCollider.
- Physics: Exposed Rigidbody.solverVelocityIterations and Physics.defaultSolverVelocityIterations, to help stabilize bounce behavior on impacts.
- Physics: Physics job processing is now only done on the high priority job stack, to avoid interference from other systems.
- Physics: Point editing is now allowed in Inspector for Edge/PolygonCollider2D.
- Profiler: Added toggle to exclude reference traversal in memory profile.
- ReflectionProbes: Specular probe convolution has been sped up (about 2x), and is now less noisy, particularly for HDR environments.
- Samsung TV: 2016 Samsung TVs are now supported.
- Scene Management: Added events sceneLoaded, sceneUnloaded and activeSceneChanged to SceneManager.
- Scripting: Added array APIs to Shader and CommandBuffer class.
- Scripting: Added LightShadowsResolution property to scripting API to make it possible to adjust the shadow mapping quality in code at run time on a per-light basis.
- Scripting: Added new yield instruction: WaitForSecondsRealtime.
- Scripting: Added UnityEngine.Diagnostics.PlayerConnection. This allows user to send files from player to Editor when profiler is connected.
- Scripting: Improved Instantiate() performance.
- Scripting: Improved SendMessage performance for repeat calls to the same message on components.
- Scripting: ScriptUpdater now asks whether to automatically update once per project session (i.e if a different project is opened or Unity is restarted).
- Serialization: Serialization depth limit warning now prints the serialization hierarchy that triggered the warning.
- Shaders: #pragma targets 3.5, 4.5, 4.6 are accepted.
- 3.5 - minimum version for texture arrays (DX11 SM4.0+, GL3+, GLES3+, Metal)
- 4.5 - minimum version for compute shaders (DX11 SM5.0+, GL4.3+, GLES3.1+)
- 4.6 - minimum version for tessellation (DX11 SM5.0+, GL4.1+, GLES3.1AEP+)
- Shaders: Added ability to exclude shaders from automatic upgrade by having "UNITY_SHADER_NO_UPGRADE" anywhere in shader source file.
- Shaders: Added PassFlags=OnlyDirectional pass tag. When used in ForwardBase pass, it makes sure that only ambient, light probe and main directional light information is passed. Non-important lights are not being passed as vertex light constants, nor are put into SH data.
- Shaders: Added shader #pragma to allow easy/cheap variants of shaders across different tiers of hardware in the same renderer without needing keywords (e.g. iPhone 4 and iPhone 6, within OpenGL ES).
- Shaders: Added UNITY_SAMPLE_TEX3D_LOD macro, for consistency with other LOD sampling macros.
- Shaders: ComputeBuffer data layout now matches between DX and automatically-translated GL shaders. Action required: All OpenGL-specific data layout manipulation in user scripts that get or set data from a ComputeBuffer should be removed.
- Shaders: Engine and built-in shaders use five fewer shader keywords now, leaving more keywords for users. The following keywords are thus removed: SOFTPARTICLES_OFF, HDR_LIGHT_PREPASS_OFF, HDR_LIGHT_PREPASS_ON, SHADOWS_OFF, DIRLIGHTMAP_OFF.
- Shaders: Extended Standard Shader UI and added new options to disable specular highlights and reflections, and to pack Smoothness into the alpha channel of the Albedo texture.
- Shaders: Implemented alpha-to-coverage ("AlphaToMask On" in shaders) on OpenGL/ES, DX9, and Metal (previously only on DX11/12).
- Shaders: Improved game data build times with many complex shaders, especially when they were already compiled before.
- Shaders: Improved shader translation performance when compiling shaders into OpenGL ES 2.0 & Metal.
- StackTrace: Deprecated Application.stackTraceLogType; users should now use Application.SetStackTraceLogType/GetStackTraceLogType instead.
- StackTrace: For StacktraceLogtype.None only the message will now be printed (without file name or line number).
- StackTrace: Stacktrace log type can now be set in PlayerSettings for various log types.
- Standalones: Added -hideWindow command line option to launch standalone applications with window hidden.
- Substance: Added a FreezeAndReleaseSourceData() method to the ProceduralMaterial class. This renders the ProceduralMaterial immutable and releases some of the underlying data to decrease the memory footprint. To release even more of the underlying data, it is necessary to call Resources.UnloadUnusedAssets() afterwards. Once frozen, the ProceduralMaterial cannot be cloned, its ProceduralTextures cannot be rebuilt, and its inputs cannot be set.
- Substance: User now recieves a warning when an input of a BakeAndDiscard ProceduralMaterial is being set at runtime.
- UI: Added new property AscentCalculationMode to TrueTypeFont importer to control how font ascent value is determined.
- UI: Added rootCanvas property to Canvas.
- UI: Align By Geometry now supports vertical alignment. This can be useful for cases where the font ascent/descent info has large uneven spacing.
- UI: Began work on improving performance of MaskUtility functions.
- UI: Created an empty RectMask2D editor and modified the selectable one to hide script fields.
- UI: ETC1 + alpha support for UIImage.
- UI: Improved the way that line spacing affects leading in text generation, to provide more predictable leading when line spacing is less than 1.
- UI: Made more functions virtual inside Graphics class.
- UI: UI now sets the texelSize for use in custom shaders.
- VisualStudio: COM no longer used to launch VisualStudio, resulting in better immediate feedback experience.
- VR: Added support for the Oculus Rift Remote. It now presents itself to the input system as a joystick named "Oculus Remote".
- VR: Audio will now dynamically switch to headset's audio output / input driver (Oculus SDK 1.0+).
- VR: Invisible pixels are now masked so GPU time is not wasted (Oculus SDK 1.0+).
- VR: The Oculus OVRPlugin signature check now happens only for non-development, release builds.
- VR: Updated to Oculus Runtime version 1.5.
- VR: Updated to the 1.4 Oculus API.
- WebGL: Incremental builds of generated C++ code are now supported.
- Windows Standalone: Added "Copy PDB files" option in the Build Settings window. This way, you can control whether or not to copy debugging files.
- Windows Store: Added Bluetooth capability to Player Settings.
- Windows Store: Added PlayerSettings.WSA.Declarations API for setting declarations for Package.appxmanifest.
- Windows Store: Added UnityEngine.Ping class.
- Windows Store: Fixed generated Visual Studio solution and Assembly-CSharp* projects so that they will no longer rebuild needlessly. See upgrade guide for more information.
- Windows Store: Improved deserialization performance when using .NET scripting backend
- Windows Store: Improved Visual Studio project generation. The solution shouldn't rebuild needlessly anymore; however, users may need to delete the old generated project so it can be regenerated.
- Windows Store: In Player Settings, visual asset images are now edited using object fields.
- Windows Store: New implementation for TouchScreenKeyboard on UWP now supports both XAML and D3D apps as well as IME input. Older implementation can be turned on by passing command line argument -forceTextBoxBasedKeyboard.
- Windows Store: PDBs will now be included in the installers for "Release" players as well as debug and master players.
- Windows Store: System.operatingSystem will add '64bit' postfix if target device has 64bit CPU (see more information in Unity Documentation).
-  2D: Add tooltips for Size, Full Tile or Threshold on the 9-slice section of the Sprite Renderer.
-  2D: Animating the Transform position/rotation when using 'Animate Physics' now correctly uses Rigidbody2D MovePosition/MoveRotation.
-  2D: Enabling a static 2D trigger collider now results in a callback if in contact with a sleeping collider.
-  2D: Fixed a crash when packing a crunched 24-bit texture.
- [759462, 761416] 2D: Fixed error log 'GetLocalizedString is not allowed...'
-  2D: Fixed memory leak when applying changes to sprite.
-  2D: Fixed the clipped text in the Unity Preferences > 2D pane.
-  2D: SurfaceEffector2D now correctly calculates tangent velocities for objects with forces opposing the desired surface speed.
-  AI: Agent no longer reports no path when moving over OffMeshLink.
-  AI: Disabled expanding the navmesh clipping hull beyond the collected list of affected polygons - this could cause t-junctions.
-  AI: Fix prevents rare access of garbage memory of last node in navmesh bv-tree.
-  AI: Fixed issue where agents area cost settings were overwritten with global cost settings when doing NavMeshAgent.CalculatePath.
-  AI: Fixed issue where navmesh carving would sometimes collapse degenerate triangles in a way that could affect other polygons.
-  Android: Added an explicit clear for .mdb files for release builds.
-  Android: Added support OpenGL ES 3.0 on Vivante GPUs.
-  Android: Audio is now muted when audio focus is lost,
-  Android: Buildpipe: change to no longer make use of preview SDK tools installed, in order to avert "Failed to re-package resources" errors in the console.
-  Android: Buildpipe: Fixed AAPT errors on project export.
-  Android: Buildpipe: Fixed AAR plugin and resource issues on exported projects.
-  Android: Editor now only detects Android devices that are online.
-  Android: Fix for black screen or crash during startup on old PVR devices (Samsung Galaxy S I9000).
-  Android: Fixed a crash on PVR devices caused by a driver issue with KHR_debug.
-  Android: Fixed a crash related to the main context not being an Activity.
-  Android: Fixed an issue where Ping wouldn't work in release mode.
- Android: Fixed an issue where SystemInfo.deviceUniqueIdentifier would return an empty string on some x86 devices.
-  Android: Fixed an issue where Unity would emit "Unknown event structure (0)" to the log several times per second.
-  Android: Fixed bug in Texture.GetPixels for ETC compressed textures.
-  Android: Fixed case of immersive mode switching off on some KitKat devices when pressing volume buttons.
-  Android: Fixed freeze in new splash screen when using threaded GfxDevice.
-  Android: Fixed remote frame debugger.
-  Android: LocationService - Fixed crash bug
-  Android: Marshmallow - Fixed issues when querying for custom permissions.
-  Android: Mono - Fixed crash on startup with Unity Ads when stripping is enabled.
- [764422, 762733] Android: PlayerPrefs - Fixed an issue where upgrading a lot of keys from a previous version of unity would cause an out of memory error
-  Android: Tegra 2: application no longer crashes if UnitySendMessage is called during initialization
-  Android/IL2CPP: Fixed build errors on NDK paths with whitespaces
-  Android/IL2CPP: Fixed crash on second startup after installation
-  Animation: A warning that was erroneously displayed in AnimationClip is now displayed in ModelImporter.
-  Animation: Added an error when an AnimatorOverrideController can't find the animations to override in the base AnimatorController
-  Animation: Added AnimationClipPlayable.applyFootIK.
-  Animation: Added better error messaging and handling for for AnimationCurves with invalid data.
-  Animation: Animation event no longer fires twice when the controller is set by script and an instantaneous transition is triggered on the same frame.
-  Animation: Animation Window: Overridden virtual methods are now listed as potential Animation Event targets.
-  Animation: Changed parameter ordering in Add Property pop-up.
-  Animation: Crossfading an Animator that is already crossfading no longer loses the initial crossfade.
-  Animation: Disabled multi-file editing of model scale because it wasn't working properly.
-  Animation: Disabled play/record/key/... buttons on Animation window when viewing objects with optimized hierarchy
-  Animation: Disabled recording and playback ui in animation window when in game mode
-  Animation: Disabled reset menu item in component when animation mode is active.
-  Animation: Dragging Sprite Assets into the Hierarchy window and then pressing Cancel no longer deletes the parent GameObject.
-  Animation: Fix animation clip length for bundled clip
-  Animation: Fix for deleted GameObject when cancelling AnimationClip creation on Sprite drop.
-  Animation: Fix RootMotion import for generic animation with parent with specific default values
-  Animation: Fix to allow deletion of the last keyframe in the curve editor.
-  Animation: Fix to prevent Animation Event from being created with negative time.
-  Animation: Fix to prevent crash when a clip is null for an animation extracted from an AssetBundle, whose dependencies have not loaded.
-  Animation: Fixed a bug causing an offset between Set and Get of Animator.bodyPosition.
-  Animation: Fixed a bug spewing errors when the animation mode was reset from saving the scene.
-  Animation: Fixed a bug where animations created using the "Create" menu would contain an empty Sprite track
-  Animation: Fixed a bug where auto keys at time 0 for rotation curves were slightly off.
-  Animation: Fixed a bug where Rotation property would still be shown to be added even when it was animated.
-  Animation: Fixed a bug where the Animation window would try to access a deleted Animator component and cause a crash.
-  Animation: Fixed a case where adding an IsActive property to a legacy animation would cause a crash when sampling.
-  Animation: Fixed a case where animation events queue up when fireEvents is set to false.
-  Animation: Fixed a case where copying transitions between state machines without copying destination would crash.
-  Animation: Fixed a crash in the importer when all keyframes on a track are invalid.
-  Animation: Fixed a crash triggered when playing an AnimatorControllerPlayable with an invalid asset.
-  Animation: Fixed a crash when interrupting a transition on a synchronized layer.
-  Animation: Fixed a crash when trying to enumerate a list of 0 animations on the Animation component.
-  Animation: Fixed adding an Animator via the AnimationWindow not dirtying the scene
-  Animation: Fixed an error in the Inspector when selecting multiple files.
-  Animation: Fixed an issue where an assert would fail when importing animations on a model where the skinned mesh was not on the root joint.
-  Animation: Fixed an issue where animation events would be significantly slower when an object has a lot of components.
-  Animation: Fixed an issue where animation events would be significantly slower when an object has a lot of components.
-  Animation: Fixed an issue where AnimationPreview objects would get grabbed by FindGameObjectWithTag.
-  Animation: Fixed an issue where Changing culling modes during runtime would not take effect correctly
-  Animation: Fixed an issue where changing the selected game object would leave the animated properties modified.
-  Animation: Fixed an issue where euler angles were being shown differently in 5.3 than in 5.2.
- Animation: Fixed an issue where events and additional curves in 0-length animations were popping errors
-  Animation: Fixed an issue where having animations with a mixed number of bones in a controller, and having Write Defaults to false would throw errors.
-  Animation: Fixed an issue where imported keyframes would overlap and get sorted in the wrong order
-  Animation: Fixed an issue where interrupted transitions would cause empty states to continue to output animation.
-  Animation: Fixed an issue where rotation keys created through the inspector defaulted to quaternion curves instead of euler curves.
-  Animation: Fixed an issue where Rotation values would change on save.
-  Animation: Fixed an issue where Rotation values would stay applied to objects after exiting Animation Mode.
-  Animation: Fixed an issue where switching to playmode and applying import properties to a Legacy Animation would crash
- Animation: Fixed an issue where the ModelImporterClipAnimation inspector would not show properly when he Avatar Mask was empty
-  Animation: Fixed an issue where the transition preview wouldn't reappear when valid parameters were set (after it having disappeared when invalid parameters were set).
-  Animation: Fixed an issue with rotations staying applied after animating
-  Animation: Fixed an issue with stepped keys having the wrong value.
-  Animation: Fixed animation event firing even though layer weight is set to zero.
-  Animation: Fixed animation event not firing for transition with exit time of 1 and duration of 0.
-  Animation: Fixed animation in Scene View not updating when deleting key in dopesheet editor.
-  Animation: Fixed Animation previewer not detecting properly target object to preview
-  Animation: Fixed Animation recording being broken in some cases.
-  Animation: Fixed Animation window not updating to selection when out of focus or when just opened.
-  Animation: Fixed AnimationClip.SampleAnimation leak
- Animation: Fixed AnimationClipImporter inspector for Generic clips.
-  Animation: Fixed AnimationClipPlayable.duration so that it returns the length of its AnimationClip.
-  Animation: Fixed Animator Blend Tree layout issues with long motion names.
- Animation: Fixed Animator with statemachine behaviour runtime compile error not firing callback on the right SMB
-  Animation: Fixed Animator.CrossFade failing when already crossfading.
-  Animation: Fixed Animator.UpdateMode not being saved.
-  Animation: Fixed AnimatorController vs AnimatorControllerPlayable not being reset the same way when modified.
-  Animation: Fixed AnimatorControllerPlayable.GetParameter crash.
-  Animation: Fixed applying rotation on RigidBody2D.
-  Animation: Fixed beeping sounds when pressing 'k' and 'c' hotkeys in the Animation window.
-  Animation: Fixed blending not smooth when entering or leaving empty state.
-  Animation: Fixed broken Avatar Configure Tool when changing tabs with invalid Avatar.
-  Animation: Fixed broken import of RootMotion transforms for Humanoid.
-  Animation: Fixed case of animation being glitchy when 'Optimize Game Objects' option was selected.
-  Animation: Fixed case of animation compression distorting animation.
-  Animation: Fixed case of ArgumentNullException being issued when deleting a property in the Animation Window.
-  Animation: Fixed case of blend tree inspector not updating animator values in game mode.
-  Animation: Fixed case of CullingMode not getting properties applied when changed during Play Mode in Inspector.
-  Animation: Fixed case of GetHumanPose crashing when using it with a humanoid avatar with unsupported hierarchy.
-  Animation: Fixed case of incorrect framing being applied when changing the Curve Editor property selection in the Animation Window.
-  Animation: Fixed case of incorrect transition shown in Inspector when entering Play Mode.
-  Animation: Fixed case of missing transitions when undoing layer deletion in Animator window.
-  Animation: Fixed case of playable not updating when an AnimatorController is already set in the animator.
-  Animation: Fixed case of playable not updating when animator controller is already set in animator.
-  Animation: Fixed case of playback not stopping when changing frame in the Animator window.
-  Animation: Fixed case of rotation values set in Inspector being restricted to 0-360 degrees when recording animation.
-  Animation: Fixed case of sample rate not being taken into account when moving key frame in curve editor.
-  Animation: Fixed case of Scene View not updating when changing clip in the Animation window.
-  Animation: Fixed case of slider in curve editor and dope sheet editor resetting for clips of short duration.
-  Animation: Fixed case of state machine undo moving focus back to base layer.
-  Animation: Fixed case of transition not evaluating when exit time is close to 1.0.
-  Animation: Fixed clipped text for transition preview warning message.
-  Animation: Fixed contextual menu operation on multiple selection in Animation window hierarchy.
-  Animation: Fixed copy/paste to a clip where associated properties don't exist.
-  Animation: Fixed crash when calling Animator.GetCurrentAnimatorStateInfo during an interrupted transition.
-  Animation: Fixed crash when calling Animator.Update(0) in an AnimationEvent.
-  Animation: Fixed crash when changing OverrideController on Animator with no Avatar.
-  Animation: Fixed crash when changing playable controller in animator in Game Mode.
-  Animation: Fixed crash when changing scripts while in Play Mode.
-  Animation: Fixed crash when deleting all euler keys in animation curve.
- [743374, 740860, 742587] Animation: Fixed crash when deleting AnimatorController asset.
-  Animation: Fixed crash when duplicating transition.
-  Animation: Fixed crash when trying to copy Entry Transition.
-  Animation: Fixed crashes in AudioSource.GetCustomCurve.
-  Animation: Fixed Culled Animator still calling PrepareFrame
-  Animation: Fixed current frame not set properly in Animation window at certain sample rates.
-  Animation: Fixed current timeline breaking in the AnimationWindow during resize of the window.
-  Animation: Fixed curve editor range not updated when moving animation event.
-  Animation: Fixed curve selection not clearing in dopesheet editor when clicking on editor background.
-  Animation: Fixed cut letter in the 'Dopesheet' button, in the Animation window.
-  Animation: Fixed documentation for AvatarBuilder.
-  Animation: Fixed dopesheet keyframe manipulation not registering.
-  Animation: Fixed error message in AnimationClip importer.
-  Animation: Fixed error message in console while optimizing animation hierarchy.
-  Animation: Fixed error message when adding color animation.
-  Animation: Fixed error message when using BlendTree livelink
-  Animation: Fixed errors with unsupported functions and enum events.
-  Animation: Fixed event window not appearing when pressing Add Animation Event button.
-  Animation: Fixed focus on search field when opening the add StateMachineBehaviour windows.
-  Animation: Fixed frame clipping not performed when changing clips in curve editor.
-  Animation: Fixed frame number not updating during playback when it's being edited.
-  Animation: Fixed frame number not updating when pressing next/previous key frame button while it's being edited.
-  Animation: Fixed GameObject animated data being duplicated when copy-and-pasting in Scene View hierarchy.
- Animation: Fixed Generic MatchTarget.
-  Animation: Fixed ghost rename text field in Animation window when changing selection.
-  Animation: Fixed highlight at wrong index after drag&dropping layer in Animator.
- Animation: Fixed import of humanoids when root object rotation is not identity. Mostly single root 3DSMAX models
-  Animation: Fixed inconsistencies in dopesheet editor and curve editor framing.
-  Animation: Fixed inconsistency in tangent mode when a key frame is created between two with different tangent modes
-  Animation: Fixed issue where it was not possible to change clip when Animation window is locked.
-  Animation: Fixed issue whereby animation events could be added to read-only animation clips.
-  Animation: Fixed issue whereby property or keyframe deletion in read-only clip was not disabled in Animation window.
-  Animation: Fixed issue whereby the Z position of RectTransform couldn't be animated.
-  Animation: Fixed issue with first frame of animation displaying default state of the object.
-  Animation: Fixed issues when dragging and dropping a sprite into a clip with no existing sprites.
- [683514, 692934] Animation: Fixed issues with 2D elements creating unwanted keyframes in the animation window when enabled/disabled.
-  Animation: Fixed issues with dragging and dropping sprites in a GameObject with multiple bindings available.
-  Animation: Fixed key editing over duplicates issues in curve editor.
-  Animation: Fixed LayersAffectMassCenter with ControllerPlayable.
- Animation: Fixed leaking scriptable objects in AnimationWindow.
-  Animation: Fixed live link to OverrideController.
-  Animation: Fixed long Animator.Update not playing all Events/ExitTimes.
-  Animation: Fixed long start play mode for scene with a lot of controller
-  Animation: Fixed loss of Animation window selection when selecting child GameObjects.
-  Animation: Fixed loss of curve selection in the curve editor when keys are moved in the dopesheet editor.
- Animation: Fixed memory leak in AnimatorOverrideController.
-  Animation: Fixed missing keys when pasting on curves with multiple matching properties.
-  Animation: Fixed missing operation when dragging dope key outside of viewport.
-  Animation: Fixed missing undo when renaming binding in animation window.
-  Animation: Fixed missing update to Inspector when adding or removing property while recording animation.
-  Animation: Fixed missing warning when deleting a parameter that is used by a transition from "Any State".
-  Animation: Fixed negative value in frame navigation ui not prevented
-  Animation: Fixed NullReferenceException in Animation window when deleting the GO that is played.
-  Animation: Fixed NullReferenceExceptions when deleting a state after opening a project from 4.x.
-  Animation: Fixed numerical issues in next/previous frame scrubbing of animation window.
-  Animation: Fixed offset when drag&dropping sprites in animation window
-  Animation: Fixed OpenGL errors showing in console when closing "Add Property" pop-up window.
-  Animation: Fixed Play/Pause/Step buttons not turning red when entering AnimationWindow recording
-  Animation: Fixed property added in recording mode to read-only clip.
-  Animation: Fixed property value not being unselected on mouse down in Animation window.
-  Animation: Fixed Scale not working in Editor on GameObject with OptmizeGameObject.
-  Animation: Fixed scale value getting zeroed when removing scale curve components in AnimationWindow.
-  Animation: Fixed scene not being dirtied when AnimatorController field changes on Animator component.
-  Animation: Fixed StateMachineBehaviour not updating when changing AnimatorController at runtime.
-  Animation: Fixed StateMachineBehaviours on layer not being called properly.
-  Animation: Fixed StateMachineTransition being displayed as EntryTransition
-  Animation: Fixed text editing overlay remaining active in Animation window when losing focus.
-  Animation: Fixed the display order of properties in the animation window to be the same as instantiation in component.
-  Animation: Fixed transition previewer getting stuck in an infinite loop with some transitions.
-  Animation: Fixed unremovable property in the Animation window.
-  Animation: Fixed unresponsive animation window when zoomed out beyond a certain level.
-  Animation: Generating an avatar with AvatarBuilder should no longer return an error if the HumanDescription doesn't include the whole hierarchy up to the topmost GameObject.
-  Animation: If scaling GO using Vector3 with zero z or Vector2, then its child Rigidbody will have its position multiplied by that vector.
-  Animation: Implemented API for tangentMode in AnimationUtility.
- Animation: Memory usage improvements.
-  Animation: ModelImporter.defaultClipAnimation should return the default mask.
- Animation: Optimized AvatarMask inspector.
-  Animation: Removed modal dialog showing when removing states or transitions in the animator window.
-  Animation: Removed the animator property "enabled" from the list of animatable properties in the animation window.
-  Animation: Renamed interpolation Euler Angles (Quaternion Approximation) to Euler Angles (Quaternion) for simplicity.
-  Animation: Root motion not applied on single object
-  Animation: Rotate tool no longer rotates wrong for object with negatively scaled parent.
-  Animation: Rotation value changes on Play Mode a little bit.
-  Animation: Unity no longer hard-crashes when importing Blender Rigify model.
-  Animation: [backport 5.3] Fixed crash when animating visibility of a GameObject also containing animation in Play Mode.
-  Asset Bundles: AssetBundles: Loading AssetBundles via WWW outside of Play Mode now works correctly.
- Asset Bundles: BuildAssetBundles will now switch back to the original Active Build Target when finished.
-  Asset Bundles: Fixed crash that could be triggered when calling AssetBundle.LoadAllAssetAsync() on a streamed Scene AssetBundle.
-  Asset Bundles: Fixed crash when building AssetBundles.
-  Asset Bundles: Fixed default lzma compression for BuildPipeline.BuildStreamedSceneAssetBundle.
-  Asset Bundles: Fixed issue whereby particle materials would lose reference to textures if loaded from AssetBundles.
-  Asset Bundles: Fixed the source of error messages when building variant AssetBundles.
-  Asset Bundles: Fixed up-to-date check when a script is only renamed, which previously could result in Asset Bundle build failures.
-  Asset Import: Added support for Blender 2.77 and later.
-  Asset Import: Fixed issue with fileScale value always being set to 1 on first import.
- Asset Loading: Asset Loading: Fixed possible crash when loading multiple asset bundles simultaneously.
- Asset Loading: AssetLoading: Fixed excessive memory usage when decompressing AssetBundles with many objects inside (very large serialized file).
- Asset Loading: Fixed AssetBundle read error when compressed data could be read as uncompressed.
- Asset Loading: Fixed possible AssetBundle caching error when starting multiple downloads with an empty cache.
-  Asset Loading: Fixed thread hang after filesystem error when decompressing AssetBundle data to the cache.
-  Asset Management: Fixed case of Compress Assets On Import setting being ignored when switching platforms.
-  Asset Management: Fixed crash at UndoBase::DetermineUndoType when deleting a large number of objects or objects with large sizes.
-  Asset Management: Fixed crash that could be triggered when undoing the replacement of a transform on a Prefab instance.
-  Asset Management: Implemented delay connecting to the cache server, until the user has finshed entering the cache server IP.
-  Audio: "Failed to initialize spatializer" warning message no longer appears when Spatializer Plugin is set to "None".
-  Audio: Audio Low Pass Filter now works on Audio Listener.
-  Audio: Audio Profiler no longer shows "wrong" information when using Spatialization.
- Audio: Audio profiler: Added separator lines between columns, adapted initial column widths to fit, and added support for horizontal scrolling.
-  Audio: AudioMixer.GetFloat() and SetFloat() now work without needing to restart Unity.
-  Audio: AudioSource: Fixed issue whereby Doppler Level didn't work when used with custom spatializer plugins.
-  Audio: Fixed case of component effect appearing disabled on play and becoming enabled again after pressing pause and then play.
-  Audio: Fixed case of Unity crashing when the Disable Audio option was selected in Project Settings.
-  Audio: Fixed crash when disabling component which uses OnAudioFilterRead.
- Audio: Fixed handling of default DSP buffer size. Previously, once the buffer size was changed to something other than Default latency, changing it back to Default latency had no effect.
-  Audio: Fixed issue where an AudioSource created from MovieTexture.audioClip always returned 'time' property as 'Infinity'.
- Audio: Fixed issue where AudioClip.LoadAudioData had no effect when called after AudioSettings.Reset.
-  Audio: Fixed issue where AudioListener with two custom scripts crashed when reinitializing the sound system.
- Audio: Fixed issue where AudioSource.time was returning NaN values for user-created clips.
- Audio: Fixed issue where non-persisted audio clips (i.e. clips created through AudioClip.Create) tried to reload after AudioSettings.Reset, which caused error messages.
-  Audio: Fixed issue where the Audio Lowpass Frequency curve moved in the wrong direction in the AudioSource curve view.
-  Audio: Fixed issue whereby adding an effect in the mixer with bypass effects enabled didn't rechain the component effect back properly.
- Audio: Fixed issue whereby the memory profiler did not report AudioClip memory correctly. The memory allocated by AudioClips was wrongly accumulated under AudioManager.
-  Audio: Fixed mixer reverb effects getting cut off early in standalone builds.
-  Audio: Fixed random mixup between internal direct and reverb signal connections which could cause AudioSources to interfere and become silent under certain conditions.
-  Audio: Large numbers of streaming audio clips no longer cause crashes in batch mode.
-  Audio: Microphone.IsRecording(null) no longer returning true even when no devices were available.
- Audio: Native audio plugin SDK: Fixed dspbuffersize having a value of 0 when default buffer size settings are selected.
- Audio: Preloaded sounds now allow calling GetData in Start().
- Audio: Project browser now updates after a change has been applied in the AudioImporterInspector.
- Audio: Sounds marked as Play On Awake are now shown in Audio profiler.
-  CacheServer: Fixed issue with wrong CacheServer IP address used when "Check Connectivity" button clicked in Preferences window.
-  Compute: Add more specific error messages when creating compute buffers, to help user pinpoint the problem.
-  Compute: Compute shader programs that use >8 UAVs on platforms (e.g. D3D11 before 11.1) that don't support that many UAVs are no longer dispatched, and when importing such a shader a warning is reported.
-  Compute: Documented the restriction whereby ComputeBuffer.CopyCount is only available to IndirectArgs or Raw typed destination buffers.
-  Compute: Fixed a regression where ComputeShader.SetFloats wouldn't set all values in some constants (like arrays of matrices).
- Compute: Fixed bugs on HLSL to GLSL compute shader translation with atomic ops.
- Compute: Fixed import of humanoids (mostly single-root 3DSMAX models) when the hierarchy's root object rotation matrix is not identity.
-  Compute: Improved support for bool parameters for compute shaders.
- Compute: Warnings/errors for compute shaders are no longer reported during asset import if current build target does not support compute shaders.
-  Connect: Opening "last loaded project" upon Unity start up will no longer unlink project from its organization.
-  Core: Error messages now returned for invalid locationPathName parameter values for BuildPipeline.BuildPlayer.
- [674553, 727331] Core: Fix for prefabs not updating the root order property modification under certain circumstances.
-  Core: Fix for silent asset overwrite when importing a package via "openfile" (aka double-click).
-  Core: Fixed a crash when more than 65535 identically named objects were created.
-  Core: Fixed asset importer error when calling AssetDatabase.Refresh() during import of assembly.
-  Core: Fixed crash when deleting child-object when prefab connection is lost.
-  Core: Fixed deletion order of depending components.
-  Core: Fixed issues with import of '~' folders (ignored folders).
- [687080, 543729, 549533, 593676, 562606] Core: Fixed issues with ScriptableObjects added as sub-objects to assets.
-  Core: Fixed memory corruption in enlighten scene mapping.
-  Core: Fixed not being able to return license.
-  Deployment Management: Exceptions from PostProcessBuild callbacks now correctly cause a build to fail. Previously builds with this issue would exit with return code 0.
- Deployment Management: Fix to ensure to include streaming asset files in the editor log build report correctly.
-  Deployment Management: Fixed incorrect size calculation in the Editor log build report.
-  Deployment Management: When building from the GUI, Unity now uses a relative project path if the build location is under the project folder.
-  Deployment Management: [Source Code Customers Only] Fixed issue whereby building Windows Standalone would fail with Config Dialog Banner set and "Install in builds folder" checked.
-  DirectX: Windowed Direct3D 11 applications will no longer run with their framerate uncapped when minimized.
- Documentation: Restored lost documentation for RenderTargetSetup.
-  DX11: Fixed errors when trying to create floating point textures in linear color space with mismatching flags.
-  DX11: Fixed rendering into 3D/2DArray render texture mip levels.
- DX12: Fixed case of DX11 9.x feature level shaders erroneously being treated as supported on DX12.
-  Editor: Added a warning in the Camera Inspector when the rendering path is set to deferred but the perspective is set to orthographic, as orthographic is unsupported in the deferred path.
-  Editor: Adjusted the width of the 'Build Settings' window so that it displays its contents correctly, even if support for some of the players is not currently available.
-  Editor: Building VR projects when running on case-sensitive file systems will now correctly find the target plugin folders.
-  Editor: Copying a directory onto itself will no longer incorrectly recurse.
- Editor: CTRL/CMD + marquee select now correctly subtracts from selection in light probe group editor.
-  Editor: Custom cursor texture is now validated when setting it, fixing issue where custom cursors could look corrupted.
-  Editor: Dragging objects between different Editor processes should no longer cause unintended behaviors.
-  Editor: EDITOR ONLY: When multiple Scenes are open when entering Play Mode, the active Scene is now loaded and activated first, no matter where in the list it is. When exiting Play Mode the previous active Scene is now correctly made the active Scene again.
-  Editor: Editor will now show compiler errors in English while building to Windows Store Apps, even if Windows locale is not set to English.
- Editor: EditorGUIUtility.ObjectContent now adds type information to the text string as shown for ObjectFields: E.g: "Concrete (Texture2D)" instead of "Concrete".
- Editor: EditorUtility.SetSelectedWireframeHidden state is now saved into Scenes.
-  Editor: Fied null errors when dragging Prefabs into Scene View.
-  Editor: Fix Editor freeze when picking in Scene View with a lot of overlapping game objects.
-  Editor: Fix to prevent Scene data corruption from cross-scene GameObject references. GameObjects from a different Scene were duplicated into the Scene that was referencing it when the Scene was saved.
-  Editor: Fix to prevent the following error: "GetEditorTargetName is not allowed to be called from a MonoBehaviour constructor, call it in Awake or Start instead".
-  Editor: Fix to show correct platform title instead of platform ID.
-  Editor: Fixed a bug in which the property diff recorder would insert property modification on the prefab asset if it was being edited in the Inspector.
-  Editor: Fixed a crash when importing a large sprite sheet.
-  Editor: Fixed a crash when playing a scene with an iOS device connected as a Unity Remote.
-  Editor: Fixed a Mac-only crash when importing some textures.
-  Editor: Fixed access to destroyed window during shutdown.
-  Editor: Fixed access violation in GUIView::GUIViewWndProc.
-  Editor: Fixed an issue that could cause Scenes containing prefab instances with driven transforms to immediately become dirty.
-  Editor: Fixed an issue where deleted folders are recreated if the meta file is still present in non-source control serialisation modes.
-  Editor: Fixed an issue where, when dragging a second Scene to the Hierarchy, the first Scene would auto-expand.
-  Editor: Fixed Camera preview sometimes not taking manually overriden projection matrix into account.
-  Editor: Fixed case of EditorJsonUtility throwing MissingMethodException.
-  Editor: Fixed case of potential extra parenthesis when updating from instance method to instance property.
-  Editor: Fixed case of Scene.buildIndex being always -1 when in Edit mode.
-  Editor: Fixed certain UI elements not responding after changing the graphics API.
-  Editor: Fixed changing order of components not getting saved. This now also supports undo.
-  Editor: Fixed crash in the callstack symbolication code that meant Unity could crash while generating crash reports during engine start-up and shutdown.
-  Editor: Fixed crash that could happen when Play Mode is entered while Animation window is open.
- [769033, 769504] Editor: Fixed crash when entering or exiting play mode when a GameObject with a missing script reference is present.
-  Editor: Fixed crash when registering Transform using Undo.RegisterCreatedObjectUndo.
-  Editor: Fixed crashes in various circumstances when using shaders with too many samplers.
-  Editor: Fixed curves in Particle System inspector not showing negative values initially.
-  Editor: Fixed different color gradients & pickers being seen between Gamma and Linear space in player settings.
-  Editor: Fixed Editor crash when locking cursor from constructor or static initializer.
-  Editor: Fixed exception when renaming script outside of the Editor.
-  Editor: Fixed graphics settings when importing from an old Unity package.
-  Editor: Fixed issue where in some cases the Editor window title was not reflecting the current graphics emulation setting immediately.
-  Editor: Fixed issue where preferences in the Windows registry were not being terminated correctly.
-  Editor: Fixed issue where switching user before activating would cause a license activation failure.
-  Editor: Fixed issue where the Launch window could crash on exit.
-  Editor: Fixed issue where two (or more) Cef browser windows were instantiated.
-  Editor: Fixed issue whereby exiting Play Mode via script from Start did not work.
-  Editor: Fixed Launch Screen closing after user signs in instead of showing the project browser.
-  Editor: Fixed loss of all keyboard shortcuts when focus is on a Unity Connect window or Asset Store window.
-  Editor: Fixed null ref configuring Avatar.
-  Editor: Fixed NullReferenceExceptions that could be triggered when multi-selecting in the Inspector.
-  Editor: Fixed OSX native web view that would continue ticking its timer after being closed.
-  Editor: Fixed performance issue in SpriteInspector.
-  Editor: Fixed Scene View crashing if internal Scene View Camera is disabled.
-  Editor: Fixed Scenes containing prefab instances becoming dirty on load.
-  Editor: Fixed squashed vector fields in Material editor.
-  Editor: Fixed toggling of Asset Store window in fullscreen mode.
-  Editor: Fixed warning when deleting an open Scene in the assets folder and then saving the scene from the Hierarchy window.
-  Editor: Improved selected object wireframe overlay look when MSAA is used.
- [778277 763319] Editor: Launcher cosmetic changes: adjusted header element separation and project list UI.
-  Editor: Launcher cosmetic changes: adjusted title font weight.
-  Editor: Prevent crash when closing Unity with detached Asset Store window.
-  Editor: Reduced error messages when using IMGUI scope helpers.
-  Editor: The OnGeneratedCSProjectFiles callback is now triggered as expected when using Visual Studio.
- Editor: Updated build window to allow case insensitive file extensions.
-  Editor: Updated default license and activation host URL for staging and dev environments.
-  Editor - Other: Fixed an Editor crash when closing with a detached Asset Store window.
-  GI: "Edit" button for non-editable lightmap parameter assets now says "View".
-  GI: Added a message to appear in the Lighting window when a reflection source is not set.
- GI: Fixed a bug which would cause GI textures to be packed incorrectly.
-  GI: Fixed an issue on iOS and some Android devices where Materials with high Emission would produce banding artifacts when real-time GI was used.
- [684983, 672944] GI: Fixed baked transparency not being applied to AO.
-  GI: Fixed baked transparency textures not using tiling and offset values.
- GI: Fixed black (NaN) artifacts produced in rendering by invalid directional lightmaps.
-  GI: Fixed crash when making object lightmap static.
-  GI: Fixed errors when using baked lightmaps & multi-scene editing.
-  GI: Fixed fallback to non-directional lightmaps on SM2.0 hardware.
- GI: Fixed issue of changing lightmap directionality mode corrupting the scene rendering.
-  GI: Fixed Light/Reflection probe settings in Renderer sometimes being lost after a project upgrade.
-  GI: Fixed missing ambient when AmbientGI is set to Baked, but BakedGI is disabled.
-  GI: Fixed orientation of skybox when computing ambient probe on Windows and Linux.
-  GI: Fixed scene view GI visualizations sometimes not working properly.
-  GI: Fixed some cases of null reference exceptions related to baked object preview coming out of the Lighting window.
- [755421, 766533, 766546, 756020] GI: Fixed some directional specular lightmap artifacts.
-  GI: Fixed source of crash that could happen in GetLightProbeProxyVolumeSample or SampleReflectionProbes.
-  GI: Improved Lighting window preview of very small lightmaps.
-  GI: Improved mixing of directional specular lightmaps with realtime shadows.
-  GI: Improved name of Default lightmapping parameters asset.
-  GI: Refresh light probe connections when editing probe position via Inspector.
-  GI: Substances now work with baked transparency.
-  GI: The importance value for reflection probes can no longer be a negative value.
-  Global Illumination: A warning will now appear if user is trying to update a disabled reflection probe.
-  Global Illumination: Fix in Editor to avoid some of the automatic GI overhead when GI is turned off.
- Global Illumination: Fixed a reflection probe baking issue in multi-Scene editing.
-  Global Illumination: Fixed issue whereby changing Reflection Probe component positioning in the Inspector makes realtime probe black.
-  Global Illumination: Fixed multi-scene baking.
- Graphics: Added profiler markers on async texture loading waits.
-  Graphics: Apply material keywords when drawing from command buffers.
-  Graphics: Color space switch done via PlayerSettings.colorSpace API now takes effect immediately.
- Graphics: DX12: Implemented support for ShadowSamplingMode.
-  Graphics: Filtered out duplicate graphics APIs in PlayerSettings.SetGraphicsAPIs.
- Graphics: Fix to avoid crash in CommandBuffer.Draw commands if null renderer/mesh is passed.
-  Graphics: Fix to ensure that Unity doesn't set unsupported texture filter or wrap modes.
-  Graphics: Fix to ensure that we don't set unsupported filter or wrap modes.
- Graphics: Fix to prevent spam of D3D11 warning messages when setting resource names.
-  Graphics: Fixed an issue where dynamic batching could produce corrupted geometry when vertex components are compressed.
-  Graphics: Fixed an issue with Texture2D.LoadImageIntoTexture() -> Texture2D.Apply() not generating mipmaps if the Texture2D object didn't have actual mipmaps previously.
-  Graphics: Fixed case of crash after SetTargetBuffers and GameObject.SetActive(false).
-  Graphics: Fixed crash in CommandBuffer.DrawMesh when material is null.
-  Graphics: Fixed crash when calling Texture.Compress for large textures.
-  Graphics: Fixed crash when trying to set shader name on shader that failed to compile.
- Graphics: Fixed Crunch texture compression artifacts caused by integer overflow.
-  Graphics: Fixed DepthNormals pass to no longer use very low precision (16bit) depth buffer. It now uses the same depth buffer format as regular rendering.
-  Graphics: Fixed incorrect normal/tangent generation when dynamic batching is used on a rotated object without a normal/tangent stream i.e. a rotated TextMesh object.
-  Graphics: Fixed issue where SyncAsyncResourceUpload would do a busy wait loop, causing a CPU to get pegged unnecessarily.
-  Graphics: Fixed issue whereby building a player with -nographics would cause some image effects to become disabled in the build.
-  Graphics: Fixed material file content being non-deterministic in Editor - order of properties in a '.mat' file changes.
-  Graphics: Fixed material index not being used when calling Graphics.DrawMeshNow with rotation.
-  Graphics: Fixed meshes with large scale and blend shapes sometimes not being lit correctly.
-  Graphics: Fixed null reference exception being thrown when setting null to mesh triangles/indices.
- Graphics: Fixed potential problem capturing frames in RenderDoc.
- Graphics: Fixed profiling-related information (SetGpuProgramName) performance issue in development player builds. This fix is also coming to 5.3.
-  Graphics: Fixed shadow artifact when no shadow caster is in the view frustum.
- [753118, 759483] Graphics: Fixed some cases of incorrectly detecting "destroy RT being assigned to Camera.targetTexture", resulting in losing Camera.targetTexture (for example, in the case of context-loss on DirectX or changing Emulation Layer in the Editor).
-  Graphics: Graphics: Fixed performance regression in dynamic batching on Adreno and Mali GPUs.
-  Graphics: Improved feedback on Recalculate Bounds in LODGroup inspector.
- Graphics: Newly created line renderers and trail renderers will now have light probes and reflection probes disabled by default.
-  Graphics: RenderTextures that have IsCreated==false will now consistently render black if bound, instead of undefined results.
-  Graphics: Repeated loading of PNG/JPG images into a Texture2D no longer fails.
- Graphics: SpeedTree: Fixed incorrect rendering when a tree is in dithering on some mobile devices such as iPhone 6.
-  Graphics: Static batching can batch more objects now: previously had a limit of 32k indices, now 64k. 32k limit stays on Mac due to driver issues.
-  Graphics: syncUploadBufferSize can no longer be set below 2, to prevent Unity crashing on startup.
-  Graphics: Textures imported as cubemaps are now properly marked as non-readable if the import option says so. This fix is also coming to 5.3.
-  Graphics - General: DX12: CPU profiler timeline view is no longer broken.
- IAP: Fixed case of failed IAP purchase events costing Unity Analytics analysis points.
- IAP: Fixed case of IAP not sending Transaction events to Unity Analytics.
- IAP: ProcessPurchase will now be invoked when a store implementation notifies Unity IAP of a purchase for a product that was unknown to Unity IAP.
-  IL2CPP: Fixed an issue which caused the error message "Callback cannot take parameters" if there was a DLL in the project that inherited from animation state machine classes, but which did not use animation.
-  IL2CPP: Fixed NavMesh stripping issue.
- IMGUI: BeginVertical now behaves like BeginHorizontal.
-  IMGUI: Fixed CurveEditor's OnGUI Repaint early-out not respecting control IDs.
-  IMGUI: Fixed IMGNullReferenceException in plugin crashing Unity at GUIStyle::Draw.
-  IMGUI: GenericMenu shortcut keys are now displayed.
-  IMGUI: Material Property Drawer now displays a slider and drop-down menu.
-  IMGUI: NullReferenceException in plugin no longer crashes Unity at GUIStyle::Draw.
-  iOS: AdSupport no longer duplicated in plugin inspector.
- [790555, 737693, 794660] iOS: Applied workaround for a9 driver bugs with non-full mipchain vs EXT_texture_storage.
- [736683, 739007] iOS: Applied workaround for launch screen asset catalog bug.
-  iOS: Enabled incremental build for IL2CPP by default for old projects.
-  iOS: Fix to ensure asset bundles are not flagged for iCloud backup by default upon download.
-  iOS: Fix to make sure Unity plugin is not installed unnecessarily. Previously this caused killing of Xcode whenever the previous build was done with different version of Unity.
-  iOS: Fix to remove unnecessary IL2CPP files that increase build size.
-  iOS: Fix to set the missing texel size for WebCamTexture textures. This in turn fixes WebCamTexture rendering on UI's RawImage.
-  iOS: Fix to use remote notifications API only if they are used. This fixes a warning when submitting to iTunes Connect.
- [800915, 807370] iOS: Fixed a couple of minor memory leaks relating to Metal and Cloud support.
-  iOS: Fixed a memory leak caused by auto-released objects in non-main threads.
-  iOS: Fixed case of incorrect value being set in Xcode when the "Target minimum iOS version" player setting in Unity was set to 9.0.
- iOS: Fixed case of possible change in WebCamTexture.size values after calling GetPixels() methods.
-  iOS: Fixed case of some Japanese-Kana keyboard buttons being ignored.
-  iOS: Fixed case of Unity splash screen on standalone player appearing brighter in linear color space on Metal.
-  iOS: Fixed crash in FMOD_RESULT DSP::release() when AudioManager::CloseFMOD is called several times.
-  iOS: Fixed crash on iOS 6.0 devices.
-  iOS: Fixed crash on iOS when an app targeting 60 FPS was being suspended to background.
-  iOS: Fixed excessive use of file descriptors when opening AssetBundles from disk (cache or StreamingAssets folder).
-  iOS: Fixed Korean, Indian and Hebrew font fallbacks.
-  iOS: Fixed leak of thread handles and associated resources in UnityEngine.Ping.
-  iOS: Font containing Lao characters added to the fallback list.
- iOS: Incremented the minimum supported iOS version from 6.0 to 7.0.
-  iOS: iOS/OSX: Fixed text rendering performance regression.
-  iOS: iPod music no longer overridden when a corresponding player setting is not set.
-  iOS: viewWillTransitionToSize will now be passed to super even if we disallow orientations. This helps plugins that use presentation controllers.
-  iOS/tvOS: All object files should now build with with the correct SDK.
-  Job Queue: Fixed issue where a deadlock could occur inside the job system in very rare situations.
-  Linux: Fixed flickering/corrupted rendering with OpenGL Core.
-  Linux: Fixed non-native-resolution fullscreen rendering with OpenGL Core.
-  Mac Editor: Added functionality in order to prevent the processing of folders that contain the ".unity" extension, as this was causing the editor to crash when executing in batch mode.
-  Materials: Fixed a crash if GetMaterialProperties is called with a null in the list of materials.
-  Metal: Fixed case of native RenderBuffer query failing in case of multi-threaded rendering.
-  Metal: Fixed rendering of masked contents on GUI layer.
- [794783 , 794786] Model Importer: Fixed a crash when importing .obj or .fbx files with malformed data or duplicate indices.
-  Mono: Fixed a crash in mono_string_to_utf8_checked when Marshal.StructureToPtr is called from managed code.
- [730146, 735604, 740910] Mono: Implemented IPv6 support on Windows.
-  MonoDevelop: Added a hint in the breakpoints dialog warning that the list of available exceptions is generated only from the currently selected project.
-  MonoDevelop: Disabled Git, Subversion and NUnit add-ins by default. This fixes an issue with being unable to write to newly created scripts.
-  MonoDevelop: Fixed issue with MonoDevelop showing "��u" symbols in document view after using "Save As".
-  MonoDevelop: Fixed issue with MonoDevelop sometimes giving focus to the wrong script when opened from Unity.
-  MonoDevelop: OSX: Fixed issue with MonoDevelop not working when copied to case-sensitive partition.
-  Multi-display: Fixed issue whereby a Scene would still be displayed in the original monitor, even after changing the primary monitor.
-  Multiplayer: Disabled host migration on WebGL clients;; they can no longer become hosts.
- Multiplayer: Fix to clean up MatchInfo UI in the NetworkManager Play Mode inspector.
-  Multiplayer: Fix to disallow sending NetworkConnection object in commands.
- [774121,772246] Multiplayer: Fixed an issue where specifying http:// or https:// in the MatchMaker URI could cause the system to fail to connect to MatchMaker.
- [732687, 696591] Multiplayer: Fixed bug where connecting to a non-https:// MatchMaker after joining one match would fail in all cases.
-  Multiplayer: Fixed case of NetworkTransport.SetBroadcastCredentials crashing Unity.
- Multiplayer: Fixed issue where an error response from the server could lead to undesirable console output in non-error cases when setting the match auth token.
-  Multiplayer: Fixed issue where calling NetworkDiscovery.StopBroadcast() and NetworkServer.Reset() would crash Editor.
- Multiplayer: Fixed issue where default matchmaker port was 80 instead of 443 in one code path.
-  Multiplayer: Fixed issue where SyncLists didn't use the configured channel.
- Multiplayer: Fixed issue where wrong initialization connection amount could lead to system crash.
- Multiplayer: Fixed issue whereby cleaning up a connection containing a StateUpdate channel could cause a crash.
-  Multiplayer: Fixed issue with ClientScene.objects list increasing after every host migration.
-  Multiplayer: Fixed issue with initial state in SyncListStructs not being handled correctly.
-  Multiplayer: Fixed issue with matchSize being incorrectly used from a 'join match' response.
-  Multiplayer: Fixed issue with OnStartAuthority being called twice on player with local authority on host.
- Multiplayer: Fixed MatchMaker URI to be correct with http:// prefix as default.
-  Multiplayer: Fixed UI panel on NetworkManager for match max size and name, and added tooltip info for both.
-  Multiplayer: Minor improvement to network manager HUD ('connecting' state and cancel button).
-  Multiplayer: Networking: Fixed lobby issue where it would reject new players when there was still one slot left.
- Multiplayer: Removed warnings "no free events" and "Attempt to send to not connected connection"; Bugfix: acks now reset when connection resets.
-  Multiplayer: SyncList now sends updates only when a value assignment changes the current value.
-  Multiplayer: The ReliableFragmented channel was dropping data under certain rare circumstances. This has been corrected.
- Multiplayer: The WWW object in MatchMaker callback handler is now explicitly disposed when the handler is done with it.
-  Multiplayer: WebSockets: The Incoming buffer has been made configurable with the parameter ConnectionConfig.WebSocketReceiveBufferMaxSize.
-  Multiplayer: [WebSockets] Fixed crash on NetworkClient.SendByChannel call.
-  Networking: Fixed issue where the client was unable to free connections in NetworkServer when using WebSocket.
-  Networking: Fixed issue whereby transferring data via reliable sequenced qos channel could result in lost messages in "bad" network conditions.
-  Networking: Fixed issue with SendToAll sending duplicate messages to the local client when hosting.
-  Occlusion Culling: Fixed broken portal visualization in some cases.
-  Occlusion Culling: Fixed visualization when changing scenes.
-  OpenGL: Applied workaround for ES3 shader compiler bugs on Adreno 3xx devices.
- OpenGL: Fixed cases of SystemInfo.graphicsMemorySize, graphicsDeviceID and graphicsDeviceVendorID being incorrect on desktop platforms. These now match legacy GL behavior.
- OpenGL: Fixed issue whereby 3D textures did not have mipmaps in some cases.
-  OpenGL: Fixed non-working binary shader cache with OpenGL ES 2.
-  OpenGL: Fixed various corner case issues for GLSL shader generation on ComputeBuffer loads, stores and atomic ops.
- OpenGL: Fixes for Windows fullscreen mode.
- OpenGL: OpenGLES3.0: Fixed crash and reflection probes corruption on A9 chipsets.
-  OpenGL: Work-around for Mac Intel driver crash when trying to use tessellation shaders on a GPU that can't do it.
-  OpenGLES: Fixed crash on some Android applications, which could be triggered by attempting to set a texture parameter with an uninitialized texture dimension. This in turn affected the rendering of the splash screen.
-  OSX: Added IPv6 support for WWW.
-  OSX: Fix to respect requested framerate in batch mode.
-  OSX: Fixed a crash when using -nographics without -batchmode.
-  OSX: Fixed excessive CPU usage in batch mode.
-  OSX: Fixed icons in batch mode builds.
- [787233, 793518] OSX: Fixed infrequent crashes in Screen Selector.
-  OSX: Fixed rare crashes when using WWW from multiple threads.
-  OSX: Fixed SSL protocol support on 32-bit OSX standalone.
-  OSX: Fixes for Cinematic Effects (Depth Of Field, Screen Space Reflections, SMAA) on Metal.
-  OSX: Menu bar in standalone player no longer blocks the main player loop from updating.
-  OSX: Significantly improved Editor exit times.
-  Particles: Added reverse 3D rotation direction, for consistency with existing 1D rotation.
-  Particles: Applied fix to ensure no garbage is generated when using certain script commands.
-  Particles: Burst counts are no longer limited to 64K.
-  Particles: Collider visualization should now scale with transform.
-  Particles: Disabled size/rotation properly when toggling 3D in the Editor.
-  Particles: Disabled unused UI options.
-  Particles: Fix to disable "Speed Range" UI when it is not relevant.
-  Particles: Fix to preserve stopEmitting parameter when becoming visible (culling fix).
-  Particles: Fix to support radius in Trigger module.
-  Particles: Fixed an edge case where 3D size wasn't behaving correctly.
-  Particles: Fixed bug with scripted particle emission API.
-  Particles: Fixed case of "Invalid AABB" error messages.
-  Particles: Fixed case of scale not being applied correctly to AABB in the TrailRenderer.
-  Particles: Fixed collision bug where NaN could be generated for the contact normal.
-  Particles: Fixed collision events to ensure correct events are sent to correct GameObjects.
-  Particles: Fixed crash when mesh is missing inside player (for example, when a default mesh is used).
-  Particles: Fixed crashes with null curves and gradients.
-  Particles: Fixed culling when using SetParticles in standalone.
-  Particles: Fixed debug plane visualization.
-  Particles: Fixed errors for particles that have zero velocity and start inside a collider.
-  Particles: Fixed for faster mesh data caching and memory usage optimization.
-  Particles: Fixed IsFinite error spam with particles and second camera.
-  Particles: Fixed issue where assigning a different mesh to Shape Module could cause a crash.
- [773317, 793614 ] Particles: Fixed issue where automatic culling icon did not work with multiple Particle Systems.
-  Particles: Fixed issue where collision messages did not work for plane collisions.
-  Particles: Fixed issue where crashes would occur when material is missing and mesh colors are requested.
-  Particles: Fixed issue where isVisible was not always correct or not updated by ParticleSystem.Play, depending on camera position.
-  Particles: Fixed issue where Particle System is stopped and cleared, and after that it won't play when simulation space set to local.
-  Particles: Fixed issue where prewarm was ignored when start delay was greater than start lifetime.
-  Particles: Fixed issue where size over lifetime using separate axes wasn't always working.
-  Particles: Fixed issue where Texture Sheet Animations could incorrectly loop back to the first frame at the end of their animation.
-  Particles: Fixed issue where Trigger Module crashed when assigning the wrong list type via script.
-  Particles: Fixed issue where Trigger Module wasn't spawning death sub emitters.
-  Particles: Fixed issue where using large gravity values could cause erroneous error messages.
-  Particles: Fixed issue where Visualize Bounds did not scale the debug rendering correctly.
-  Particles: Fixed issue with ParticleSystem.Prewarm over-simulating when becoming visible.
-  Particles: Fixed mesh color usage and improved messaging.
-  Particles: Fixed mesh double scaling issues.
-  Particles: Fixed Particle Shader preview to display a flat plane instead of a sphere.
-  Particles: Fixed Particle System not playing if method is called via Invoke.
-  Particles: Fixed Particle System not playing when triggered via Event Trigger.
-  Particles: Fixed Particle System only playing once.
-  Particles: Fixed Particle Systems not looping correctly.
-  Particles: Fixed particles disappearing after going offscreen and returning.
-  Particles: Fixed particles not being drawn in the correct order on rotated Particle Systems.
-  Particles: Fixed ParticleSystem.IsAlive() always returning True for Particle Systems with longer durations.
-  Particles: Fixed Shape Module error when shader doesn't have _Color property.
-  Particles: Fixed Skinned Mesh Renderer Shape crash when its material was missing.
-  Particles: Fixed sorting issue when using local space particles.
-  Particles: Fixed stretch particle bounds to avoid culling errors.
-  Particles: Fixed to allow particle bursts to be larger than 64K.
-  Particles: Fixed to give sub-emitters better default names based on their context (birth, death, etc).
-  Particles: Fixed to hide "Angle" option in Shape Module when it is not relevant.
-  Particles: Fixed wrong culling of some particle objects caused by incorrect bounds calculation due to parent scaling.
-  Particles: Improved RotationBySpeed module UI and made tooltips more descriptive.
-  Particles: Improved the Mesh Particle error message that appears when buffers are full.
-  Particles: LimitVelocityOverLifetime module no longer allows negative values.
-  Particles: Max Collision Shapes option can no longer be negative.
-  Particles: Particle system Simulate issues
-  Particles: Particles are now emitted with the correct position/rotation when using a Skinned Mesh Renderer or Mesh Renderer as shape.
-  Particles: Renamed Particle.lifetime property to Particle.remainingLifetime for clarity.
-  Particles: Scene view Particle count now shows SubEmitter information.
-  Particles: Start delay is now only applied when the particle system time is 0.
-  Particles: Start Frame range is one frame longer than available frames (i.e. TilesX*TilesY)
-  Particles: Systems no longer restart while simulating when they become visible, and use bigger timesteps to calculate their current state.
-  Particles / VR: Fixed issue where stretched particles did not work in VR.
- Physics: Ensure that buoyancy forces take into account the Rigidbody2D gravity-scale.
- Physics: Fix ensures that animating a Joint2D property always updates the joint immediately.
- Physics: Fix ensures that auto-configuration properties for Joint2D update the joint immediately.
- Physics: Fix ensures that when recalculating contacts for an Effector2D, all relevant Rigidbody2D are woken.
-  Physics: Fix to ensure that 2D Overlap/Cast checks use consistent 'skin' radius for all shapes.
-  Physics: Fix to ensure that a Joint2D auto-configuration still works if joint is added from script.
-  Physics: Fix to ensure that a TargetJoint2D added via script allows collisions with static colliders.
-  Physics: Fix to ensure that changing Rigidbody2D.gravityScale whilst a Rigidbody2D.MovePosition is in progress now works.
-  Physics: Fix to stop Rigidbody2D with Interpolation being placed at world origin for a single update upon start.
-  Physics: Fix to stop TargetJoint2D crashing when using a Kinematic Rigidbody2D.
-  Physics: Fixed an issue where a static trigger collider would not report a contact when moved.
-  Physics: Fixed case of center of mass and inertia tensor being reset after GameObject was reactivated.
-  Physics: Fixed crash when disabling Colliders from OnTriggerStay callbacks.
- Physics: Fixed crash when setting a frequency of zero on the TargetJoint2D.
-  Physics: Fixed errors reported by Cloth Inspector when an object with a cloth component is selected.
-  Physics: Fixed HingeJoint setup issue when changing isKinematic property on attached Rigidbody.
-  Physics: Fixed inertia tensor being broken after a new Collider was added to the Rigidbody.
-  Physics: Fixed the source of a number of crashes that could occur when setting properties (such as 'connectedBody') of broken Joints during the OnJointBreak callback.
-  Physics: Fixed to ensure Unity doesn't pass infinite radius into PhysX overlap.
-  Physics: PlatformEffector2D now supports negative scaling on parent Transform.
-  Physics: Rigidbodies without non-trigger colliders can again have custom center of mass and inertia tensor.
-  Physics: Toggling 'Rigidbody2D.IsKinematic' in the Inspector during Play Mode now correctly changes the body type. Previously it had no effect.
-  Physics2D: Fixed case of Collision2D.relativeVelocity being reported with incorrect values.
- [778125, 780607] Physics2D: Fixed issue whereby dragging a Sprite/Texture2D into the Inspector would cause a PolygonCollider2D to use it even though it is not dropped on the component.
-  Player: Checking/unchecking the 'Windowed' checkbox will no longer reset the screen resolution.
-  Plugins: Fixed Editor crash when trying to set plugin settings for deprecated platforms.
- Plugins: Fixed issue with Android plugins where some of them were treated as folder plugins (for example, Assets/Plugins/Android/SimpleJarPlugin.java).
- Plugins: Native plugins will now correctly initialize their settings on import and this will be reflected in meta file.
- Profiler: Fixed excessive memory usage when starting development player.
-  Profiler: Fixed incorrect time displaying in CPU profiler if time exceeded 5 seconds.
-  Profiler: The Record setting is now saved so that it is restored when re-opening the Profiler window during an Editor session.
-  PS Vita: Fixed case of IL2CPP NewGuid returning duplicates.
-  PS Vita: Fixed IL2CPP crash caused by incorrectly calculated stack bottom.
-  PS Vita: Fixed issue whereby script-only builds did not copy native plugins.
-  PS Vita: Fixed issue whereby use of 'Best Performance' DSP buffer size would result in a crash.
-  PS4: Fixed issue whereby script-only builds did not copy native plugins.
-  Runtime: Fix to reduce the overhead incurred by SetSiblingIndex calling OnTransformParentChanged.
- Samsung TV: Fixed case where OnMouseDown() was not working on Samsung TV.
-  Scripting: An exception is now always thrown when calling AssetDatabase methods from constructors and during serialization.
-  Scripting: Deactivation order during built application shutdown is now consistent with normal scene unloading. Previously closing a built aplication could result in a NullReference exception.
-  Scripting: Debug.Log no longer consumes memory when StackTraceLogType is None.
-  Scripting: Fixed crash after calling DestroyImmediate(gameObject) in MonoBehaviour.Awake.
-  Scripting: Fixed crash in APIUpdater when updating some Boo/UnityScript scripts.
-  Scripting: Fixed crash on FieldInfo.SetValue and FieldInfo.GetValue when field is not defined on target object specified.
-  Scripting: Fixed crash triggered by a double cleanup inside coroutines.
-  Scripting: Fixed crash when accessing SerializedProperty.tooltip in some cases.
-  Scripting: Fixed InvalidExceptionCast exceptions when updating 'safeCollisionEventSize'.
-  Scripting: Fixed issue that caused UnityScript to incorrectly detect some methods' return type.
-  Scripting: Fixed issue where GetComponent() throws an exception if called from constructors or deserialization.
-  Scripting: Fixed issue where GetTransform<>() invoked from a constructor or field initializer could crash Unity.
-  Scripting: Fixed issue with being unable to use ScriptableObject.CreateInstance with a nested ScriptableObject class.
-  Scripting: Fixed OnAudioFilterRead() crash.
-  Scripting: Fixed thread safety of TimeZone.CurrentTimeZone and DateTime.Now.
-  Scripting: GetHashCode() on UnityEngine.Object derived classes no longer changes when the object is destroyed.
-  Scripting: System.Reflection.MonoProperty::GetterAdapterFrame no longer throws ExecutionEngineException when Mono AOT or IL2CPP is used with the .NET 2.0 profile.
-  Shaders: A depth buffer for temporary textures created by GrabPass is no longer created.
-  Shaders: Alpha is no longer overwritten if an opaque surface shader writes to occlusion in the deferred pass.
- Shaders: Compute shaders from the same folder as a modified .cginc file are now reimported, just like regular shaders are.
-  Shaders: Diffuse alpha channel in opaque shaders is now overwritten before finalGBufferModifier is applied, to allow full control of diffuse alpha to the user.
-  Shaders: Fixed a case where a material using a standard shader with transparency could be sorted incorrectly if the shader was reselected.
-  Shaders: Fixed a potential crash if an internal error is encountered while compiling a D3D11 shader.
-  Shaders: Fixed case of animated Standard Shader emission being wrongly overriden by Material inspector.
-  Shaders: Fixed case of function shaders containing CustomEditors not displaying the correct editor.
- Shaders: Fixed cases where unsupported LightMode=Meta pass type was also making LightMode=ShadowCaster passes unsupported.
- Shaders: Fixed DX11 shader disassembly not showing correctly in the editor UI for 'show compiled code'.
-  Shaders: Fixed issue whereby importing a package containing Player Settings with graphics API settings that differ from the current ones would cause shaders to not work properly.
-  Shaders: Fixed issue whereby in some cases the [Header] attribute on the shader property UI could cause the next shader property to have the same name as the header text.
- Shaders: Fixed PBS surface shader compilation when Occlusion output is not present.
-  Shaders: Fixed possible Editor Scene View crash after reimporting shader with a GrabPass.
-  Shaders: Fixed standard shader artifacts caused by precision problems on OpenGL ES 3 mobiles.
- [785928, 786539] Shaders: Fixed UNITY_SAMPLE_TEXCUBE_LOD to only force texCubeBias when we are sure that there is no texCubeLod available.
- Shaders: Fixed UTF8 BOM in compute shader include files not being understood properly.
- Shaders: Fixed very small or very large default shader property values not being serialized correctly.
-  Shaders: Improved error messages emitted if a syntax error is found early in surface analysis.
- Shaders: Made some optimizations for surface shader importing time.
- Shaders: Reduced number of DX11 samplers used by standard shader (two reflection probes share a sampler, and three LPPV textures share a sampler).
-  Shaders: Removed a spurious error about _Emission if a legacy Self-Illumin shader was selected in a material.
-  Shaders: Surface shaders can now directly include "Lighting.cginc" to control where it is included.
-  Shaders: _CameraDepthTexture is now preserved across calls to RenderWithShader().
-  Shadows: Added animation support of light shadow near plane.
-  Shadows: Fix to prevent setting out-of-range shadow strength.
-  Shadows: Fixed shadow error messages happening in some cases.
-  Shadows: Fixed shadows disappearing for some off-screen shadow-casters.
-  SpeedTree: Fixed an issue where billboards didn't scale correctly when batched.
-  SpeedTree: Fixed performance regression when lots of Tree components present in the Scene.
-  Standalone player: Fixed Application.persistentDataPath when Product Name contains invalid path character.
- Substance: Fix to avoid re-generating ProceduralMaterials twice when switching color space.
-  Substance: Fixed case of "Mismatched LayoutGroup.Repaint" error message appearing in console when assigning a ProceduralMaterial to a Mesh.
-  Substance: Fixed case of baked ProceduralTextures being serialized without their baked data.
-  Substance: Fixed case of GetProceduralXYZ returning 0 when used with an input's label instead of its identifier.
- Substance: Fixed case of IsProcessing sometimes staying true in the player when changing $randomseed or $outputsize.
- Substance: Fixed case of normal map textures being incorrectly processed when used as image inputs to a ProceduralMaterial.
-  Substance: Fixed case of outputs not being generated correctly when changing values too fast.
-  Substance: Fixed case of ProceduralMaterials being stuck in "Generating..." state when leaving Play Mode, as they are being computed
- Substance: Fixed corner cases of outputs not being impacted by any input not being generated.
-  Substance: Fixed crash in VisibleIf expression evaluation, caused by looking up an input by label instead of by identifier.
-  Substance: Fixed crash when undoing a modification of the shader assigned to a ProceduralMaterial.
-  Substance: Fixed error when loading package file containing an old version of a substance file.
- Substance: ProceduralTextures being cached to disk/flash now have their size correctly taken into account when querying Caching.spaceOccupied.
-  Substance: Sped up the processing of BakeAndDiscard materials when loading scenes.
- Templates: Fixed whitespaces in Editor Tests template.
-  Terrain: Fixed an issue where deleting in-use terrainData while GI is being baked for the terrain would crash the editor.
- Terrain: Fixed an issue where the legacy Soft Occlusion tree shaders didn't work well with images effects that utilize the depth texture.
-  Terrain: Fixed crash when using SpeedTree wind with SpeedTree trees painted on terrain.
-  Terrain: TerrainData marked as DontSave no longer crashes the Editor on quit.
-  Text Rendering: Fixed a memory leak and behavior leading to crash in Font::CacheFontForText. This also reduced the amount of unnecessary growth that could occur in the Font texture atlas.
-  Text Rendering: Fixed a potential crash NativeTextGenerator::InsertCharacter when processing badly formed rich text.
-  Text Rendering: Fixed bug preventing best fit from working when font size 0 specified.
-  Text Rendering: Fixed case of text occasionally sampling beyond the spacing between adjacent glyphs by adding a default 1 texel padding around all glyphs in dynamic font textures.
-  Tizen: Fixed case of TapCount not functioning in Development mode.
-  Tizen: Fixed issue where projects would hang on the splash screen if a custom splash image was used.
-  Tizen: Fixed operation of Application.OpenURL when used with mailto: URLs.
- Tizen: Fixed problem whereby an object would sometimes move to the center of the screen when the device was rotated.
-  TreeEditor: TreeBaked textures are no longer tinted to current fog color.
-  tvOS: App icon layers are now duplicated from another image layer when not all required layers are defined.
-  tvOS: Fix to enable game controller in tvOS on-screen keyboard.
-  tvOS: Fix to separate tvOS SDK and OS version settings from iOS.
- tvOS: Fixed issues with Xcode plugin installation when it is done by tvOS platform support.
-  tvOS: Fixed rendering path selector in Player Settings.
-  tvOS: Fixed SetScriptingDefineSymbolsForGroup for tvOS.
-  tvOS: Fixed support for default Unity font (Arial).
-  tvOS: Menu button will now be disabled when playing video if allowExitToHome is disabled.
- tvOS: Movie playing is now enabled on tvOS.
-  tvOS: Removed "Prepare iOS for recording" from tvOS player settings, which was breaking fullscreen movie playing.
- tvOS: tvOS platform support installation is now independent from iOS platform support.
- [736161, 742081] UI: Added a delay to calling UpdateRectTransform when Canvas is created. An update changed the behavior prior to 5.2 which will cause issues for many users who have nested canvases that are created using instantiate, as the RectTransform was updated before they could re-parent the Canvas. With a delay, we maintain the previous behavior and also keep the original fix.
- UI: Added fix so that the placeholder text is enabled when the InputField is deactivated and the text is empty.
- [73009, 6745699] UI: Added validation and character limit to the set of the InputField text property.
-  UI: After device reset, an application repaint is now forced to prevent the canvas from disappearing after a session lock/unlock.
-  UI: Applied change to re-emit during the repaint loop due to world space canvasses not using cameras to render. This fixes a case of UI Elements becoming invisible after scrolling "Graphics" option for the element.
-  UI: Assigned default font to text/button text created in the Editor when playing. Previously labels were empty in such cases.
-  UI: Black bars that are only visible when game and display resolution aspect ratios don't match are now cleared every frame.
-  UI: Change to hide unused bump map tiling editor in UI/Lit/Bumped Shader inspector.
-  UI: Change to shield Selectable in case of a null EventSystem.current, fixing case of NullReferenceException being thrown when Changing InteractableStates while Deactivating EventSystem.
-  UI: Coroutines for dropdowns no longer attempt to start if the component is inactive.
-  UI: Fix to add unsupported fonts in ' only supported in dynamic fonts.' warning.
-  UI: Fix to force canvas.position.z to 0 when updating the RectTransform of a screen space canvas.
-  UI: Fix to prevent Canvas emitting to a preview camera.
- UI: Fixed a bug in Unity Editor's DelayedTextField where it was losing edit progress when moving focus to a checkbox or dropdown.
-  UI: Fixed ArgumentCache.TidyAssemblyTypeName allocating memory every time. It is now alloc-free, except for the first time deserializing deprecated data.
-  UI: Fixed ArgumentOutOfRange exception sometimes being thrown when editing InputField on mobile.
-  UI: Fixed case of Canvas Editor bypassing overrideSorting and sortingOrder setters, missing needed events.
-  UI: Fixed case of shader UV properties being discarded in graphics material.
- [790264, 799386, 795880] UI: Fixed case of World Space Canvas not being rendered on render textures.
-  UI: Fixed case where RectMask2D was clipping nested canvases with overrideSorting.
-  UI: Fixed deselection of selectable when set to not-interactable.
-  UI: Fixed first color crossfade tween cancelling subsequent tweens while running.
- UI: Fixed incorrect alpha threshold implementation.
- UI: Fixed incorrect content validation when assigning text.
-  UI: Fixed incorrect line height with embedded quads in rich text.
-  UI: Fixed infinite ScrollRect elastic movement.
- UI: Fixed issue that was causing the first line of text to include the ascent offset scaled by line spacing.
- UI: Fixed issue were LayoutComplete() was called instead of GraphicUpdateComplete() after the GraphicUpdate loop.
-  UI: Fixed issue where dirty CanvasRenderers of disabled canvases would be added to the dirtylist, causing a null reference crash.
-  UI: Fixed issue where MovieTextures did not have the texel size set.
-  UI: Fixed issue where multiple webviews were created in UnityConnectEditorWindow.
-  UI: Fixed issue where out-of-memory crash would occur if borders are larger than drawable rect.
-  UI: Fixed issue where pressing up in an empty text field would index the first character, causing an out of range exception.
-  UI: Fixed issue where the last UI element added to a layout group via the Create... menu would be mis-positioned.
-  UI: Fixed issue where two elements were incorrectly ordered if they were in the same sorting bucket.
-  UI: Fixed issue where vertical alignment was set to TOP if the line height was less than the text extents.
-  UI: Fixed issue with blurry text when centering text and pivot set to 0.5 and width/height non-power-of-2.
-  UI: Fixed issue with crash due to dirty Renderer being in the dirty list after being destroyed.
-  UI: Fixed issue with double rendering of world canvas in Editor.
- UI: Fixed issue with null reference error in Graphic on reload.
-  UI: Fixed issue with small UI gittering due to local position-rounding issues.
- UI: Fixed NaNs introduced in font calculations when the font reports its size as 0.
-  UI: Fixed NullReferenceException when deleting object with 2D RectMask component from Scene.
-  UI: Fixed off-by-1 error in InputField.characterLimit when ContentType != standard.
-  UI: Fixed off-by-1 error in InputField.characterLimit when then ContentType is not Standard.
- [740148, 759967] UI: Fixed performance issue when using Screen Space Camera or World space canvases.
-  UI: Fixed the issue with the font importer inspector getting dirtied each time it was enabled.
- UI: Fixed to only process mouse input if there is a mouse present within the StandAloneInputModule.
- UI: Fixed toggle group assignment use to re-register the toggle during onDisable().
-  UI: Fonts now report a proper descent value, which means we can the calculate bottom extent independent of internal leading. Previously, this was causing some characters to render in the wrong place.
-  UI: If the InverseMatrix of the Canvas change, Unity now dirties the batch to redraw at correct location.
-  UI: MaskUtilities fixes:
- Fix to skip inactive RectMask2D
- Fixed nested clipping.
-  UI: Multiple display support disabled on all platforms except WiiU and 3DS. This will be re-enabled once the non-native resolution bug is fixed.
-  UI: Reduced overhead incurred by SetSiblingIndex calling OnTransformParentChanged.
-  UI: Removed functions from onValidate() that cause incorrect behaviour:
- Set does nothing as serialized property has already overwritten the value by this point.
- PlayEffect can cause other items to go invisible.
-  UI: Special characters \n and \t are now stripped from InputField text when in single-line mode to prevent multi-line text in single-line mode.
- UI: World space canvas now emits to each camera in the Scene instead of directly to the world.
-  UWP: Universal Windows Platform: Fixed issue whereby having many generic types in the project would make the .NET Native compiler run out of memory.
-  VCS: Fixed PlasticSCM connection problems on OSX 10.11 and OSX 10.10.
- VCS: Moved the assignment of an identifier from the constructor to the Get method. This stops a C++ method being called during C# constructor and serialization (which is a scripting warning as it is unsafe to do this).
- [800289, 768871] VCS: Updated VCS plugins from Bitbucket with improved support for IPv6 server connections on Windows and OSX and SSL server connections on Windows, OSX and Linux.
-  Video: Fixed case of MovieTexture hang due to incorrect frame rate discovery.
-  Video: Fixed case of MovieTexture hang with multi-channel audio.
-  Video: Fixed case of MovieTexture Incorrect colors.
-  Video: Fixed case of MovieTexture spurious sound when regaining focus.
-  Video: Fixed MovieTexture crash when importing large files.
-  Video: Fixed MovieTexture Unicode support in .mp4/.mov filenames on Windows.
-  Visual Studio: Fixed crash when opening VisualStudio. Also improved VisualStudio startup performance.
-  VR: Exposed Camera.targetEye to script for virtual reality applications.
-  VR: Fixed case of application still updating while Editor is paused (in VR mode).
-  VR: Fixed case of VRSettings.supportedDevices not populating until a VR device is loaded.
- VR: Fixed Culling in left eye for OpenVR applications.
- VR: Fixed file access error when building with Oculus or OpenVR plugins included in the Plugins folder.
-  VR: Fixed issue where using [Deferred Rendering + MSAA + Image Effect - blur] would render a black screen.
- VR: Fixed issue with acquiring Correct node values during the first frame for Oculus.
-  VR: Fixed Particle System rendering in stereoscopic rendering modes.
-  VR: Fixed Screen Orientation on GearVR applications.
-  VR: Fixed splash screen aspect ratio issues for VR applications.
- VR: Fixed splash screen hitching during level load on Oculus Rift and Gear VR.
-  VR: Fixed VR scene rendering in Game View to use the correct aspect ratio and not render occlusion mask.
- VR: VR splash screen images now follow the gaze of the user so that they are always seen.
-  WebGL: Correct WebGL build in the Windows editor.
-  WebGL: Fixed 'Uncaught incorrect header check' error.
-  WebGL: Fixed a default button/axis mapping problem with the Xbox 360 controller on some platforms.
-  WebGL: Fixed anisotropic filtering in Safari.
-  WebGL: Fixed backspace in IMGUI input field navigating away from page.
-  WebGL: Fixed browser lock-up when profiling.
-  WebGL: Fixed building shaders correctly for WebGL in AssetBundles.
-  WebGL: Fixed case of blendEquationSeparate shader errors being thrown.
- [790931, 789543] WebGL: Fixed Command key input issues on OS X.
-  WebGL: Fixed cursor hotspot coordinates when hotspot is outside the cursor area.
-  WebGL: Fixed error message about loading WebGL content from file:// URLs in browsers that don't support this.
- WebGL: Fixed float RenderTextures in WebGL 2.0 in Chrome.
-  WebGL: Fixed floating point precision errors, which could result in a variety of errors during play.
-  WebGL: Fixed issues launching WebGL content in iframes when third-party cookies are disabled.
-  WebGL: Fixed point-light rendering on Windows when deferred rendering is enabled.
-  WebGL: Fixed spot-light rendering on Windows when deferred rendering is enabled.
- WebGL: Fixed WebGL 2.0 support to run on browsers implementing the final WebGL 2.0 specifications.
-  WebGL: Fixed webpage scrolling in Chrome/Safari/Edge when pressing arrow keys.
-  WebGL: Implemented AudioSource.PlayScheduled and AudioSource.SetScheduledEndTime.
- WebGL: Improved performance of floating point math in Chrome.
- WebGL: WebGL: Fixed input y coordinates being off by one.
-  Window Management: LockReloadAssemblies now works correctly.
-  Window Management: Minimizing Unity no longer changes the size of maximized Unity windows.
-  Windows: "Build & Run On" option will now work correctly with Universal Windows 10 Apps (it is no longer greyed out).
-  Windows: Fixed case of custom cursor not working after ~3300 updates to different texture, which could also lead to a crash on opening some standardWindows dialog in the Editor.
-  Windows: Fixed default behaviour for the native resolution setting: the player will now default to native resolution on the first run when this is enabled.
-  Windows: Fixed incorrect calculation of the cursor position when not using the primary monitor.
-  Windows: Fixed incorrect display of Korean characters on Windows 10 (if Korean language pack is not installed) and Windows Phone 10. Unity will now fallback to "Malgun Gothic" font.
- Windows: Fixed occassional stutter when running with vsync turned off.
-  Windows: Screen.currentResolution() now returns desktop resolution instead of window screen resolution when application is in windowed mode.
- Windows: Unity now properly handles non-ASCII command line arguments in Editor and standalone.
-  Windows: Windows Standalone: Input.touchSupported will return a correct value.
- Windows Phone 8: Added obsolete attribute for BuildTargetGroup.WP8 and BuildTarget.WP8Player.
-  Windows Standalone: Custom images will now be shown correctly in the screen selector dialog when building to a directory with non-Western/Latin alphanumeric characters.
-  Windows Standalone: Game execution will no longer freeze while dragging window via title bar.
-  Windows Store: "Short names" for tiles can now be up to 40 characters long (instead of 13 as was the case previously).
-  Windows Store: Accelerometer Events are now returned correctly on ARM platforms.
-  Windows Store: Accelerometer Events are now returned correctly on ARM platforms. Previously, "out of bounds" exceptions could be raised.
- Windows Store: Added docs for PlayerSettings.WSA in Scripting Reference.
- Windows Store: Application will now exit without crashing when calling Application.Quit().
-  Windows Store: Directory.CreateDirectory() no longer fails if path contains all forward slashes.
-  Windows Store: Extended splash screen placement in Windows Phone 8.1 will now match the system splash screen placement.
- Windows Store: Fix to correctly generate RootNamespace inside Visual Studio project if product name contains whitespaces while building with IL2CPP scripting backend.
-  Windows Store: Fix to exclude abstract classes from serialization (as is the case for all other platforms).
-  Windows Store: Fixed a crash that could occur when building a UWP app that references Windows.winmd from a non-standard location.
- Windows Store: Fixed a rare error message "unknown type xxx detected. Using reflection to gather its type information." when yielding IEnumerators in Coroutines on .NET scripting backend.
-  Windows Store: Fixed AccessViolationException when initializing matchmaking in UNet.
- Windows Store: Fixed an assert happening during mesh compression.
- Windows Store: Fixed antialising when calling Screen.SetResolution on Universal Windows 10 Apps.
-  Windows Store: Fixed AssemblyConverter failures related to generic parameters. Errors will give more information in the output, making it easier to pinpoint the cause.
-  Windows Store: Fixed build & run when using IL2CPP scripting backend.
-  Windows Store: Fixed build and run when Unicode characters with diacritics are used in product name.
-  Windows Store: Fixed build failure (rrw failure) when calling methods with System.Numerics.Matrix4x4 as parameter.
-  Windows Store: Fixed build failure due to an assembly resolution exception caused by a plugin having its plugin importer settings set to a specific Windows SDK (as opposed to Any SDK) and building using Universal 8.1 SDK.
-  Windows Store: Fixed case of Build & Run not working for Universal 8.1 solution.
-  Windows Store: Fixed case of mouse scroll not generating GUI events and being less sensitive than on other platforms.
-  Windows Store: Fixed case of SystemInfo.supportsVibration returning an incorrect value on Windows Phone 8.1/10.0.
-  Windows Store: Fixed certain UnityEngine.Networking features not working when Unity C# projects are enabled.
-  Windows Store: Fixed compilation error when using .NET 4 plugin without placeholder and compilation override None.
-  Windows Store: Fixed crash in TouchScreenKeyboard when any members are used immediately after Open().
- Windows Store: Fixed DirectoryInfo.FullName on 8.1
-  Windows Store: Fixed duplicate tab key in XAML elements whenever Unity is running with enabled input.
- Windows Store: Fixed exception while marshalling UnityEngine.NavMeshTriangulation.
-  Windows Store: Fixed manifest generation when only StoreLogo scale-100 image is available.
- Windows Store: Fixed marshaling of UnityEngine.HumanDescription: previously the field hasTranslationDoF was not marshaled.
-  Windows Store: Fixed marshaling of UnityEngine.SplatPrototype: previously fields specularMetallic and smoothness were not marshaled. Because of this terrains would sometimes be rendered incorrectly.
-  Windows Store: Fixed on-screen keyboard occasionally not opening.
- Windows Store: Fixed rare error "Incorrect hashcode" which sometimes could cause a crash.
- Windows Store: Fixed Screen.SetResolution with fullscreen true on SDK 8.1; previously when antialising was set to 0, you would get a black screen.
-  Windows Store: Fixed serialization error. Unity will no longer serialize fields in Windows Store Apps which are of the same type as the class where this field is located (for example, if you have a class Test and you have a field inside public Test MyField;). This behavior was already present in Editor, but not in Windows Store Apps.
-  Windows Store: Fixed support for JPEG images (for tiles, splash screen etc).
-  Windows Store: Fixed System.FormatException in MainPage.xaml.cs.
-  Windows Store: Fixed Unity players not loading on "Windows N" versions.
-  Windows Store: fixed WheelCollider on x64 (NullReferenceException occurring).
-  Windows Store: Fixed WinRTLegacy stream replacements unreliability with large data.
- Windows Store: Fixed www.error return result: previously it would return only an error code, but now it will also contain the error message returned by the server.
-  Windows Store: It is now possible to stop playing video using the Escape or Back button when playing video using Handheld.PlayFullScreenMovie.
-  Windows Store: MainPage background color will now be set to match the splash screen background color.
-  Windows Store: Populate autorotation settings to screen.
-  Windows Store: RunInBackground option will now be adhered to when application window loses focus, and if enabled, the application will keep updating. Note: if application window is minimized it will be still paused, because the OS suspends the application.
-  Windows Store: Screen.resolutions will return a valid value.
-  Windows Store: SystemInfo.deviceType will now correctly report Handheld when running on Windows Phone 10.
-  Windows Store: SystemInfo.supportsVibration now returns correct values on Windows Phone 8.1/10.0.
-  Windows Store: Template source files are now modified while still in Staging Area to prevent sharing violations.
-  Windows Store: Unity will no longer report XBox One controllers as Xbox 360 controllers.
- Windows Store: Unity will no longer steal key events when another XAML element (e.g. TextBox) is in focus.
-  Windows Store: WebCamera will now correctly continue working after minimizing/maximizing application.
-  Windows Store: When building to Universal Windows Platforms, project.json will not be overwritten if the contents inside were modified.
-  Windows Store: WWW.responseHeaders now returns the STATUS header (where previously it was dropped), as other platforms do.
5.4.0f2 (Release Candidate 2) Release Notes (Delta since F1/RC1)
- Android: Screen.dpi always returns densityDpi now
- Editor: Added an editor warning whenever a shader with a lot of variants (e.g. Standard.shader) is added to the 'always loaded' list.
- Lighting: Improved an error message about invalid data when baking probes.
- Scripting: Added Light.customShadowResolution and QualitySetting.shadowResolution to scripting API to make it possible to adjust the shadow mapping quality in code at run time on a per-light basis.
- Shaders: Removed an outdated comment in UnityStandardCore.cginc.
-  AssetBundles: Fixed AssetBundle.LoadFromFile usage with Application.streamingAssetsPath on Android
-  Camera: Fixed issue with silently disabling cameras that have non-existing target display set on them.
-  Editor: Fix deployment of native plugins when building Linux Universal player (existing projects will need to reapply plugin importer settings)
-  FrameDebugger: Fixed assert 'PPtr cast failed when dereferencing! Casting from Mesh to Renderer!'
-  Graphics: Fixed a mipmapping bug causing mipmaps to not update in certain scenarios.
-  Graphics: Fixed Display.main not always being Display.displays in multi-display configurations.
-  Graphics: Fixed Lambert lighting by removing specular highlight from it. The renderer interprets black specular color as a hint to zero out the specular term.
- [810551, 810692] Networking: Fixed ReliableFragmented channel stops working after client has disconnected, then reconnects.
-  Particles: 3D start rotation affects Rotation Over Lifetime module
-  Particles: GetTriggerParticles returns incorrect value for first few frames running in editor
-  Particles: Particle system twitches when being moved in the Editor
-  Particles: Particle.GetCurrentSize3D apply curves only to x if separate axis is not set
-  Particles: ParticleSystem's inconsistent behavior with Time.timeScale
-  Particles: Trigger particle with 0 speed fails to know whether they are inside or outside collider
-  Particles: Trigger radius scale property is not exposed to public API
-  Shaders: Fixed auto-rename of _Object2World -> unity_ObjectToWorld not working in all cases.
-  UI: Fix inadvertent interaction with UI when cursor is locked
-  UI: Fixed buffers not being copied to threads causing the incorrect shader properties to be used and UI flickering to occur.
-  UI: Fixed nested RectMask2D not updating when enabling/disabling them
-  UI: Fixed race condition between UI system and UI jobs. In rare cases could cause a crash. Added asserts to help identify any future race conditions in the UI system.
-  VCS: VCS: Updated VCS plugins from Bitbucket with improved support for IPv6 server connections on Windows and OSX and SSL server connections on Windows, OSX and Linux.
The following are changes and fixes to 5.4.0 features and regressions...
-  AI: Fixed regression introduced in 5.4 where baking navmesh can result in wrong height of some polygons and discontinuities across some navmesh tile boundaries. Re-bake navmesh to fix this problem.
- Android: Audio - Yet another fix for audio focus issues
-  Android: Editor - Fixed an issue where it was impossible to push to devices running Android N Preview
-  Android: Fixed a crash caused by location updates.
-  Android: Fixed an issue where Indonesian and Hebrew weren't properly recognized by SystemInfo
- Android: Fixed deployment to devices with unknown OpenGL ES target
-  Android: Fixed high memory usage of RenderTexture.GetTemporary
-  Android: JNI - Throw correct exception when method not found by reflection
-  Animation: Fixed first rotation key frame not properly set when recording in animation window.
-  Animation: Fixed invalid values set in euler angle channels when recording in animation window.
-  Animation: Moving m_LocalEulerAnglesHint makes all scenes and prefabs appear changed
-  Animation: Optimized game object is rotated twice as much as set
-  Editor: Fixed crash when trying to connect a GameObject to a prefab with no root GameObject set
-  Graphics: Fix invalid RenderSurface assert messages
-  Graphics: Fixed a deadlock when launching a DX11 windows standalone player.
-  Linux: Fix crash on player exit
-  Linux: Fix default vertex array setup
-  Particles: Particles render as trails in 5.4 when driven by animation
- [804400, 800212] Physics: Fix broken WheelCollider inspector
-  Scripting: Fixed first pass dll being recompiled when saving a script that does not belong to it
-  Text Rendering: Fixed issue in which using a non-dynamic font with scaling would report "Font size and style overrides are only supported for dynamic fonts" errors.
-  UI: Fixed objects in screen space cam canvas being created with a non default size
- Windows Store: Fixed a potential crash on Xbox One when retrieving advertising id.
- Windows Store: Fixed a rare deadlock when recursively calling InvokeOnAppThread and InvokeOnUIThread many times
- Windows Store: Fixed an assert that happened on startup on Xbox One in debug builds.
-  WindowsStandalone: Fix regression where "touch up" events would be lost when occurring outside window bounds
-  Audio: Memory tracking of AudioClip assets is broken. Clips referenced by the scene or loaded in background will be tracked under AudioManager instead of the respective clips. This is the temporary trade off to fix a crash from a threading race condition. A fix is in progress.
-  Editor: GPU Profiler does not work with 'Graphics Jobs' enabled. A fix is in progress.
-  Editor: Reverting prefab and pressing undo can result in a crash.
-  Editor: The Frame Debugger will stop functioning under some conditions such as some image effects enabled. Try disabling as a workaround. Investigation in progress.
-  Editor: Undoing hierarchy leads to m_TransformData.hierarchy == NULL assert followed by a crash.
-  Image Effects: Tonemapping & Color Grading LUT type image effects causes visual artifacts. Investigation is in process.
-  UI: 9-Sliced images whose sprite has mipmapping can blur if size is too small. Disable mipmapping as workaround.
-  VR: Single-pass rendering: The following Standard Asset Image Effects do not currently work reliably: CameraMotionBlur, ScreenSpaceAmbientObscurance. A fix is being developed.
To be addressed in separately from 5.4.x:
-  GI: Copying a Scene loses the baked lighting. Workaround is to manually use "Build Lighting.". This will not be addressed in 5.4.
- Graphics: In deferred rendering, lightmapped objects affected by mixed-mode lights fallback to forward rendering.
-  Scene Management: SceneManager.UnloadScene hangs if called from a physics trigger. Workaround is to defer unload. This will not be addressed in 5.4.
-  UI: Editing Text with Best Fit enabled causes artifacts to appear. This will not be addressed in 5.4.
- VR: In-development cinematic Image Effects (Bitbucket project) do not currently work with single-pass rendering. This will be addressed independently of the 5.4 release schedule.
-  VR: SteamVR does yet not support DX12. This will be coordinated between SteamVR's schedule and Unity's but unclear as to which cycle it will be part of
-  VR: SteamVR Unity Native: When you have two "eye" cameras under head, Unity crashes. Working with Valve to address in the plugin. This will be addressed on SteamVR's schedule.
-  Windows Store: Unity APIs which take multi-dimensional arrays as parameters (e.g. TerrainData.SetHeights) do not work on UWP in configurations (e.g. Master config) in which .NET Native compilation is enabled. The bug has been logged with Microsoft.