Release notes
Improvements
- 2D: Change Outline and Physics Shape module behaviour in Sprite Editor Window. The module will only show outlines only when user has customised it.
- 2D: TextureImporter Inspector has an option to enable default Physics Shape for Sprites
- Linux: Improved filesystem performance to handle large cache sizes.
- XR: Improved background rendering performance in ARCore by eliminating an unnecessary OpenGL state reset.
- XR: Updated Oculus to version 1.22.
Changes
- Asset Import: Adjusted messaging around Substance Designer import removal.
- XR: Android builds that enable ARCore no longer fail when the minimum Android SDK is less than 24.
- XR: Standalone UWP applications targeting Windows Mixed Reality will now cause the OS to notify the user if the Mixed Reality components are not installed or a headset is not connected, rather than silently falling back to non-VR desktop mode.
Fixes
- 2D: Fixed an issue that was causing the Physics Shape of a Sprite2D to not being properly set unless the 'Edit Physics Shape' tab was opened first. (990691)
- 2D: Fixed a crash after building and loading an Asset Bundle with Tilemap in the Editor. (976411)
- 2D: Fixed a crash when Tilemap is loaded with invalid Tiles in the Editor. (972214)
- 2D: Fixed an error message "A script behaviour has a different serialization layout when loading" when a Tilemap was loaded in players with code stripping. (969827)
- 2D: Fixed Physics2D.TilemapCollider.TileUpdate taking an extremely long time to update every time a script recompile happens. (966605)
- 2D: Fixed Tilemap not setting Tiles with the correct data in players with code stripping. (965608)
- Android: Fixed a bug causing the loading of native audio plugins to fail on Android. (992023)
- Android: Fixed an issue where the full-screen movie player didn't autorotate. (962450)
- Android: Fixed animation not played when screen sharing is enabled. (995841, 958223)
- Android: Fixed a crash when a compute shader is being used that did not compile/link on a device.
- Android: Fixed gyroscope lag issues that happen on some android devices. (912848)
- Android: Fixed an issues when trying to use jobified rendering on certain graphics devices like GLES. (985591)
- Android: Fixed a problem when there is no valid EGL context when running the player loop. (952769)
- Android: Fixed Skybox distortion on specific Android devices with Vivante GC1000/GC2000 GPU. (967646)(903140)
- Animation: Fixed a crash caused by invoking QueryComponentByType() when code stripping is enabled. (962745) (938640)
- Animation: Fixed an issue where AnimatorOverrideController.ApplyOverrides was executing unnecessary operations, causing performance issues. (996351)
- Animation: Fixed Animator Layer not deselected when clicking on the graph part of the UI. (996153)
- Animation: Fixed Animator.GetBehaviours returning an empty array after saving scene. (975824) (966082)
- Animation: Fixed a crash when calling Animator.MatchTarget without a controller. (975555)
- Animation: Fixed a crash when importing animator controller with null transitions. (986004)
- Animation: Fixed editor crashing on WalkTypeTree after removing any component while in Animation record mode. (978930)
- Animation: Fixed state deselection in the Animator State Machine. (950805)
- Animation: Fixed Timeline Sequence not firing Animation Events. (947918)
- Asset Bundles: Fixed a crash when loading meshes from asset bundles that contain both compressed and uncompressed meshes. (984070)
- Asset Bundles: Fixed packing AudioMixerController, AudioMixerGroup and AudioMixerSnapshot into bundles with disabled type trees. (976768)
- Asset Import: Fixed AssetPostprocessor.OnAssignMaterialModel not being called for all models when importing materials as sub-assets. (983321)
- Asset Import: Fixed a crash when importing fbx .meta files that contain references to non-existing scripts or when scripts ID was too large. (999833, 990267)
- Asset Importing: Fixed an issue with MonoScripts for StateMachineBehaviour derived classes not being extracted from managed plugins. (963958)
- Audio: Fixed a bug where AudioManager::Update was generating a small amount of garbage memory, if a spatializer was selected, that would later need to get garbage-collected. (991111)
- Cache Server: Fixed an issue where using a Cache Server and reimporting Assembly Definition files would fail to trigger rebuilding of the assembly. (975773)
- Cloud: Fixed exception when building in Cloud Build with Performance Reporting enabled. (996950)
- Editor: Fixed a Windows-specific crash in YAMLMerge when trying to merge files. (1001450)
- Editor: Fixed early flipping of login page in Mac by increasing the timeout. (980070)
- Editor: Fixed an editor crash when renaming GameObject with long name on Windows. (991619)
- Editor: Fixed an Editor hang when merging large changesets or large scene files with Collaborate. (971434)
- Editor: Fixed Editor window, Panel and all related managed object leaking. (996204, 988580)
- Editor: Fixed issue with "Rider 2017.2.1.app" not being recognized as Rider code editor. Now recognizes "Rider*.app".
- Editor: Fixed an issue with only assemblies whose name start with "Assembly" being debuggable on IL2CPP platforms.
- Editor: Fixed an issue with UWP build failing when using .asmdef assemblies. (979704)
- Editor: Fixed Skinned Mesh not being removed on undo. (925835)
- Editor: Fixed YAMLMerge performance issue when merging large files. (1001461)
- Fixed uninstalling Unity leaving sketchupapi.dll behind. (994283)
- GI: Fixed the intensity of baked and real-time emissive materials in Enlighten. (986160)
- Graphics: Fixed OpenGL ES crash due to problem with cached VertexAttribArray. (989484)
- IL2CPP: Added Windows runtime storage extensions. (992138)
- IL2CPP: Corrected a possible build failure with IL2CPP when an attribute constructor has two arguments of type object. (993422)
- IL2CPP: Enabled dead code stripping for clang toolchain. (976218)
- IL2CPP: Fixed a crash in Unity Linker (System.InvalidProgramException: Failed to resolve [UnityEngine]System.Resources.NeutralResourcesLanguageAttribute) when using a managed - DLL that has a non-existing attribute on it. (969958)
- IL2CPP: Fixed a hang on iOS devices when a socket operation is in progress and the app is put into the background with the new scripting runtime. (989536)
- IL2CPP: Fixed a problem with the decimal to double conversion implementation with the new scripting runtime. (959791)
- IL2CPP: Fixed an unlikely, but possible crash when default parameter values are used. (973052)
- IL2CPP: Fixed incorrect code generation for nullable types when they are passed to a virtual function. (995663)
- IL2CPP: Implemented sending of email via SmtpClient with .NET 4.6. (947208)
- IL2CPP: Implemented the EnsureSufficientExecutionStack method for .NET 4.6. (976623)
- IL2CPP: Improved the performance of code conversion when many nested generic types are used. (975496)
- IL2CPP: Improvedthe startup performance of Unity players built with IL2CPP. (989476)
- iOS: Fixed a problem preventing a user from being prompted to log into GameCenter. (1000658)
- iOS: Fixed Display.SetResolution to work during first frame. (1003875, 995079)
- iOS: Fixed UnityWebRequest instability when starting and aborting a lot of requests. (995992, 944301)
- iOS: Metal: Fixed MSAA behavior when using RenderPass.
- iOS: Metal: Fixed ReadPixels() crash when reading out of active textures bounds. (990595, 981074)
- Linux: Fixed a crash on player startup in GfxDeviceVKBase::GrabIntoRenderTexture. (1002211)
- Metal: Fixed an edge case crash when using grab-pass on metal. (973813)
- OSX: Fixed a crash on Editor panel close on select versions of macOS. (982435)
- OSX: Fixed a crash on Editor panel close on select versions of macOS. (982435)
- OSX: Fixed an editor crash on certain hotkeys and menu selections during project import. (988776)
- Package Manager: Fixed a project being stored on OneDrive resulting in a Package Manager error and preventing a project from being opened. (841172)
- Package Manager: Fixed building as local system user failing on Windows. (960093)
- Particles: Fixed flickering due to a floating point error when sorting by youngest/oldest. (988874)
- Physics: Ensured that "Collider2D.Distance" with very small distances produces a valid normal. (969960)
- Physics: Fixed Assert message being displayed when reparenting a Collider2D component that is using a CompositeCollider2D. (977687)
- Physics: Fixed crash during simulation after destroying Rigidbody2D that has a child Kinematic Rigidbody2D. (989323)
- Physics: Fixed disabling and enabling a collider on an inactive gameobject producing transform error messages. (977568, 968882)
- Physics: Fixed double full stop added to the dropdown boxes in the physics settings. (998183, 958814)
- Physics: Fixed issue where MeshCollider is added to prefab in Hierarchy when selected from the project folder. (998186, 960479)
- Physics: Fixed PhysX crash when calling Physics.OverlapBoxNonAlloc on Android devices. (878407)
- Physics: Increased the accuracy of rotating a tile clockwise/anti-clockwise by 90-degrees when tilemap painting. This ensures that TilemapCollider2D can be accurately composited using the CompositeCollider2D. (974119)
- Profiler: Fixed EndThreadProfiler crashing Unity when called from main thread. (980553)
- PS4: Fixed a crash when calling DateTime.Now whilst using il2cpp. (996508)
- PS4: Fixed a native rendering plugin GetContext() not returning correct value. (991969)
- Scene Management: Fixed BuildPipelineInterfaces.InitializeBuildCallbacks() being called on every scene load when loading the same scenes multiple times. (978564)
- Scripting Upgrade: Fixed a C# compiler bug which could result in "the type cannot be used as type parameter `T' in the generic type or method" errors. (991464)
- Scripting Upgrade: Fixed a crash on exit when script debugger is enabled. (974228)
- Scripting Upgrade: Fixed a crash when using named pipes. (942966)
- Scripting Upgrade: Fixed EntryPointNotFoundException when calling HTTPClient.GetAsync on Android. (935292)
- Scripting: Fixed a crash when using named pipes. (929984)
- Scripting: Fixed a crash when using unsafe code in an assembly built with VS2017. (990559)
- Scripting: Fixed an incorrect value when using Math.Round with MidpointRounding.AwayFromZero. (993302)
- Scripting: Fixed memory snapshot errors related to invalid GCHandle values. (977003)
- Scripting: Fixed memory snapshot naming for nested types. (974042)
- Scripting: Fixed memory snapshot naming for types without a namespace. (974031)
- Scripting: Fixed regression with Assembly-CSharp.dll and friends referencing editor only assemblies. (982271)
- Services: Performance Reporting: Report device model field for Managed Exceptions. (980815, 980816)
- Shaders: Fixed bad swizzles on GLSL & Metal shader image size queries. (938614)
- Timeline: Fixed ArgumentOutOfRangeException when shift-selecting a clip, if that clip was moved and the move operation was undo. (986871)
- Timeline: Fixed group tracks being saved under the wrong asset when copied to a different Timeline. (991434)
- Timeline: Fixed object binding when inline curves are opened. (998182)
- Timeline: Fixed Playing a Timeline causing GC allocations when using the 4.6 Scripting Runtime. (998642)
- UI: Fixed an issue where undoing the activation of a UI layout component did not undo the side effects to the children RectTransforms. (990752)
- UI: Fixed AspectRatioFitter not driving the RectTransform on the first frame. (999338)(988706)
- UI: Fixed crash in RectTransform::ShouldUpdateTransformBefore. (986584)
- UI: Fixed entering playmode with profiler open and UI in the scene crashes in UI::Canvas::CaptureBatchFrame. (984325) (966106)
- UI: Fixed instances where Font.textureRebuilt would not be called even though the internal texture was regenerated. (988311) (939853)
- UI: Fixed issue where a driven RectTransform could cause a scene to be constantly flagged as dirty. (988136) (966172)
- UI: Fixed issue where position and rotation specified when calling Object.Instantiate was not applied properly to a RectTransform. (992286, 980300)
- UI: Fixed issue with UI and prefab positioning. (977959)
- UI: Fixed OnEndDrag not being called when dragging as the app loses focus. (995452, 937370)
- UI: iOS Fixed incorrect processing of touch canceled events. (973437)
- UWP: Fixed .NET native compiler crash when using List or List in a serializable class. (979741)
- UWP: Fixed Application.isMobilePlatform results to be consistent with SystemInfo.deviceType. Also update API docs for these APIs. (991466)
- UWP: Fixed reference rewriter not fixing references for System.Net.Sockets.Socket when DLL where it's being referenced was compiled against .NET 3.5. (947209)
- UWP: Fixed keyboard input not distinguishing left/right shift keys. (968801)
- VR: Fixing crash involving VR Mock Device when using TrackedPoseDriver. (966990)
- Web: Fixed file URI with host component in UnityWebRequest. (991606, 971557)
- Web: Fixed handling special URIs in UnityWebRequest with colon in them, like blob:http. (995845, 992221)
- Web: Fixed native UnityWebRequest not destroyed until garbage collected even if explicitly disposed. (988818)
- WebGL: Added handling of playBuffer exception when there is no audio output on Safari. (994912, 960863)
- Windows: Fixed an assert when stopping and then immediately destroying DictationRecognizer. (986045)
- Windows: Fixed a crash on startup in case screen width/height player prefs in registry got corrupted. (979198)
- Windows: Fixed default width/height not honored for 'Windowed' mode. (968584)
- Windows: Player executable is once again large address aware. (990939)
- XR: Fixed a crash that would occur if an application used Unity's Spatial Mapping component without VR being enabled or without using Windows Mixed Reality. (973172)
- XR: Fixed an issue with lights failing to completely illuminate scene geometry during stereo rendering. (965494)
- XR: Fixed build crashes when using stereo display. (987306)
- XR: Fixed calling touch keyboard causing unhandled exception to be thrown and app closing. (993425)
- XR: Fixed calling XRSettings.LoadDeviceByName on an already loaded device causing issues. (998801)
- XR: Fixed a crash when connecting simulator device while running in editor. (998862, 980089)
- XR: Fixed a crash when holographic emulation set to remote with no device connected. (952777)
- XR: Fixed the documentation around XRSettings.LoadDeviceByName and add a warning message when we detect that a user is trying to reload an already loaded VR Device. (998801)
- XR: Fixed errors when building for Daydream and Cardboard with Proguard enabled. (991170, 946104)
- XR: Fixed frame rate throttling when Windows MR device loses tracking. (994652)
- XR: Fixed losing focus causing the thread to sleep causing fps to drop. (994652)
- XR: Fixed stabilization plane not getting set correctly via the SetFocusPointForFrame() API, resulting in poor hologram stabilization and color separation on HoloLens. (993880)
- XR: Ported missing properties on the Pose type, which broke user code for Windows Mixed Reality when porting from 2017.2. (988571)
Revision: b5bd171ee9ba