Prefabs: Editor crashes when creating a prefab of a GameObject whose parent's prefab instance is missing

iOS: Empty project builds crash with PlatformInfoDispatcher.ReportAnalyticsData on iOS devices. ( 1077832 )

XR: Linear color space has driver issues on Gear VR with S7 Adreno-based phones running Android 7.0.

Linux: Linux executables don't launch, and have an incorrect icon. This is because of a limitation in Nautilus, which is maintained by the Gnome community. ( 1047075 )

IL2CPP: Building a Development Build fails on empty projects when Script Debugging is enabled and the Scripting Backend is IL2CPP. ( 1082185 , 1083374)

Graphics: Reinstalling Render Pipeline Package results in errors until you restart the Editor. ( 1075234 , 1078081)

Prefabs: Fix prefabs being not editable after a building a player. (1107035)

Prefabs: Fix PrefabUtility.GetObjectOverrides() produces a null reference exception when passed with non-Prefab objects. Added proper ArgumentExceptions (1105351)

Prefabs: Fix Inspector and Hierarchy window not updating after clicking documentation icon in Prefab Overrides window ( 1101355 , 1102053)

Particles: Fixed ExternalForces module ParticleSystemForceField curves becoming corrupted when multiple systems were using the same ParticleSystemForceField. ( 1089544 )

Mobile: Fix crash that happens if native library initialization fails for any reason. (1097014)

Editor: Fix issue with Animator preview not rendering grid in SRP. (1081798)

Editor: Fix adding curve keys in audio source inspector via context menu. ( 1085732 )

XR: Added VR single-pass stereo support for Vulkan and OpenVR using double wide texture.

Terrain: Made the following improvements to the Terrain system:

Scripting Upgrade: Enabled the .NET 4.x Equivalent as the default Scripting Runtime Version . Deprecated the .NET 2.0 scripting runtime.

Scripting Upgrade: Enabled Roslyn compiler and C# 7.3 when targeting the new Scripting Runtime Version .

Scripting: Added NET_LEGACY C# preprocessor directive when compiling scripts with the .NET 3.5 Equivalent Scripting Runtime Version .

Scripting: Added CSHARP_7_3_OR_NEWER preprocessor directive when compiling C# 7.3 scripts with the .NET 4.x Equivalent Scripting Runtime Version .

Profiler: Added UnityEditor.Experimental.Networking.PlayerConnection.EditorGUILayout.AttachToPlayerDropdown to public API to offer a one-stop solution to display and change the player the Editor is attached to.

Profiler: Added the backend for Memory Profiler version 2.

Prefabs: New Improved Prefab Workflows (not Preview nor Experimental). See Prefabs for more details.

Player: Added AssetBundle.RecompressAssetBundleAsync API to re-compress downloaded AssetBundles from one compression methodology to another runtime supported compression methodology. Moved BuildCompression , CompressionLevel and CompressionType out of the UnityEditor.Experimental.Build.AssetBundle namespace and into UnityEngine .

Playables: Implemented a method for sending notifications through the playable system.

Playables: Exposed the time wrap mode for Playables.

Physics: Addewd support for Box, Capsule and Sphere casts in aysnc query command.

Physics: Added the ability to have a per-Scene physics world, which allows for separate simulation and queries.

Physics: Added the ability to have a per-Scene physics world, allowing separate simulation and queries (3D physics).

Physics: Added complete set of non-allocating 2D queries to new multi-scene PhysicsScene2D type.

Particles: Ordered Mesh Emission: A new option in the Shape Module for Meshes, called "Vertex Ordered", which emits particles from each vertex of the Mesh in order.

Particles: Added Ringbuffer mode, for persistent effects such as footprints or bullet holes.

Particles: Added option to disable roll on billboard particles, which is particularly useful for VR applications.

Package Manager: Added support for packages in the Project browser.

Multiplayer: Added support for providing a custom network transport implementation to be used by Unity Multiplayer's high-level API. See documentation on UnityEngine.Networking.NetworkManager.activeTransport for details.

Mobile: Added Dynamic Resolution Scaling support for Vulkan on Android and Metal on iOS.

IL2CPP: Added support for managed code debugging with IL2CPP on Xbox One.

Graphics: Added support for render targets and the R16 texture format.

Graphics: Added shadow bias options to Particles, Lines and Trails.

GI: Added preview version of GPU Lightmapper in Windows Editor. Select this in the Lighting window. The lightmapper is based on OpenCL and RadeonRays, and works on all modern GPUs with more than 2Gb of dedicated memory.

GI: Added disc-shaped area Light type for baked lighting. Only available in the Progressive Lightmapper.

Facebook: The Facebook platform now uses Package Manager for Facebook SDK management. Configure this in the Facebook Build Settings (not the Package Manager UI).

Editor: Introduced new searchable window to display and edit Project Settings and Preferences.

Editor: Added improvements to the window tabs:

Editor: Added ability to view each channel in the Texture Inspector.

Animation: Added SkinnedMeshRenderer.forceMatrixRecalculationPerRender. Set this property to manually render a skinned mesh multiple times within a single update. For example, for rendering out the results of an animation to a texture.

Android: Added the automatic installation and configuration of OpenJDK when installing Unity Android support. Configuration to use manually installed JDKs is no longer officially supported.

Android: Added support for using Kotlin source files as plugins.

Android: Added support for requesting permissions at runtime for apps using API level 23 and above.

XR: Oculus Dash and Shared Depth Buffer options are now enabled by default in the Oculus XR settings.

XR: Moved Windows Mixed Reality support to a package. The package automatically downloads when you add Hololens/WindowsMR to the Virtual Reality SDKs list.

XR: Moved OpenVR support to a package. The package automatically downloads when you add OpenVR to the Virtual Reality SDKs list.

XR: Moved Oculus support to a package. The package automatically downloads when you add Oculus to the Virtual Reality SDKs list.

WebGL: WebAssembly is now the default Linker Target on new WebGL projects.

WebGL: Unity no longer uses glGetProcAddress internally.

Web: WWW is now obsolete. Use UnityWebRequest instead.

Scripting Upgrade: Updated the default Api Compatibility Level to .NET Standard 2.0 .

Scripting: Marked the .NET 3.5 Equivalent Scripting Runtime Version as deprecated.

Particles: Added option to start Android app in non-fullscreen mode.

Package Manager: Hid Assets subfolders for Packages from the Object Picker.

Graphics: Graphics emulation is now disabled whenever a Scriptable Render Pipeline is active.

Editor: When Unity builds assemblies in the Editor for the .NET 4.x scripting runtime, they now have .NET 4.6 ( NET_4_6 define ) set, regardless of when the .NET Standard 2.0 scripting profile is set ( NET_STANDARD_2_0 define ). This is because the scripting profile setting only affects players, and the Editor always uses the .NET 4.6 scripting profile.

Editor: Updated the UXML factory-related API. The old API is now marked obsolete.

Editor: Updated event queueing in UIElements. When an event occurs that generates subsequent events, Unity now processes those subsequent events only when it has finished processing the current event.

Editor: Unity no longer automatically shows the Services window.

Editor: In USS files, flex N now means flex N 0 auto . It previously meant flex N 0 0 .

Editor: Changed Particle System module headers to only track the enabled state property instead of all properties. Also added Property menu choices to the context menu that appears when you right-click on the headers.

Editor: Changed File menu item names. 'Save Scenes' is now 'Save' and 'Save Scene As' is now 'Save As', because they now save either a Prefab or Scenes depending on whether Prefab Mode is active. Unity still saves any dirty Assets when you use Ctrl/Cmd + S.

Editor: Added 'Find references in Scene' to Component context menus.

Audio: Simplified the Audio Profiler so that it is consistent with other profiler panes. The detailed view enables audio profiling, so that Unity only caries this out when you need it.

Asset Import: Reorganized the Model tab of the Model Import Settings window to improve usability.

Android: On Adreno 4xx devices, Vulkan is now only used when it is the only selected Graphics API.

AI: Set the maximum number of OffMeshLinks that Unity can autogenerate and load in a static Scene NavMesh to 65535.

Windows: The Vulkan editor support on Windows and Linux is no longer experimental. Removed the "Enable Vulkan editor support" checkbox.

Particles: The Unlit Particle Standard Shader is now applied by default when creating new Particle Systems.

Particles: It is now possible to flip a percentage of mesh particles, in the same way that was previously only possible with billboards.

iOS: Unity now distributes iOS and tvOS Simulator players as dynamic libraries (dylib).

Editor: Removed undocumented behavior where pressing the F key twice in rapid succession would execute Edit > Lock View to Selected instead of Edit > Frame Selected .

Build Pipeline: If you call BuildPipeline.BuildPlayer while Unity is compiling scripts, Unity now completes compilation before beginning the build process, rather than aborting compilation.

Android: Disabled Android TV by default for new projects.

XR: Using presence detection on Windows Mixed Reality is now more responsive and reliable.

XR: Linear color space now works on Oculus Go and Quest. For Gear VR, driver issues might prevent linear color space from working with S7 Adreno phones on Android 7.0.

XR: Android apps that use ARCore can now use multi-threaded rendering.

Web: UnityWebRequest now supports cookies in the same game session. Added API to remove them.

Universal Windows Platform: Added support for building player with Visual Studio 2019.

UI: Updated UI.InputField to use a cached version of WaitForSecondsRealtime to reduce GC.

UI: Updated the way Unity generates bold characters when it cannot find an bold font. Unity now thickens the glyph strokes rather than horizontally distorting the glyph. ( 966667 , 983200)

UI: Added the ability to to use Sprite Tight Mesh inside Unity UI.

Timeline: The Timeline window now evaluates objects based on their scene position when an Animation track has no clips or extrapolation.

Timeline: The scene offset mode on an Animation track now uses the existing scene position and rotation when previewing in the Editor.

Timeline: Improved root animation in the Timeline window.

Timeline: Improved performance and reduced allocations when playing a Timeline.

Timeline: Added different colors and icons in the Timeline window when editing a PlayableDirector in prefab isolation mode.

Timeline: Added an API to rebind the PlayableOutputs to the scene.

Testing: Introduced an NUnit constraint for testing whether code allocates any GC memory, along with supporting classes to integrate with NUnit's fluent Assert.That syntax. This allows you to write very concise tests to assert that your code doesn't allocate any GC memory.

Terrain: Made changes to allow users to specify a shader, so that shading of the basemap pass better matches the splatting passes. To do this, add the BaseMapGenShader dependency for generating the Terrain basemaps.

Terrain: Added a per-pixel normal map on Terrain with instancing enabled.

Terrain: Added a normal scale setting, which allows you to control how far normals are disturbed from the neutral position for Terrain Layers.

Terrain: Added a Mask map texture to the Terrain Layers, which is usable by custom Terrain shaders for more sophisticated shading.

SpeedTree: Added support for importing new SpeedTree v8 Assets ( .st files) into Unity.

Shaders: Shaders can now include files from packages directly, like this: #include "Packages/packagename/IncludeFile.cginc" .

Shaders: Generated GLSL shaders for GLSL 3.00 and higher now use medium precision instead of low precision.

Scripting Upgrade: Added log changes made to user assemblies by the AssemblyUpdater in the file Editor.log. For more information, see the Logging section in APIUpdater .

Scripting: Allocator.Temp memory in NativeContainer types is now automatically disposed of when returning from managed code back to native. Also enforced the restriction of passing Allocator.Temp memory to jobs, which enables the use of Allocator.Temp NativeContainer types in Burst compiled jobs.

Scripting: Removed main thread limitation from the LineUtility.Simplify method.

Scripting: Optimized 'DisallowMultipleComponent' check to be faster and not allocate garbage collection memory.

Scripting: Hides obsolete properties from IntelliSense using the [EditorBrowsable] attribute: -Visual Studio (without R#): works out of the box (Win, Mac). -Visual Studio (with R#): the user needs to configure Filter members by [EditorBrowsable] attribute in R#. (https://www.jetbrains.com/help/resharper/Reference__Options__Environment__IntelliSense__Completion_Appearance.html). -Visual Studio Code: works out of the box (Win, Mac). -Rider: does not support filtering by [EditorBrowsable] attribute.

Scripting: Added UNITY_SERVER define, to enable server-specific script logic when building for server builds.

Scripting: Added the status code and name of the error (rather than a generic message) to the error property of UnityWebRequest when it encounters an HTTP error.

Profiler: Registered all native Unity threads with Profiler .

Profiler: New Profiler blocks are now added automatically to infrequently run blocks, to avoid having sections of the Profiler with no data.

Profiler: Improved the performance of data integration into the Profiler window.

Profiler: Fixed incorrect total/used memory metrics in the Memory pane of the Profiler .

Profiler: Exposed Profiler.maxUsedMemory property in the API, and command line arguments, to control the maximum used memory by Profiler . ( 1049157 )

Profiler: Enabled automatic profiling of scripting threads, for IL2CPP.

Profiler: Auto-registration added of Mono threads with Profiler .

Profiler: Added PIX support in the Windows Editor for Windows CPU timeline captures. (1080203)

Profiler: Added GC finalizer thread to Profiler , for the new Mono backend.

Profiler: Added functionality so that Recorder objects can be configured to collect samples from a single thread.

Profiler: Added an Options drop-down menu to the Hierarchy toolbar in the CPU Usage view on the Profiler window. This change collapses samples that only occur when running the game in the Editor . Collapsed samples do not add the size of their managed allocations ( GC Alloc column) to the enclosing sample. The option to collapse samples is on by default, and the samples will show up as EditorOnly [SomeMethodName] .

Prefabs: When a Prefab Asset goes missing, Unity now displays the last known overridden root Prefab instance name. It now displays "MyGameObjectName (Missing Prefab)" instead of "Missing Prefab".

Playables: Improved PlayableGraph housekeeping which improves performance for large numbers of PlayableGraphs, Timelines, or Animators.

Physics: Physics: Upgrade the PhysX version to 3.4.2. This is the latest release up to date.

Physics: Physics.reuseCollisionCallbacks and Physics2D.reuseCollisionCallbacks properties are now enabled by default in all new Project Templates.

Particles: The Texture Animation Module now supports a fixed FPS mode, and a speed-based mode.

Particles: Improved Shape Module gizmos to visualize the volume emission parameter.

Particles: Exposed a culling mode option that enables you to control over particle simulation whilst offscreen. ( 765905 )

Particles: Added 'Probability' option to the Burst emission, to enable a random chance that a burst will or will not trigger.

Particles: Added "Emit Probability" property to Particle System Sub Emitters. This controls the chance that the sub-emitter emits particles.

Package Manager: Made several improvements to the Package Manager UI, including being able to filter the packages displayed.

Package Manager: Added references to package asmdef files in the Object Picker.

Package Manager: Added access to the package's author from the Unity Package Manager.

License: Unity now displays an error message when a Personal Edition license is blocked.

License: Added two parameters ('createManualActivationFile' and 'manualLicenseFile') to allow you to activate your license offline via command line.

Kernel: The contents of ProjectVersion.txt are now updated automatically after the user accepts the 'Project Upgrade' prompt dialog shown when opening an existing project in a newer version of Unity.

iOS: Added profiler blocks in native code for input events in the new input system, which enables you to see number of incoming input events.

IL2CPP: Added "Master" configuration to the IL2CPP compiler configuration drop-down. This configuration is optimized for speed, with complete disregard for build time. It enables compiler options that slow down compilation (for example, link time code generation on Windows-based platforms). Generated Visual Studio projects for IL2CPP scripting backend on Windows Standalone and Universal Windows Platform now also contain an optional "MasterWithLTCG" configuration, which you can use to enable these settings. ( 1089249 )

Graphics: Texture2DArray GameObjects now have an improved Editor, including the ability to preview the Textures in the Array.

Graphics: Removing the Wind Module no longer disables particles and terrain. ( 1085664 , 1096340)

Graphics: Metal now supports GPU skinning with Compute Shaders.

Graphics: Improved error messages issued when creating a texture with a specific format fail.

Graphics: Implemented Asynchronous readback of GPU resources for the Metal API.

Graphics: Disabled robust buffer access when using Vulkan in Player builds.

Graphics: Blend shapes now use compute shaders where supported. You must enable GPU Skinning in Player Settings.

Graphics: Added the possibility to use ComputeBuffer in "native" Metal shaders (written in Metal's shading language).

Graphics: Added support for a "linearGrey" texture in ShaderLab as a default Texture. It is grey 50% in linear space.

Graphics: Added 'Clamp BlendShapes (Deprecated)' option in PlayerSettings to toggle BlendShape weight range clamping and replaced the FloatField with a Slider in SkinnedMeshRenderer. ( 741808 )

GI: Unity now caches Progressive Lightmapper G-Buffers in the GI cache. Lightmap baking starts quicker if the G-Buffer is already in the cache.

GI: To improve performance, Unity now only extracts Materials when the Progressive Lightmap baking back-end is running.

GI: The Lightmap window Memory view can now show allocations greater than 4Gb.

GI: The Lighting window now displays the Light Probes convergence status during baking.

GI: Reduced baking artifacts in areas that use interpolated normals.

GI: Moved Enlighten data loading to the loading thread and added DynamicGI.materialUpdateTimeSlice to control albedo/emissive rendering per frame budget:

GI: Lights from Particle Systems can now affect realtime GI if they have non-zero bounce intensity and Realtime GI is enabled. ( 832496 )

GI: Added two GI profiling counters: one for pending albedo/emission renders, and one for pending Material updates.

GI: Added support for configurable falloff for Enlighten lightmap baking.

GI: Added a debug view to display visible texels from the baked GI point of view. This is particularly useful along view prioritization.

Editor: MinMaxSlider sliders now display horizontal/vertical resize cursors when you hover over the resize handles at their ends.

Editor: You can now register AssetBundles included in read-only folders with the Caching system. To do this, ad the read-only folder path as a Cache.

Editor: You can now re-order Assembly Definition References, Assembly References and Define Constraints lists when editing a single Assembly Definition File in the Inspector.

Editor: When switching between different Desktop Standalone platforms in Build Settings, Unity now selects the x64 architecture by default.

Editor: Updating and deleting a precompiled assembly (.NET plugin) with "Auto Referenced" disabled now triggers recompilation only where necessary, rather than automatically recompiling all scripts.

Editor: Unity now disables the Hierarchy window's context menu items for deleting or renaming GameObjects if the GameObject has a NotEditable flag set.

Editor: The Build Settings window now allows you to build a Development Headless Linux Standalone Player.

Editor: Replaced the Animation condition dropdown with a searchable dropdown. ( 720995 )

Editor: Renamed several UIElements UXML attributes and USS properties for consistency and alignment with CSS. For details, see this spreadsheet: https://docs.google.com/spreadsheets/d/1vS7LASgy1_Cdnr49isXGIVf6FWkNAOc56zGODfJbzPM/edit?usp=sharing

Editor: Made the Clip Masks faster to refresh in the ModelImporter Animation panel by using the new SerializedProperty.DataEquals method.

Editor: In USS files, flex-basis now accepts the value auto .

Editor: Improved the Rig tab of the Model Import Settings window to improve usability for ExposedTransforms when Optimize GameObject is selected. Changes include new search functionality, allowing multiple selection, keyboard navigation, and enabling using modifier keys to collapse, enable, or disable the entire hierarchy.

Editor: Enabled editing of multiple icons in the Inspector. ( 643017 )

Editor: Edited Component Presets can now use Reset and Paste Component Values methods in the Preset Inspector.

Editor: Deleting a script now triggers recompilation only where necessary, rather than automatically recompiling all scripts.

Editor: Added support for finding .asmdef Assets with t:asmdef when using AssetDatabase.FindAssets and the Unity Editor project browser search field.

Editor: Added a warning when Unity does not load assembly definition file (asmdef) assemblies on startup in cases where the assemblies do not have scripts to compile their asmdef references. Also added a warning when Unity attempts to compile asmdefs that do not have scripts in the Editor. ( 1041284 )

Docs: Expanded the documentation of the SerializedObject class.

Compute: ComputeBuffer.GetData and ComputeBuffer.SetData now throw exceptions when they get bad values for arguments. Unity checks offset and size more strictly (for one argument version, Unity assumes the offset is 0 and the size is the same as that of the container), and compatibility between C# type size and ComputeBuffer stride.

Asset Import: Improved the UI for the AvatarMask by adding search functionality, allowing multiple selection, keyboard navigation, and enabling using modifier keys to collapse, enable, or disable the entire hierarchy.

Asset Import: Improved the SpeedTree Importer to include importing Materials as sub-Assets, and allowing workflows using Material sub-Assets, similar to the ModelImporter.

Asset Import: Fixed inconsistency between the UI and the API when using some Model Importer properties.

Asset Import: Added UseSRGBMaterialColor option in the Model Importer for converting Material Albedo colors. ( 1033503 )

Asset Import: Added support for physical camera Gate Fit modes to ModelImporter importCameras property.

Apple TV: Enabled display of DCI-P3 color gamut for compatible tvOS devices.

Animation: Improved the behavior of an Animator. It no longer creates an empty output when the Animator does not have an AnimatorController assigned.

Animation: Improved root tansformation and root motion in the Animation system.

Animation: Improved memory reporting for some animation classes.

Animation: Improved animation performance by reducing animator polling for events.

Animation: Changed the width of the default StateMachine node so that all nodes align vertically.

Animation: Added IAnimationClipSource interface that lets MonoBehaviour components provide a list of clips to the Animation window.

Animation: Added shift-click and right-click context menus for adding properties in the Animation window.

Animation: Added Reset functionality to the Animation component. ( 994291 )

Animation: Added batched Animator Jobs to avoid scheduling overhead on large amounts of jobs.

Android: Updated to automatically populate the minimum and target Android API level dropboxes in the Editor.

Android: Updated the version of the Android NDK used by Unity on Android to r16b.

Android: Set JAVA_HOME to point to the JDK path set in Unity Editor. ( 961766 )

Android: Reduded the time it takes to load the Player on Android devices.

Android: Reduced the build time when building multiple APKs for different CPU architectures. This only affects the internal build system.

Android: Improved the performance of memory stats gathering when the profiler is enabled.

Android: Fixed an issue that prevented certain public classes in the Android extensions DLL from appearing in the Unity API reference docs.

Android: APKs are now packed by default using apkzlib. Added Use legacy SDK tools checkbox in player settings to force the use of AAPT and apkbuilder.

Android: Added Start in fullscreen mode checkbox option to player settings, resolution and presentation section. If disabled, app starts in non immersive mode and the navigation bar is shown. ( 977660 )

Android: Added WebCamTexture acceleration for Android 5.0 and later.

Android: Added support to pass the -d switch to adb install to allow version downgrade.

AI: It is now faster to unload a Scene that contains a large number of autogenerated OffMeshLinks.

2D: Added the Z Position Editor to the Tile Palette Brush Inspector to allow users to adjust the Z Position of Tiles painted by the Tile Palette Paint Brush. Keyboard shortcuts '-' and '=' can be used to adjust the Z Position value as well.

2D: Added support for custom axis sorting and Sorting Groups in SRP.

2D: Added an option in Sprite Editor to display a Sprite's pivot position in pixels, and to allow the pivot to snap pixels as it is dragged.

XR: Added event XR.XRDevice.deviceLoaded . Subscribe a delegate to this event to get notified when an XRDevice is successfully loaded.

XR: Added a method for retrieving the stereo rendering mode currently in use at runtime, via XRSettings.stereoRenderingMode .

Video: Added VideoPlayer.isPaused . Indicates whether the Player is in a paused state (rather than stopped or playing).

Video: Added VideoPlayer.clockTime , which indicates the time the Video Player follows to schedule its samples.

Video: Added to VideoPlayer: width , height , length , pixelAspectRatioNumerator , pixelAspectRatioDenominator , GetAudioSampleRate() . These provide access to the corresponding attributes for URL source in VideoPlayer.

Timeline: Made TrackAsset.CreatePlayable(PlayableGraph, GameObject, TimelineClip) virtual to match behaviour from 2018.1. ( 1096350 )

Timeline: Deprecated 'AnimationTrack.applyTrackOffsets' and added 'rootTransformOffsetMode' for specifying the new root offset properties.

Timeline: Added the Timeline.TimelineEditor.Refresh() method and the Timeline.RefreshReason enum for refreshing the Timeline window.

Terrain: Added Terrain.preserveTreePrototypeLayers , which allows you to specify how Unity chooses the layer for Tree instances.

Terrain: Added the BuiltinPaintMaterialPasses enum, which describes the built-in paint material passes, to TerrainPaintUtility .

Scripting: Exposed public API for the console log path.

Scripting: Added UnityEngine.Scripting.GarbageCollector API for enabling and disabling the garbage collector on Mono and IL2CPP scripting backends.

Scripting: Added the following diagnostic methods in UnityEngine.Diagnostics.Utils : ForceCrash , NativeAssert , NativerError , and NativeWarning .

Scripting: Added an optional exitCode parameter to Application.Quit .

Profiler: Exposed the Editor GUI Unity uses to connect to a player from the Profiler or Console windows. It's placed under UnityEditor.Experimental.Networking.PlayerConnection , where EditorGUIUtility.GetAttachToPlayerState(EditorWindow parentWindow) gets the connection state with which Unity can draw from using EditorGUILayout/EditorGUI.AttachToPlayerDropdown .

Profiler: Added Dispose functionality for the PackedMemorySnapshot class to prevent instances locking a snapshot file longer than necessary.

Prefabs: Added method PrefabUtility.HasPrefabInstanceAnyOverrides to quickly check if there's any override on a Prefab instance.

Player: Added AssetBundle.RecompressAssetBundleAsync API to re-compress downloaded AssetBundles from one compression methodology to another run-time supported compression methodology. Moved BuildCompression , CompressionLevel and CompressionType out of the UnityEditor.Experimental.Build.AssetBundle namespace and into UnityEngine .

Playables: Creating a Playable using new now creates a Null Playable.

Playables: Added PlayableDirector.ClearGenericBinding . Use this method to remove dependencies to unassigned Timeline tracks. ( 1058514 )

Playables: Added FrameData.effectivePlayState to pass the accumulated play state of the Playable. (1077846)

Physics: Added Physics2D.reuseCollisionCallbacks to control whether Unity re-uses the Collision instance passed to OnCollisionXXX2D calls.

Physics: Added Physics.reuseCollisionCallbacks to control whether Unity re-uses the Collision instance passed to OnCollisionXXX calls.

Physics: Added Collision.GetContacts(array) to retrieve all contacts.

Physics: Added Collision.contactCount to retrieve the number of contacts.

Package Manager: Exposed package keywords in the Package Manager C# API.

Mobile: Added the WebCamDevice.isAutoFocusPointSupported and WebCamTexture.autoFocusPoint custom focus point properties on both iOS and Android.

Mobile: Added the WebCamDevice.availableResolutions property to support retrieving the available device camera resolutions on Android and iOS.

Memory Profiler: Added UnityEditor.Profiling.Memory.Experimental.PackedMemorySnapshot.Convert to handle conversions from MemoryProfiler.PackedMemorySnapshot objects to UnityEditor.Profiling.Memory.Experimental.PackedMemorySnapshot files.

iOS: Removed iOS as supported platform for Application.Unload API.

iOS: Added GetAllBuildPhasesForTarget , GetBuildPhaseType and GetBuildPhaseName methods to the Xcode API.

iOS: Added AddShellScriptBuildPhase public method, plus InsertShellScriptBuildPhase and InsertCopyFileBuildPhase methods that accept an index parameter to the Xcode API.

iOS: Added support for Telephoto, Dual Back and True Depth cameras on iOS devices (new enum WebCamKind , new properties WebCamDevice.kind , WebCamDevice.depthCameraName , WebCamTexture.isDepth ).

iOS: Added methods to the Xcode API to allow script and copy file build phases to be added at a specific position. Also, exposed way to retrieve all defined build phases and their types.

IMGUI: Added TreeView.getNewSelectionOverride . Unity requres this override in order to support selection via clicking/keyboard while building only the visible rows.

Graphics: Removed obsolete iOS specific 'isReadable' property and 'MarkNonReadable' method from WebCamTexture .

Graphics: Exposed Texture.isReadable property, allowing you to check whether Unity can read Texture data at run time. Imported Textures are not readable by default.

Graphics: Added GateFitMode enum and gateFit properties to the Camera component.

GI: Added Terrain.deringLightProbesForTrees to enable/disable remove ringing from Light Probes attached to trees on a Terrain.

GI: Added LightProbeGroup.dering to enable/disable remove ringing from Light Probes in the group.

Editor: Text fields in the Editor now use KeyDown events that receive a KeyCode and KeyUp event when the user is entering text. If you have controls that draw after a text field that need to be aware of these events, you should test for them before drawing the text field.

Editor: Marked the old Prefabs API as obsolete, because it is not compatible with the new Prefabs feature set. It still works for now, but Unity displays warnings if you use it.

Editor: Made changes to EditorGUI.EnumPopup :

Editor: In UIElements , BaseControl is now BaseField .

Editor: Deprecated PlayerSettings.vulkanUseSWCommandBuffers . Unity now only uses SW CommandBuffers if GraphicsJobs are enabled and native Vulkan secondary command buffers are slow or have issues on some drivers. Otherwise, Unity now ignores this property.

Editor: Added VisualElement.SendEvent method to allow sending events to VisualElements.

Editor: Added SerializedProperty.DataEquals method that compares the raw data of two SerializedProperty .

Editor: Added Presets.DataEquals(UnityEngine.Object) that lets you compare the content of a Preset with the Serialization of any matching Object type, and determine whether applying the Preset would change the target object.

Editor: Added Preset.ApplyTo(Object, string[]) that applies the specified properties and their children to the target Object. If the array is empty it applies all properties.

Editor: Added EditorUtility.CopySerializedManagedFieldsOnly , which allows you to copy fields between any two managed objects using the Unity serializer.

Editor: Added new UIElements fields: BoundsIntField , RectIntField , Vector2IntField , Vector3IntField , Toggle . For the Toggle , the OnToggle() callback is now deprecated. User should use OnValueChanged() .

Editor: Added new fields to the ModelImporter Scripting API:

Editor: Added a SelectRange API to the UIElements text field.

Compute: Extended ComputeShader.SetTexture() and CommandBuffer.SetComputeTextureParam() APIs with the mipLevel parameter, which allows binding a MIP level of a read-write (unordered access) Texture to a compute shader. The mipLevel parameter is ignored unless the shader specifies a read-write (unordered access) texture.

Asset Pipeline: Deprecated the overload of AssetDatabase.TryGetGUIDAndLocalFileIdentifier with the parameter int localID , because it can return a localID that has overflowed (this can happen when called on GameObjects that are part of a Prefab). Instead, use the overload that uses a long data type for the localID parameter.

Asset Import: Added AssetImportContext.DependsOnSourceAsset to make it possible to report source dependencies during imports, in ScriptedImporters.

Asset Import: Added the AssetPostprocessor.OnPostprocessMeshHierarchy callback, which allows you to modify the imported hierarchy before importing the Avatar and animation clips. ( 1069175 )

Animation: Refined the experimental Anim C# Jobs API. Renamed and changed some fields in AnimationStream and AnimationHumanStream. For example, IsValid() is now isValid , GetBodyLocalPosition() is now bodyLocalPosition , and DoF is now Dof .

Animation: Moved GameObjectRecorder out of experimental.

Animation: Added PPtr support for Animator.BindStreamProperty and Animator.BindSceneProperty .

Animation: Added Animator.WriteDefaultValues that lets you force a write of the default values stored in the animator.

Animation: Added an additional parameter to GameObjectRecorder.SaveToClip() for specifying the FPS of the clip generated by the GameObjectRecorder.

Android: Removed the public API for setting the JVM Max heap size.

Android: Added Android API 28 (Pie) to the Unity scripting reference.

AI: Added UnityEditor.AI.NavMeshBuilder.CollectSourcesInStage() , which can handle the main and prefab stages separately.

AI: Added new experimental NavMeshQuery.Raycast() method, which you can in jobs. It returns the list of visited NavMesh nodes.

2D: Added Experimental.U2D.ISpriteEditor.SetPreviewTexture to set preview textures for SpriteEditorWindow. Importers that support ITextureDataProvider can also implement Experimental.U2D.ITextureDataProvider._previewTexture to set preview textures.

2D: Added a dialog box when the user selects a Tilemap which is a Prefab Instance, allowing the user to edit the Tilemap in Prefab Mode for improved performance. (966679)

2D: Aligned rotation direction of flipped Tiles when painting on a Tilemap. (1067941)

2D: All instantiated Tile GameObjects are now cleared when a Tilemap is reset.

2D: Changes in the Tile Palette are now saved when creating or importing an Asset. (1077382, 1084076)

2D: Fix crash when using Tilemap.SwapTile with a Null Tile. (1084072)

2D: Fix Sprite Editor border "T" and "B" fields assign their values to the wrong borders. (1086672, 1089720)

2D: Fix tiled animated Sprites glitch when iterating over frames. (1076834, 1089719)

2D: Fixed crash on 'crnlib::crn_comp::append_chunks' when packing a Sprite Atlas. (1058281)

2D: Fixed Editor crash when packing very large Sprites into a Sprite Atlas with the graphics API set to D3D11 or D3D12. (1030584)

2D: Fixed issue caused by late binding where the Sprite Renderer would render from the wrong Sprite Atlas with a duplicate name. (1046157)

2D: Fixed issue causing Tile Startup being called more than once during placement. (1046004)

2D: Fixed issue of repeated GetTransformInfoExpectUpToDate error messages when placing Tiles on Tilemap while using SRP. (1044224)

2D: Fixed issue of the Editor freezing changes were applied to prefabs ontaining child GameObjects with TilemapRenderer components. (1048857)

2D: Fixed issue of Tiles being flipped immediately by the 'Flip Y' shortcut when the Default Grid Brush is active. (1067964)

2D: Fixed issue where changes to the Sprite Atlas "Max Texture Size" and "Compression" settings were not being saved correctly. (1037553)

2D: Fixed issue where it was not possible to select or manipulate Sprites in Sprite Editor Window. (1044314)

2D: Fixed issue where it was not possible to tab between controls in Sprite Editor Window when in Sprite Frame Inspector. (1027063)

2D: Fixed issue where SpriteAtlas packed sprites were not rendered after calling SetPlatformSettings and `PackAtlases. (1040280)

2D: Fixed issue where Unity would crash during Sprite Atlas Packing. (1029266)

2D: Fixed issue where Unity would crash on MonoStringNew when entering Play Mode after a project was reopened with resources loaded. (1066715)

2D: Fixed issue with painting the Tilemap in the Scene view when rapidly switching between Editor windows. (1077694, 1084075)

2D: Fixed the culling of large Tiles by the TilemapRenderer at certain camera views. (1044578)

2D: Fixed the Sprite Atlas inspector to update immediately after calling SpriteAtlasExtensions.SetPlatformSetting . (1040282)

2D: Image components instantiated from a Prefab now correctly display valid Sprite data when triggering a Sprite Atlas request. (1038179)

2D: The "Invalid texture used for cursor" warning message is now displayed in the console when switching between the Tile Palette edit modes. (1051717)

2D: The Scene view Camera no longer focuses on the (0, 0, 0) position when a Tile Palette is selected while no Tile Palette Brush tool is active. (1069022)

2D: The Sprite index in a Sprite Atlas is no longer rearranged when switching to different Platform settings. (1019559)

2D: The Tilemap editing preview now clears when the user switches to another tab from Scene view. (1043365)

2D: The Tilemap painting preview now updates properly when panning the Scene view with the keyboard. (1077400, 1084073)

2D: Tile Palettes no longer spawn Prefabs from Tiles when entering Play Mode. (1057958)

AI: Added warning about creating or loading more than 65535 autogenerated OffMeshLinks in a static Scene NavMesh. (921228)

AI: NavMesh.Raycast() returns the correct normal when an outward ray starts on a NavMesh border. (925727)

AI: Removed assertion on expression verts.size() > 0 . (944759)

AI: Whenever CalculatePath() returns false the status of the output path will be PathInvalid. (874746)

Android: Added an a error message in Player Settings UI that displays the Android Adaptive icons are not set up correctly. (1064764)

Android: Added an implementation of the TouchScreenKeyboard.selection property for Android.

Android: Fixed an issue where Time.realTimeSinceStartup did not take the time spent while the device slept into account . The fix also improved reliabilityon older devices. (1037712)

Android: Fixed an issue that caused a JNI global reference table overflow crash when performing a lot of AndroidJavaProxy calls per frame. (1044728)

Android: Fixed an issue that caused graphical corruption when the screen resolution changed. (785610)

Android: Fixed an issue that occured when returning null from Java native code. (1062852)

Android: Fixed an issue that occured when switching from a scene that had an active WebCamTexture. (1059444)

Android: Fixed an issue that occurred when upgrading an ARM64 application that had been launched previously.. (1024014)

Android: Fixed an issue that triggered an ETC2 decompression assert when downscaling 1 pixel wide/height texture. (1030609)

Android: Fixed an issue wee IPostGenerateGradleAndroidProject.OnPostGenerateGradleAndroidProject returned an incorrect path when exporting a gradle project. (1049213)

Android: Fixed an issue where an application was not unloading correctly when the IL2CPP scripting backend was used. (989301)

Android: Fixed an issue where gradle builds failed when there were more than 250 files in the streamingAssets folder. (962451)

Android: Fixed an issue where Input.GetKey(KeyCode.Return) was not set to true when the return key was pressed on an external keyboard. (1007047)

Android: Fixed an issue where instancing was not working in some situations on Adreno GPUs. (1053324)

Android: Fixed an issue where terrain was not rendered on certain Mali devices on Vulkan. (1029328)

Android: Fixed an issue where textures are not displayed when Compress using ETC1(split alpha channel) was checked. (1067933)

Android: Fixed an issue where the DrawMeshInstancedIndirect method did not work on Android on Adreno and some Nvidia GPUs. (1008623)

Android: Fixed an issue where Input.GetMouseButton stayed true even when there was a touch interrupt. (1001675)

Android: Fixed an issue with AndroidJavaProxy callbacks that had primitive array arguments. (1036625)

Android: Fixed an issue with detectign OpenGL ES 3.1 + AEP.

Android: Fixed an issue with detecting a bluetooth speaker on application start. (1064409)

Android: Fixed and issuew ehere Auto or Never Blit modes casued a black screen on Android. (1052530)

Android: Fixed issue preventing Unity-generated Android manifests from being reused in an application. (1061304)

Android: Fixed shader compile errors caused by a precision mismatch on Mali 450 devices.

Android: Improved performance when repeatedly pausing/playing a WebCamTexture on Android. (917983)

Animation: Fix crash when changing/deleting an animation asset used in unbound playable graph. (1074214)

Animation: Fixed a crash in Play Mode when modifying a controller in a PlayableGraph. (991264)

Animation: Fixed a crash that occurred when exiting a game after adding an AnimationPlayableOutput , with no source Playable , to a PlayableGraph . (1056043)

Animation: Fixed a crash that was triggered when saving scenes. (1080024)

Animation: Fixed a crash when an invalid component type is used to create an AnimationStream handle. (1032369)

Animation: Fixed a crash when attempting to use a controller with a missing StateMachine reference. (1038352)

Animation: Fixed a crash when calling GetSource or SetSource on invalid constraints. (1044031)

Animation: Fixed a crash when deleting the Animation component. (1041327)

Animation: Fixed a crash when passing a null animator to AnimationPlayableUtilities . (1041877)

Animation: Fixed a crash when previewing a Prefab with an unnamed GameObject. (1026947)

Animation: Fixed a null reference exception that occurred when switching build platforms. (1024668)

Animation: Fixed an interface issue in the Animation window that caused input boxes to overlap when large numbers were entered. (1065467)

Animation: Fixed an issue getting velocity from input AnimationStreams. (1096208)

Animation: Fixed an issue that allowed a function with overloads to be assigned to an Animation Event. (1039852)

Animation: Fixed an issue with animating integers and enums in nested structs, in a MonoBehaviour. (1019123)

Animation: Fixed an issue with copying and pasting a multi-selection of sprites in the Animation window that caused frame delays. (1028025)

Animation: Fixed an issue with error messages being sent when zooming in too far while editing animation curves. (1064815)

Animation: Fixed an issue with MonoBehaviour recording when an object had many copies of the same component. (1063505)

Animation: Fixed an issue with root motion evaluation for humanoid characters that manually called animator.Update(0) . (1064826)

Animation: Fixed an issue with the Add Properties menu not matching the size of its content. (1056393)

Animation: Fixed an issue with the IK effector being overridden in animation jobs when calling skeleton methods. (1088067)

Animation: Fixed an issue with the wrong CurveModifiedType being sent by the onCurveWasModified callback when changing animation events in a clip. (1047683)

Animation: Fixed an issue with OnStateIK that was sent unexpectedly on all layers with IK pass on. (1064994)

Animation: Fixed ArgumentOutOfRangeException when selecting the "Any State" transition in the Animator window. (995684)

Animation: Fixed crash when requesting the bindings on a ScriptableObject. (1088673)

Animation: Fixed humanoid character preview in animation window when applyRootMotion is disabled. (1086313)

Animation: Fixed key animation issues affecting Animation clips with root motion, in the Animation window. (952189)

Animation: Fixed performance issues when dragging many keyframes, from multiple curves, in Dopesheet mode. (1032730)

Animation: Fixed the warning message that appear when changing the selection in the Animation window, during Play Mode. (1046665)

Animation: Fixed the Animator.CrossFade documentation.

Apple TV: Added Bluetooth remote controller support for tvOS. (1021795)

Asset Import: Apply/Revert can be used when a change is made in the selected ScriptedImporter settings. (1087775, 1099000)

Asset Import: Copying settings from an FBX to another FBX file using Presets does not break asset references anymore. (1031246)

Asset Import: Deactivating and reactivating standalone support on a PluginImporter now keeps the correct values in the Per-Platform Desktop settings. This fixes an issue whereby plugins were not copied to the Standalone Plugin folder when they were marked to be included in build. (983225)

Asset Import: Fixed an issue with the ScriptedImporter default inspector where you couldn't change the script inside the imported Project. (1040745)

Asset Import: Fixed an issue with the ScriptedImporter where it failed to re-import an Asset after renaming the ScriptableObjectClass. (1025425)

Asset Import: Fixed an issue with the ScriptedImporter where it failed to re-import an Asset after renaming the ScriptableObjectClass. (1056618)

Asset Import: Fixed an issue with the ScriptedImporter where it failed to re-import an Asset after renaming the ScriptableObjectClass. (1065609)

Asset Import: Fixed inability to choose anything other than "Auto" for the default Texture format in the TextureImporter. (955096)

Asset Import: Fixed issue with MonoBehaviours and ScriptableObjects not being recognized in .NET 4.x .dlls after changing the scripting runtime version from .NET 3.x to .NET 4.x. (1012922)

Asset Import: Fixed TextureImporter platform getter/setter to find the correct platform when using BuildTargetGroup enum names, as happens on other Importers. (678452)

Asset Import: Fixed the case of blendshapes animation tracks not being bound to blend shapes when BlendShapeChannel and targetShapes have no name in FBX. (1025917)

Asset Import: Fixed the case where the importer crashed during Material Asset preview while importing a package Asset. (987972)

Asset Import: Fixed the case where the ModelImporter would crash Unity when setting a null Avatar mask. (1066253)

Asset Import: Fixed the case where the scripted importers selection of the main Asset was not always applied correctly. (969107)

Asset Import: Fixed the Cubemap compressed Texture size calculations to pick the correct compression method. (1045716)

Asset Import: Fixed the Rig setup workflow in the Model Importer to enable setting up the Avatar using scripts and presets. (1060952)

Asset Import: Fixed wrong Texture colors when importing Assets using Sketchup tinted materials. (964166)

Asset Import: Using Reset in the Inspector on ScriptedImporter will revert values to users declaration in their script. (1098109, 1099001)

Asset Pipeline: Fix editor crashes under certain conditions when adding assets without .meta files before starting editor (1035960)

Asset Pipeline: Improved performance when importing assets and saving scenes, by caching all asset post-processor types.

Audio: Added better descriptive error message when streaming unsupported formats for the current platform and the URL doesn't contain meaningful information. (925882)

Audio: Fixed a potential hang when playing streamed sounds from WWW/UnityWebRequest . Fixed playback of partially downloaded sounds in certain cases. (1016705)

Audio: Fixed crash when unloading audio data in the same frame as an AudioSource started playing it. (1008302)

Audio: Fixed issue where imported audio clip size would include both Editor and Player compressed data on platforms where there are two representations. (961754)

Audio: Previously, AudioSource.minDistance could be set to be greater than the AudioSource.maxDistance via script, contrary to what is possible in the AudioSourceInspector. It is now clamped between 0 and maxDistance. (978664)

Build Pipeline: Fixed case of empty build folders being created in project directory after failed builds. (856971)

Build Pipeline: Fixed issue where EditorBuildSettings was not updated when a scene was moved or renamed. (1038666)

Build Pipeline: Fixed issue where scripts only build would fail when both il2cpp and code stripping were in use. (1063594)

DX12: ReadPixels behave differently on DX12 when the project is set to Linear color space (1043725, 1102279)

DX12: [DX12 Graphics Jobs] Player crash when switching scene (1089146, 1102281)

Editor: A snap indicator no longer appears when you try to connect two input ports on the same node in GraphView. (1002414)

Editor: Add Component doesn't accept New script name instead of "NewBehaviourScript". (1043229)

Editor: Added 1px interior stroke to color slider thumb to improve visibility against light background. (1058139)

Editor: Added a check at project initialization to verify that at least 256 MB is available, and emits a warning message in the Editor console if not. (840183)

Editor: Added check for assembly references before loading them in the editor. Fixes various issues with crash/errors when trying to load assemblies for which their references no longer exist or are incompatible with the editor. (996976, 1045480)

Editor: Asset names are no longer part of Preset serialization. (1044464)

Editor: AssetImporter presets now correctly ignore all properties that are excluded from meta files.

Editor: Backed out a change that made Unity Mac Editor render timer tick while menus and other modal popups were open (1027527, 1028213)

Editor: Color Picker tool is now cancelled when changing keyboard focus.

Editor: Disable scripting settings when editor is in play mode. (1092377)

Editor: Duplicate inspector window has disabled controls and user is notified that the duplicate window/tab won't be usable. (1080942)

Editor: Editor drawing is consistent between Linear and Gamma space projects on all machine types (Mac, Windows, Linux) and graphics APIs (D3D, Metal, OpenGL, Vulkan), including content drawn in Scene View and Game View. (1004112)

Editor: EditorApplication.Exit will now shut down the graphics device before exiting.

Editor: Excluded MonoImporter and MonoScript types from the Preset system. (1046041)

Editor: Fix "UI Elements View" Asset throws "Null Reference Exception" on de-selection (1036610)

Editor: Fix a NullReferenceException in the inspector window when handling none set scriptable object (1048653)

Editor: Fix adding curve keys in audio source inspector via context menu. (1085732)

Editor: Fix bad focus on ColorField from UIElement (1010002)

Editor: Fix command line license return issue (1048839)

Editor: Fix crash when creating brushes when texture is not present (cause is same as 1086739). (1086675)

Editor: Fix crash when creating brushes when texture is not present. (1086739)

Editor: Fix crash when loading additive scene containing corrupted GameObjects. (1056080)

Editor: Fix crash when several \ characters are entered into the new script name input field (1060241)

Editor: Fix for Terrain not being marked as modified after an auto-upgrade to new terrain layers occurs on load. (1081612)

Editor: Fix Gizmos.DrawFrustum rendering the near clip rectangle in an incorrect coordinate space. (1084268)

Editor: Fix issue with "Unable to find key name that matches 'right'" error when switch to .NET 4.x scripting runtime when Turkish locale is set. (1058961)

Editor: Fix issue with .js/.cs/.boo files getting compiled in "Assets/WebGLTemplates" and "Assets/StreamingAssets" folders. (1060319)

Editor: Fix issue with .pdbs getting deleted in Library/ScriptAssemblies after compiling .asmdefs on startup (1072529)

Editor: Fix issue with Animator preview not rendering grid in SRP. (1081798)

Editor: Fix locking the InspectorWindow to a ScriptableObject sometimes not surviving assembly reloads. (1035491)

Editor: Fix multi-edit of delayed numeric field when discarding changes (1021293)

Editor: Fix outline color changing between Gamma and Linear space projects. Guard the editor UI against GUI elements generating bad colors and NaNs. Screen captures from within the editor's Game View match the Player's results with regards to Canvas and IMGUI drawing. (1028386)

Editor: Fix player settings window becoming unusable due to bogus Android SDK setup. (1099225, 1100071)

Editor: Fix rendering of list view items in multiple places in audio mixer UI. (833537)

Editor: Fix to allow dropdowns to get keyboard focus by default on Linux.

Editor: Fix to set targetframeworkversion correctly for rider and vscode when running under the new 4.x runtime.

Editor: Fix undo for audio mixer group visibility toggle. (833534)

Editor: Fix undo for Solo/Mute/Bypass for multiple selected audio mixer groups. (718311)

Editor: Fix UnityException when calling EditorGUIUtility ObjectPicker methods from Custom Editor (1061966)

Editor: Fix VU-meter drawing in the mixer window during audio preview. (716214)

Editor: Fix warning when trying to select multiple elements with mouse capture. (1020813)

Editor: Fixed "Failed to copy lightmap snapshot" error after toggling Baked GI checkbox while baking is active. (985915)

Editor: Fixed "Open source code", "Open error" in external code editor for a test method from Test Runner window. (1029918)

Editor: Fixed "Unity extensions are not yet initialized" errors on startup when UWP is selected as as build target and Visual Studio is selected as external script editor. (1067917)

Editor: Fixed a bug in UIElements'ListView hiding some items when scrolling or showing partially hidden items

Editor: Fixed a bug when Multi Scene Editing is used and baked lightmaps are generated: 'ArgumentException: Invalid SceneManagerSetup' error is shown after generating lighting or reloading the scene. (1000397)

Editor: Fixed a crash when creating a Preset from PlayerSettings with VR devices specified. (1061747)

Editor: Fixed a crash when importing a SketchUp (.skp) file. (1004401)

Editor: Fixed a crash when switching Lightmap window tabs after opening project in the Developer Mode. (986844)

Editor: Fixed a problem where it was possible to open multiple Console windows while playing back a scene with the Game view maximized. (1021153)

Editor: Fixed a problem where Scene view got stuck if you held shift and changed directions while in Flythrough mode. (1018932)

Editor: Fixed a regression which caused some keyboard shortcuts to execute while typing in text fields. (1022730)

Editor: Fixed an assert caused when using a Light Probe Group as Anchor Override option in a Mesh Renderer. (1002580)

Editor: Fixed an issue that launching Unity via Hub invalidates existing login for direct launchers (1070443)

Editor: Fixed an issue that was causing problems in the Animation Window in systems whose language is set to one that uses a character other than '.' for decimal separation. (1065595)

Editor: Fixed an issue where Menu.SetChecked would not update items in the Context menu popup (948616)

Editor: Fixed an issue where reverting to default layout could not be canceled (1069203)

Editor: Fixed an issue where tests marked at not runable would not have their result included in test report. (1094435, 1099189)

Editor: Fixed an issue where the original scene would not be reopened after the player had started running PlayMode tests.

Editor: Fixed an where clicking a menu item crashed the Editor on certain hardware. (1033991)

Editor: Fixed Assembly Updater crashing if UWP NuGet packages were never restored on current machine and there is a UWP class library in the project. (934962)

Editor: Fixed broken Animation panel in the Model Importer when a custom AnimationClipEditor is used. (1055621)

Editor: Fixed bug on Windows where pressing F to frame the selected object in the Scene View would actually execute Edit -> Lock View to Selected (1070698)

Editor: Fixed bug where color with max RGB component of 1 was decomposed in color picker as if it were an HDR color with exposure. (1057610)

Editor: Fixed bug where control for LayerMask SerializedProperty would change value for all selected objects without user interaction. (1061635)

Editor: Fixed bug where opening the native color picker on macOS would immediately change a color field's value to the most recent color selected. (1051179)

Editor: Fixed case of "Callback registration failed kMaxCallback" error (873467)

Editor: Fixed case of "GetPixels32 failed" when painting terrain with a texture that has DXT crunched format. (861457)

Editor: Fixed case of backspace adding a 0 character in compound fields in UIElements. (1049281)

Editor: Fixed case of clipped rendering of audioclip waveforms in the project view at small window size. (964935)

Editor: Fixed case of content inside a FadeGroup being clipped if horizontal position was less than 0. (1046315)

Editor: Fixed case of misplaced tooltips. (1040256)

Editor: Fixed case of null exceptions when calling various handle methods in OnGUI outside of the scene view. (1073359)

Editor: Fixed case of Shift+Space not maximizing moused-over windows. (1044785)

Editor: Fixed case of Alt + Shift + opening the main menu instead of executing a defined shortcut. (1073352)

Editor: Fixed case of Handles.DotCapHandle not respecting the zTest value. (1048024)

Editor: Fixed case where arrow keys would not be released on MouseUp in Scene View. (1056475)

Editor: Fixed crash when using shader for which all subprograms failed to compile (1047382)

Editor: Fixed Editor instability issues relating to closing a RestService connection. (977837, 1004629)

Editor: Fixed exception being thrown when a callback was registered with Editor.finishedDefaultHeaderGUI and an Editor's header was drawn via Editor.DrawHeader() when there was GUI state on the internal stack (e.g., change checks, disabled groups), as in the ModelImporter's Animation tab (1070848)

Editor: Fixed FadeGroup not being present as a GUI element when fade property was 0 (minimized) or 1 (fully expanded). Now FadeGroup is always present and EndFadeGroup should always be called. (773350)

Editor: Fixed hang/crash when importing for Metal Compute Shader with compiler errors. (1056605)

Editor: Fixed incorrect font in the inspector for ParticleSystem CustomData module

Editor: Fixed issue on macOS where pressing Shift+Tab did not navigate backwards through properties in the inspector. (1065620)

Editor: Fixed issue on macOS where the Gradient Editor closed when selecting the color picker tool. (1059666)

Editor: Fixed issue that caused packages to not import when editor did not have focus (1001106)

Editor: Fixed issue where a scene asset would be visible in the object selection window for a UnityEvent callback. (788849)

Editor: Fixed issue where attempting to switch to an invalid camera mode caused the Scene view Draw Mode menu to stop updating. (1033951)

Editor: Fixed issue where Game Object preview would change after switching scene. (1038538)

Editor: Fixed issue where layout with invalid characters (OS-specific) in their names could not be saved. (1025369)

Editor: Fixed issue where the "Invalid memory pointer detected" error message spammed the Editor log when many objects were selected. (1060229)

Editor: Fixed issue where values of a component weren't reset when right-clicking the gear icon on the component. (1068828)

Editor: Fixed issue whereby 'Create Empty Child' menu item logged an error in the console when a prefab was selected in the project browser. (1056130)

Editor: Fixed issue whereby the Version field was in the wrong place in Player Settings. (898100)

Editor: Fixed issue with script compilation triggering at random times during synchronous import of scripts, which could cause erroneous compilation errors to be emitted to Editor.log. (1028797)

Editor: Fixed losing alpha occasionally when using ETC2 RGBA (1060866)

Editor: Fixed Metal Editor performance regression when running on macOS Mojave with Metal API Validation checkbox enabled. (1074400)

Editor: Fixed mip slider not showing handle (1068861)

Editor: Fixed NullReferenceException when pressing SHIFT + space on a non-window element. (1073352)

Editor: Fixed ParticleSystem noise and sub emitter module fields becoming squashed and unreadable when the Editor was narrow. We now go to multi-line. (1053112)

Editor: Fixed problem of GUI text width not calculating correctly when GUIStyle had Word Wrap enabled. (1047812)

Editor: Fixed problem where zooming with the mouse outside of the Scene view caused a "Screen position out of view frustum" error. (983757)

Editor: Fixed Render alignment field being disabled when shape module is disabled but align to direction is ticked. (1056027)

Editor: Fixed search starting after each character typed in Project View and Hierarchy/Scene View by introducing a small typing delay. (1048493)

Editor: Fixed starting a process in a test no longer causes an IOException when reading the standard output. (1049597)

Editor: Fixed text bluriness on high-dpi with non-integer scale ratios. (1025083)

Editor: Fixed the editor playmode tint when using UIElements. (1018617)

Editor: Fixed the issue where the short keys show error message while entering the same shortcut key for the action. (1094364)

Editor: GUIStyle constructor: improved robustness. (1081081)

Editor: Implement Undo for audio mixer snapshot renaming. (833536)

Editor: Improve native stack trace generation on linux

Editor: ModelImporter now has ability to import blend shape normals from FBX SDK. (578865)

Editor: PlayMode and EditMode tests now stop all execution of tests if any of the PrebuildSetup steps throws an exception.

Editor: Prevent duplicate audio mixer snapshot names. (722077)

Editor: Removed animated scroll in the Hierarchy when navigating by keys. The selected new item would not be visible on key repeat when reaching scroll edges. (986238)

Editor: Removed spurious/erroneous * character from "Scripting Define Symbols" in PlayerSettings. (978843)

Editor: Removed superfluous "(64bit)" from window title.

Editor: Removed the enforced collider height when creating primitive in the Editor so it can be overridden using default Presets. (1098981)

Editor: Running tests from the Test Runner window will not override any unsaved changes to the currently open scene (1024480)

Editor: Switched FSBTool to 64 bit on macOS and Windows.

Editor: Test Runner: PrebuildSetupAttribute can find types in arbitrary assemblies (used to be a hard coded list of Unity specific assemblies) (1033694)

Editor: Test Runner: PrebuildSetupAttribute can find types in arbitrary assemblies (used to be a hard coded list of Unity specific assemblies) (1033694)

Editor: The first phase of event propagation, formerly named Capture , has been renamed TrickleDown . API has been updated accordingly. MouseCaptureController function names have been simplified. This includes a few extension methods on IEventHandler .

Editor: The PresetManager dropdown on each default preset line is now updated correctly when Presets are deleted/added in a project. (1070684)

Editor: The Unity selection stays sorted no matter the object instanceIDs.

Editor: UIElements: dispatch mouse enter/leave, mouse over/out, drag enter/leave events even when mouse is captured (960336)

Editor: Unity Editor will no longer automatically unlock assembly reload (960397)

Editor: We no longer reimport the Reflection Probe cubemaps if the user selects the same Lightmap Encoding setting (1067156)

Editor: We now show UIElements contextual menu on CTRL- on OSX. (1003067)

Facebook: Fix for Facebook platform support is not detected by the editor (1046782)

Facebook: Fix issue that caused Windows standalone build issues if Facebook is also installed (984001)

GI: Clarify the functionality of Mobile Bumped Specular (1 Directional Light) shader (1001712)

GI: Fix Anti-aliasing Samples value change from Lightmap Parameters not being taken into account after a lightmap bake. (1006916)

GI: Fix crash when switching scenes with GI particle lights enabled (1068896)

GI: Fix NullReferenceException on Play Mode with Lighting window open. (1052763)

GI: Fix the output color for HDR lightmap textures in Gamma Space. (1035068)

GI: Fixed "Runtime Texture job failed with error code: 2" error after switching scene visualization mode to Indirect or Emissive. (997954)

GI: Fixed a hash collision for identical meshes in two or more additively loaded scenes. (974240)

GI: Fixed issue where Baked Albedo and Baked Emissive lightmaps are not shown in the lightmap Preview window after baking GI (1081811)

GI: Fixed issue where changing the subtractive colour resets the environment lighting settings. (1046191)

GI: Fixed issue where some buttons didn't scale correctly in the Lighting Settings window (1050860)

GI: Fixed issue where the user defined width of columns in the Lighting Explorer didn't reset if a new extenstion was loaded.

GI: Fixed issue with Disc light is not affecting light probes in CPU Progressive Lightmapper. (1067071)

GI: Fixed so that it is possible to view the realtime lightmap for terrain (980695)

GI: Fixed so that objects maps are no longer renderered upside down (905014)

GI: Make LightmapSettingsManager::CheckSettingsConsistency less verbose. Only report diffs for scenes where GI is enabled.

GI: Support AO for direct only baking in Progressive Lightmapper. (1010881)

GI: Warnings are no longer seen when ambient background differs between multiple scenes that were loaded together. (1031433)

Graphics: Add possibility to remove ReflectionProbe gizmo for other render pipelines. (1064410)

Graphics: Added CommandBuffer.ResolveAntiAliasedSurface to SRP

Graphics: Enable to hide light gizmo for SRP

Graphics: Expose Reset functions or Light, Camera and ReflectionProbe for high definition render pipeline workflow. (1016209)

Graphics: Fix cases where LineRenderer could be missing/corrupted when using Local Space mode. (881119)

Graphics: Fix crash when baking Local Space Line Renderer. (1066465)

Graphics: Fix disc area light handle wrong placement (1058259)

Graphics: Fix flipped normals on Local Space Line Renderers. (1038136)

Graphics: Fix for main thread stall deleting temporary render targets after calling ConvertTexture() from script. (1075850)

Graphics: Fix for shadow rendering when using DrawMeshInstancedIndirect . (1044712)

Graphics: Fixed a crash when LoadImage is called on a null texture. (1064955)

Graphics: Fixed a race condition in the shadow culling code, which could crash Editor. (1062032)

Graphics: Fixed a resource leak issue with SRP BlendState when using with Graphics Jobs

Graphics: Fixed a shader compilation error related to UNITY_SHADOW_COORDS macro. (978069)

Graphics: Fixed an issues where using a SkinnedMeshRenderer and the job system could cause Unity to crash when switching from Play to Edit mode. (1064582)

Graphics: Fixed BGRA8 format with sparse texture on DX11. (1042465)

Graphics: Fixed binding a 2D Texture with a depthSlice of -1 on DX11 failing.

Graphics: Fixed case of pink error shader not being replaced by the updated shader after making edits to a shader include file. (1012881)

Graphics: Fixed case of supersampled screenshots being blurry. (1059733)

Graphics: Fixed certain shaders crahsing on Vulkan.

Graphics: Fixed crash due to memcpy'ing overlapped memory.

Graphics: Fixed crash in Texture2D.PackTextures when using textures with zero extents (1051229)

Graphics: Fixed crash on Metal in CopyTexture due to specifying more slices than there is data (1054356)

Graphics: Fixed crash when asynchronously uploading NPOT textures when they are not supported (1027911)

Graphics: Fixed getting a temporary, multi-sampled depth texture in SRP, so it no longer yields a warning about the destination texture being NULL. (1014408)

Graphics: Fixed Graphics.DrawMeshInstancedIndirect not supporting 32-bit indices on OpenGL

Graphics: Fixed issue where the build player would occasionally use a wrong shader pass.

Graphics: Fixed issue where the capsule collider height was incorrect when imported from a SpeedTree Asset. (1051448)

Graphics: Fixed point sampled on batchmode with -nographics . (1064071)

Graphics: Fixed rendering errors (ghost of objects) in Material Validation Draw mode. (1031995)

Graphics: Fixed shaders failing to compile when using explicit sample IDs on OpenGL ES. (1078109)

Graphics: Fixed SRP Batcher crashing on Win7 + SP1 (Book of the Dead). (1067685)

Graphics: Fixed SRP-Batcher resource leak (1053627)

Graphics: Fixed the deprecated TextureFormat throwing errors at random. (1045495)

Graphics: Fixed the ETC Texture Compressor dropdown options "Fast", "Normal", "Best". (1050954)

Graphics: Fixed the JobTempAlloc warning message in SRP. (1033301)

Graphics: Fixed the submission of non-instanced property arrays using DrawMeshInstanced . (1010738)

Graphics: Fixed the VFACE variable being incorrect in shaders when rendered from a Reflection Probe. (1027670)

Graphics: Fixed unintended interaction between special input processing and date changes. (1061535)

Graphics: Fixed various graphics bugs for when the SRP Batcher is ON in Sample Game, Fontainebleau and BOTD demos. (1036664)

Graphics: Fixed WebcamTexture rendering with artifacts (grain & noise) when color space is set to Linear (1019984)

Graphics: Fixed AddCommandBuffer , AddCommandBufferAsync , and RemoveCommandBuffer , so calling them no longer allocates GC memory. (1064900)

Graphics: Fixed RenderPipelineManager.CleanupRenderPipeline() , so it no longer allocates GC memory each frame. (1054358)

Graphics: Fixes a memory leak which can occur during job based rendering. (1090901)

Graphics: Metal: Initial support for using MTLHeap. Fixes Tessellation performance regression when running on macOS Mojave. (1074413)

Graphics: Metal: Optimized CPU overhead with constant buffer updates when using SRP based render pipelines. (1052354)

Graphics: Rendering command buffers: Fixed using temporary render targets as UAV targets. (1033216)

Graphics: Shaders/Compute: New #pragma disable_fastmath to enable precise IEEE 754 rules for NaN handling on select target platforms (like Metal).

Graphics: Texture2DArray and Texture3D now check if the filtering mode is supported by the GPU and downgrade when necessary. (963073)

IL2CPP: Adding missing support for System.IO.Directory.GetLogicalDrives() on Windows desktop. (1057411)

IL2CPP: Corrected a race condition in the Monitor implementation that could trigger an assert when compiled in debug. (976185)

IL2CPP: Fix to allowing IL2CPP to function correctly in cases where a generic virtual method is called via reflection using MakeGenericMethod() . (1053267)

IL2CPP: Fix to enable primitive value type sharing by default in order to reduce build time significantly for some projects. (1029611)

iOS: Added "Disable Depth and Stencil" support for Metal. (921435)

iOS: Added Input class support for bluetooth keyboard on iOS and tvOS. (904052)

iOS: Added UI navigation support for bluetooth keyboard on IOS and tvOS. (1051178)

iOS: Added way to specify the order when adding new copy file and build script phases to the Xcode project. (978996)

iOS: Enabled Texture2D.SetPixels to work with BGRA. (1037570)

iOS: Fixed alignment calculation for Metal struct members. (1031768)

iOS: Fixed broken "Hide Mobile Input" input field option. (1044120)

iOS: Fixed case of iOS splash images being shown incorrectly on iPhone 5 and iPhone 6. (1053233)

iOS: Fixed crash caused by crash when reading shaders from AssetBundles built before 2017.3. (1038178)

iOS: Fixed crash on launch when using launch screen storyboards. (1023109)

iOS: Fixed crash when command line arguments passed to Unity initialization function are NULL .

iOS: Fixed device model detection on simulator. (1033270)

iOS: Fixed error message for lost connection on iOS. (1071825)

iOS: Fixed incorrect "Success" message when build fails during post processing stage. (1057069)

iOS: Fixed iOS 8 render texture crash. (1027704)

iOS: Fixed iOS build failure when the bundle ID doesn't include a dot. (1053292)

iOS: Fixed issue preventing entitlements files from being updated when appending a build. (1064795)

iOS: Fixed splash screen transition to first scene. (1071087)

iOS: Fixed values not updating when multiple iOS PlayerSettings inspectors are open. (971213)

iOS: Fixed wrong Vuforia plugin path on Windows for iOS build target. (1010209)

iOS: Fixed Font.GetOSInstalledFontNames being incorrectly populated in some circumstances. (1017006)

iOS: Fixed Screen.safeArea returning a bigger view frustrum than Screen.width and Screen.height in zoomed display mode. (1027960)

iOS: New input system: Input event timestamps are now relative to input system timestamps.

iOS: New input system: Input events from stylus are now forwarded to Pen input device, where previously they were coming as touches.

iOS: New Input System: Pen pressure is now a normalized value.

iOS: Removed ability to manually change iPhone X orientation to upside-down portrait as it's not supported by device. (1064081)

iOS: Removed option to build for Apple TV or iOS Simulator when Metal is the only selected graphics API (as Simulator does not support Metal). (1064041)

iOS: We now recalculate iOS keyboard input field constraints before showing the keyboard; previously they were calculated after the keyboard had already been displayed. (1040620)

iOS: When launching iOS tests with Unity Test Runner, Xcode will now always be used to build and run the app. Additionally, to improve reliability the iOS app will now connect to the Editor rather than Editor connecting to the app. (1041492)

Kernel: Added functionality to detect if your application runs out of instance IDs. The system now logs an error message and forces the application to quit. This is a very unlikely scenario. (967306)

Kernel: Fixed an issue where the Editor crashes when you open a Unity Project that contains components with missing GameObjects. Unity now contains them as recovery GameObjects. (907367)

Kernel: Reduced the base memory Unity uses on devices with low amount of memory. (1025415)

Kernel: SerializedProperty.arraySize now returns the smallest value when you select multiple objects. (1035438)

Kernel: UnsafeUtility.Malloc() now throws ArgumentException when you enable collection checks and are using an unsupported allocator. This fixes the crash when creating a NativeArray from a managed thread using an unsupported allocator. (1088897)

Linux: Fixed crash when changing layouts in the Editor. (1015932)

Linux: Fixed graphics driver crash when the Editor shut down. (1075655)

Linux: Fixed issue that caused input in free aspect ratio menu not to work. (1058356)

Linux: Fixed issue that caused input to not work in the new library menu. (1061546)

Linux: Fixed issue that caused the garbage collector to not run when Go code was linked. (1087371)

Linux: Fixed issue that caused tooltips to not appear / disappear correctly. (898148)

Linux: Fixed issue that prevented the Editor and Player responding to CTRL-C. (1064193)

Linux: Fixed issue where function keys generated characters in a text box. (1057122)

Linux: Made the low resolution aspect ratio checkbox appear properly in the Editor. (1058359)

Linux: Removed the Editor's dependency on libpq5, which prevented startup on some systems without this package installed.

Linux: Stopped keyboard input buffering at low framerates. (1049679)

Mobile: Fixed an issue with the WebCamTexture.requestedFPS property not being set propely on both iOS and Android. (924874)

Networking: Fixed case of NetworkDiscovery initializing broadcast even without an internet connection present. (905045)

OSX: Cursor no longer continues to lock during playmode on CMD+Q in the Editor. (1006813)

OSX: Fix an issue where MacOS player would not go into correct screen mode when Command+F is pressed. (1041458)

OSX: Fix for empty "plaftormName" property when serializing BuildReport using EditorJsonUtility on macOS. (1034097)

OSX: Fix incorrect CPU type when importing an old project containing a 64 bit native plugin. (792880)

OSX: Fixed an issue with using the Apple Magic Mouse to scroll horizontally in the Timeline window. (1030957)

OSX: Fixed case of debug symbols not being stripped from non-dev Mac Standalone builds. (1027391)

OSX: Fixed case of IL2CPP build for macOS containing mono binaries. (1045735)

OSX: Fixed dropdown menu appearing out of place on secondary Retina display on Mac (966636)

OSX: Fixed Editor crash on clicking MenuItem during recompile after renaming it in script (996485)

OSX: Fixed game stops running in background on Mac (925911)

OSX: Fixed issue where pressing Command+F to go into fullscreen mode would enter the wrong mode on MacOS (1066340)

OSX: Fixed OnApplicationFocus() not being called upon entering Play Mode (1075100)

OSX: Fixed Screen.currentResolution to report desktop resolution in windowed mode to match the behavior for other platforms. (982205)

Package Manager: A "Failed to fetch versions information" error would be displayed in Package Manager window for all unknown packages.

Package Manager: Fix incompatible packages showing up in the list of packages to install. (1066979)

Package Manager: Fix Package Manager timeouts when opening a project inside a closed network. (1023056)

Package Manager: Fixed a discrepency between the versions displayed in the "All" and "Details" tabs in the Package Manager UI. (1046915)

Package Manager: Fixed an issue where Package Manager UI failed to refresh after adding or removing packages. (1064839)

Package Manager: Fixed an issue where Unity failed to detect that it needed to update the manifest for Projects downloaded from Collab. (1058377)

Package Manager: Fixed an issue where users couldn't select game Aset folders by searching (two column layout) when the search location filter was set to "Packages" or "Assets". (1050945)

Package Manager: Fixed issue with Unity crashing due to unescaped literal in pathname.

Package Manager: Fixed the cases where calling PackageManager.Client.Remove with an empty string would remove all packages from the Project.

Package Manager: Fixed the cases where Projects created from a template would have the wrong version in the ProjectVersion.txt file. (1028321)

Package Manager: Fixed the failure of EditorGUIUtility.PingObject() when the Packages folder was collapsed in the Project view (single column). (1049204)

Package Manager: Fixed the issue where opening the Package Manager caused a lot of "Failed to change file flags" error messages on built-in packages. (1013876)

Package Manager: Fixed the issue where the Package Manager UI would report an error when adding or removing a package. (1030371)

Package Manager: Fixed the issue with the Editor hanging after an error caused Unity to exit prematurely. (1021955)

Particles: Added error message when trying to play a Particle System that has not been instantiated (such as a Prefab). (1063358)

Particles: Added error message when trying to use a statically batched mesh in the Particle System. (1075564, 1084252)

Particles: Added support for Editor mouse selection and for selection outline to GPU Instanced mesh particles in the Particle Standard Shaders. (1065606)

Particles: Fix cases of erroneous "Sub-emitters must be children of the system that spawns them" message. (1042951)

Particles: Fix corruption when dragging instanced particle shader onto GameObject in the Editor Hierarchy view. (1036146)

Particles: Fix crash when exiting Play Mode in SyncSimulationJobs function. (1027032)

Particles: Fix Min/Max Particle Size when using Transform Scale. (1054249)

Particles: Fix sub-frame positioning of particles when Simulation Speed is not 1.0 (1040962)

Particles: Fix to allow GPU Instancing and Dynamic Batching to work together (shared material setup, plus GPU Instancing for the geoemtry submission).

Particles: Fix to ensure that no particle jobs are running when baking meshes. (1033341)

Particles: Fix to prevent a memory leak when the simulation speed is 0 and using a skinned mesh renderer shape. (1028462)

Particles: Fix to prevent divide-by-zero when using a Radial velocity value of 0 in the Velocity over Lifetime module. (1049634)

Particles: Fixed a crash when setting emission rate to infinity. (1093352)

Particles: Fixed case of excessive memory usage when using many different combinations of Custom Vertex Streams in Particle Systems. (968957)

Particles: Fixed case of MaterialPropertyBlocks not being applied to particle trails. (1059140)

Particles: Fixed crash in Ring Buffer mode when max particles was set to 0 during playback. (1080066)

Particles: Fixed crash when sprite atlas is not included in build. (1032743)

Particles: Fixed flipbook shadows in the Standard Particle Shaders. (1080457)

Particles: Fixed occasional emission glitch when using prewarm. (1064065)

Particles: Fixed Particle sorting when using an orthographic camera with negative near clipping plane when using sort by distance. (1056469, 1084256)

Particles: Improve detection of 3D rotation/size when being set via script. (1053569)

Particles: Inverted how spherical wind zones affect Particle Systems, to fix inconsistency between particles and trees. (1053956, 1084259)

Particles: Multi-selecting billboard and mesh particles no longer hide the particle material slot in the inspector. (1077827, 1084251)

Particles: Particle start speed now uses sub-frame time to distribute values correctly when using Curve modes. (1063952, 1084258)

Particles: Particle system bounds are now correct when particles use meshes with a large offset pivot in the model data. (1090863)

Particles: Particle System bounds no longer ignore Shape Y scale when using Rectangle emission shape. (1064275, 1084257)

Particles: Particles with the Render alignment set to "Facing" no longer billboard incorrectly with directional lights. (1072493, 1084254)

Particles: Setting the scale of a GameObject now adjusts the Pivot value of a StretchedBillboard Particle System. (1068381, 1084255)

Particles: Sub Emitter particles now randomize when using Auto Random Seed. (1068735, 1084248)

Particles: When using uniform size, we now take the largest mesh extent axis for the bounds. (1036716)

Physics: Fix a performance regression when using Continuous collision detection on kinematic bodies (1025263)

Physics: Fix crash in "Rigidbody::WakeUp" after clicking Revert prefab on a corrupted prefab. (1064548)

Physics: Fixed "Joint2D::FetchBodyA" crash when loading a corrupted scene. (1047322)

Physics: Fixed a crash that could occur when adding a large number of colliders to a GameObject. (936552)

Physics: Fixed a crash that could occur when setting a mesh collider with more than 256 vertices to be convex. (1011144)

Physics: Fixed a crash triggered by changing cook option on a deactivated mesh collider. (1054444)

Physics: Fixed an issue where RaycastCommand would yield a wrong result if input ray direction was not normialized. (1035922)

Physics: Fixed broken physics debug rendering for Terrain. (1010130)

Physics: Fixed case of errors being thrown when calling Physics.RebuildBroadphaseRegions after changing the value of subdivision . (1036215)

Physics: Fixed case of errors being thrown when calling Physics.RebuildBroadphaseRegions with a negative value for worldExtends . (1036208)

Physics: Fixed crash during polygon decomposition for PolygonCollider2D. (1031811)

Physics: Fixed issue where a Rigidbody2D would sleep intermittently, even with a force being applied. (1044705)

Physics: Fixed issue where non alloc version of physics querie return result with null members. (1024195)

Physics: Fixed issue where two mesh colliders could pass through each other at certain angles on iOS. (870924)

Physics: Fixed issues where triggers positions were not updated after reparenting. (1033404)

Physics: Fixed outdated wording in error message. (1038589)

Physics: Fixed RaycastHit.textureCoord performance issue, was internally copying whole mesh index buffer for no good reason (1065218)

Physics: Improved performance when removing triggers. (775539)

Physics: Restored the missing "Use Virtual Particles" checkbox for Cloth. (973685)

Physics: Sprites can now be dragged onto the PolygonCollider2D. (1084839)

Physics: Stopped Rigidbody2D/Collider2D Inspectors from producing console spam.

Physics: We now disable the "Edit Joint Angular Limits" button when joints' GameObjects are deactivated. This prevents a crash in PhysX. (993659)

Physics: WheelCollider.GetGroundHit no longer causes a crash at Scripting::ScriptingWrapperFor if WheelCollider is null (1030966)

Physics: [Physics] Children rigidbodies are affected by the motion of parent rigidbodies (1019745)

Player: Exclude splashscreen creation time from it's display time (841776)

Player: Fix: Cursor resumes locked state after ALT+TAB (Command + Alt). (1047005)

Player: Fixed issue where mouse events from input would be received on multiple camera viewports. (1027837)

Player: Reduced memory footprint for custom UnityEvents in the Player. (833543)

Plugins: Add Rendering.CommandBuffer.IssuePluginCustomTextureUpdate version V2 supporting console platforms (Nintendo Switch)

Plugins: Fix a crash when trying to select dependencies in a plugin or export plugin as a package. (1079147)

Prefabs: Ensure Prefab sorting is stable across multiple saves. (1098561)

Profiler: Fixed case of Profiler.EndSample() markers added to scripts not being passed to platform profilers. (1033249)

Profiler: Fixed issue where Unity would display the wrong coroutine name in Profiler. (1033280)

Profiler: Fixed Profiler not updating when gfx jobs are enabled (1032760)

Profiler: Fixed zero CPU time in the last frame in Profiler Window.

Profiler: Increased minimum memory usage for Profiler to 4MB in the Player and 64MB in the Editor.

ps4: Fixed PSVR trees when Unity transitions them to billboards. (1071429)

SceneManager: Ensure the DontDestroyOnLoad scene cannot be set as the ActiveScene. Using SetActiveScene with this scene will now throw an exception. (1066638)

SceneManager: Fixed crash when loading a scene with Game Objects containing components belonging to modules that have been stripped by disabling their builtin package. (1059564)

Scriptable Build Pipeline: Fixed an issue where Unity was stripping precompiled assembly serialized data in the Scriptable Build Pipeline. (1049537)

Scripting: Added an exception, rather than aborting, when an incomplete PInvoke method is specified. (1032601)

Scripting: Added Visual Studio Project regeneration when enabled built-in packages have changed. (1030664)

Scripting: Fixed a problem that would cause the Editor to crash when PersistentManager::ReadObject accessed the Unity Scripting API within AppDomain.CurrentDomain.DomainUnload . (964296)

Scripting: Fixed a problem that would cause the Editor with a custom theme to crash when closing with WinScreenSetup::SetWindow . (1025186)

Scripting: Fixed a problem that would cause Unity installations using dynamic library assets to crash when exiting. (1017841)

Scripting: Fixed a problem that would cause Unity installations using the PanicButton extension to crash when exiting. (1008226)

Scripting: Fixed a problem that would cause Unity to crash on shutdown when calling JobHandle.Complete or scheduling jobs during OnDisable . (1044003)

Scripting: Fixed a problem that would cause Unity to crash when accessing Transform during BeforeSceneLoad callbacks. (1069988, 1100709)

Scripting: Fixed a problem that would cause Unity to crash when supported messages had parameters with ref or out keywords in the C# script. Unity supported messages are: OnCollisionEnter

OnCollisionExit

OnCollisionStay

OnTriggerEnter

OnTriggerExit

OnTriggerStay

OnJointBreak

OnCollisionEnter2D

OnCollisionExit2D

OnCollisionStay2D

OnTriggerEnter2D

OnTriggerExit2D

OnTriggerStay2D

OnJointBreak2D

OnControllerColliderHit

OnParticleCollision

OnTerrainChanged

OnApplicationPause

OnApplicationFocus (968454)

Scripting: Fixed a problem that would crash Unity upon exiting if the user forgot to save the current Scene beforehand. (963834)

Scripting: Fixed a problem that would report 'Error in CSharpNamespaceParser` when Unity imported C# scripts containing trailing whitespaces. (1056395)

Scripting: Fixed a problem where Unity would crash while shutting down in Standalone Players when using the scriptable PlayerLoop . (1030187)

Scripting: Fixed a problem where Unity would fail to report an incorrect method signature error for DidReloadScript . (1021423)

Scripting: Fixed a problem with the WaitForSecondsRealtime method, so it is now reusable and lets users avoid GC issues. Exposed the waitTime property of WaitForSecondsRealtime allowing for the modification of yield time after creation. (1058067)

Scripting: Fixed a problem with Scripting Runtime Version not updating when modifying the ProjectSettings.asset file from an external tool such as version control, overwriting the file, etc. (1010811)

Scripting: Fixed a problem with PersistentManager::ReadObject that would crash when exiting Unity installations using the VSCode plugin. (946976)

Scripting: Fixed an issue where Unity would not report static members to the MemorySnapshot API, such as generic classes with an array type argument. (984330, 1101141)

Scripting: Fixed issue where Unity would be unable to find the assembly reference for UnityEditor.iOS.Xcode while in batch mode for iOS. (1018716, 1087294)

Scripting: Fixed issue where Unity would lose references to missing assets in arrays and lists. (1085374)

Scripting: Fixed issue where Unity would use incorrect scripting backend and profile #define directives when building scripts in the Editor. (1075345)

Scripting: Fixed problem where Unity would crash when calling DestroyImmediate(gameObject) in OnApplicationQuit . Fixed problem where ZenInject would occasionally crash Unity when exiting Play Mode. (1005227)

Scripting: Fixed TLS handshake failure error messages so that they are now more specific. (1070949)

Scripting: Formatted the templates used to generate scripts to the standard Unity convention. (986688)

Scripting Upgrade: Added support for the System.Data.DataSetExtensions assembly with the .NET 4.x Equivalent Scripting Runtime Version. (1071607)

Scripting Upgrade: Fixed a problem that would cause the debugger to crash when trying to invoke a generic method. (1049288)

Scripting Upgrade: Fixed a problem that would sometimes crash Unity when entering Play Mode on macOS with Mono 4.x. (1060892)

Scripting Upgrade: Fixed a problem with List.AddRange so it avoids unnecessary allocations. (1041305)

Scripting Upgrade: Fixed an issue that caused Unity to crash when the debugger attempted to view a local string variable with invalid characters. (1052246)

Scripting Upgrade: Fixed an issue with DriveInfo.IsReady so it returns false when there is no disc in the CD drive. (1028143)

Scripting Upgrade: Fixed issue where Unity would crash when a script called GetMethod("Invoke") on types Delegate or MulticastDelegate . (1085270)

Scripting Upgrade: Fixed issue where Unity would crash when the APIUpdater Project path contained the $ (dollar) character. (1088028, 1094276)

Services: Package manager directory will now be fully tracked in Collab, including for embedded packages.

Shaders: Fixed bad Metal shader code generation on some cases using SV_GroupIndex. (1097866)

Shaders: Fixed case of shaders being compiled unnecessarily. (1049901)

Shaders: Fixed case of shaders failing to compile on GLES2 devices when "clip" instruction is used. (1066971)

Shaders: Fixed incorrect uniform names produced by the shader compiler when uniform arrays are indexed in fragment shaders on OpenGL ES 2. (1083384)

Shaders: Fixed issue where the incorrect pass type was applied when compiling shader variants. (1035151)

Shaders: Fixed issues with compute shaders when switching between Mac and iOS build targets.

Shaders: Fixed regression breaking GLSLPROGRAM/ENDGLSL on compute shaders. (1087923)

Shaders: Fixed shader compiler output for older mobile GPUs on GLES 2. (1084530)

Shaders: Fixed shader compiler output for older mobile GPUs on GLES 3. (1084531)

Shaders: Fixed some compute shader errors not being passed to the inspector/console with Metal build targets. (1097864, 1097865)

Shaders: Fixed surface shader analysis regression that prevented Input and SurfaceOutput structs from having same-named member fields (1009961)

Shaders: Silent shader compression failures now resulting in failed build as expected, with useful error messages. (1047260)

Shaders: Texture2DMS, Texture2dArray, Texture2DMSArray and TextureCubeArray now have precision postfix support (_half and _float).

SpeedTree: Fixed incorrect normal directionn on v7 assets.

SpeedTree: Fixed normal mapping on newly imported v8 assets.

Terrain: Added Undo and Redo functionality for created and connected Terrain Tiles. Made changes such that the parent tile is affected instead of the child tile. (1033425)

Terrain: Changed Create Terrain gizmos so that they show all possible new Terrain locations.

Terrain: Don't add an empty layer when canceling Add Layer window or set an existing layer to None. (1069093)

Terrain: Fix selection outline for terrains. (1082024)

Terrain: Fix spot/point light shadow receiving for terrain and grass. (810803, 1070424)

Terrain: Fixed - Unity Crashes when vertex shader slider property value is being changed after project restart (981451)

Terrain: Fixed a case when brush shape preview doesn't change while painting details. (1098030)

Terrain: Fixed a rare crash when procedurally feeding terrain detail system with invalid meshes. (1056379)

Terrain: Fixed a rare editor crash when deleting tree prototypes. (1056155)

Terrain: Fixed issue causing "FindTerrainTiles query rectangle too large" errors.

Terrain: Fixed issue where details were not painted according to the selected brush. (1068717)

Terrain: Fixed issue where smoothing along Terrain seams created lines or creases along the seams. (1061923)

Terrain: Fixed issue where the Mesh Renderer would draw shadows on the Terrain when painted as a Tree, even when Cast Shadows was turned off. (1050886)

Terrain: Fixed issue where UI elements on the Import Heightmap window were distorted when shrinking the window horizontally and vertically. (1053066)

Terrain: Fixed issue where users were unable to paint across Terrain Tiles. (1068933)

Terrain: Fixed issue with L-shaped Terrains, where one of the Terrain Tiles was missed when painting.

Terrain: Fixed terrain property redo/undo under Settings panel. (768865)

Terrain: Fixed the Terrain auto connect feature.

Terrain: Forced terrain to be most tessellated on painted regions just like before. (1080919)

Terrain: Made TerrainData Assets have unique names. Also, made changes so that newly-created TerrainData Assets are placed in the same directory as the parent.

Terrain: Terrain tree colliders now respect the preserveTreePrototypeLayer property. (812315)

Timeline: Fixed a crash that occurred when the audio system is re-initialized during audio playback. (1001668)

Timeline: Fixed a crash when creating a Control clip in an empty Timeline instance. (1033890)

Timeline: Fixed a NullReferenceException error while dragging an Animation clip to a Track Group. (1022052)

Timeline: Fixed a tooltip typo for Control tracks. (1083618)

Timeline: Fixed an issue in the Curves view during recording where curves were selected from the first clip instead of the new clip. (986964)

Timeline: Fixed an issue in the Timeline window that showed incorrectly mapped references while animating materials. (1006210)

Timeline: Fixed an issue in the Timeline window while stepping in Play Mode. (1063648)

Timeline: Fixed an issue that created a Control track by default when a GameObject was dragged into the Clips view. (1056197)

Timeline: Fixed an issue that created AnimationPlayableAsset clips instead of Recorded clips. (1021763)

Timeline: Fixed an issue that occurred when loading from an asset bundle. (1063994)

Timeline: Fixed an issue that prevented locking a track when in Curves view. (1017565)

Timeline: Fixed an issue when attempting to delete a clip with a locked Inspector window. (1029784)

Timeline: Fixed an issue where a copied track was not treated as independent from the original track. (969331)

Timeline: Fixed an issue where a position offset was added to an animation in the Timeline window. (927718)

Timeline: Fixed an issue where changing the duration of a clip in the inspector did not change the duration of the Timeline instance. (1033454)

Timeline: Fixed an issue where clips in a sub-timeline did not snap to the edges of the parent. (1027725)

Timeline: Fixed an issue where dragging a clip shorter than the minimum length, or longer than the maximum length, resulted in a five second clip. (1071501)

Timeline: Fixed an issue where performing an undo did not reselect clips. (1021780)

Timeline: Fixed an issue where removing the last key did not reset the transform color. (876335)

Timeline: Fixed an issue where the Animation window preview did not link to the correct GameObject in the hierarchy. (1027289)

Timeline: Fixed an issue where the Animation window preview was not showing missing pathes. (1046358)

Timeline: Fixed an issue where the Mute icon did not appear on Animation Override tracks. (876029)

Timeline: Fixed an issue where the Playhead Indicator