Search Unity

Unity 2018.3 Beta (Concluded)

Get early access to features coming in the next full release now.

Download Unity 2018.3b

Improved Prefab workflows, new default scripting runtime, isometric 2D Tilemaps

Unity continues to deliver new and improved tools for developers, artists and designers. The new beta will help your team work better together both in the editor and with other tools. From improved Prefab workflows to isometric 2D Tilemaps, Unity 2018.3 beta adds improvements across the board.

Get early access to these features now by joining our open beta.

Watch “Prefabs”
  • Improved Prefab workflows
  • Terrain System Improvements (Preview)
  • Isometric 2D Tilemaps
  • High Definition Render Pipeline (Preview)
  • New Default Scripting Runtime
  • Editor Improvements
  • Code size
  • Physics Improvements
And many more

Improved Prefab workflows

With 2018.3 beta, you can get early access to features that can make a big difference to your Prefab workflows, including Nested Prefabs, Prefab Variants and Prefab Mode.

The new Prefab workflows allow you to split up scenes and Prefabs on a granular level. They give you greater flexibility, increase your productivity and enable you to work confidently without worrying about making time-consuming errors.

Terrain System Improvements (Preview)

Unity 2018.3 will ship with an update to the terrain system. This update features better tools and improved performance by taking advantage of GPU processing and adds support for the HD and LW render pipelines while being backwards compatible with the built-in render pipeline and the existing Unity Terrain system.

Isometric 2D Tilemaps

The world-building 2D Tilemap tool now enables you to build isometric tilemaps. You can use isometric tilemaps to easily create 2D tycoons or simulation games, to name just a couple examples. The Tilemap renderer is capable of doing per-tile sorting and optimized dynamic batched rendering. This gives you great flexibility allowing you to create isometric worlds where tiles can obscure objects. Designers will now be able to make their characters go behind buildings, trees and other objects.

High Definition Render Pipeline (Preview)

For this release of Unity, we added a new set of improvements to the HDRP. There’s a number of much-asked-for features, including mesh decals, a stack-lit shader that enables filmic quality, and a reflection system, which gives artists greater control over the quality and transition between light probes – allowing you to minimize light leaking.

New Default Scripting Runtime

With 2018.3b, we changed the default scripting runtime to .NET 4.x. The old .NET 2.0 runtime has been deprecated and support for it will be dropped in a future release.

In addition to this, projects that are targeting the .NET 4.x scripting runtime will be able to make use of the open source Roslyn C# compiler. The migration to the Roslyn compiler brings the latest C# 7.2 language features, improves compatibility, and reduces compilation time.

Editor Improvements

We’re introducing a unified Settings window for Project Settings and Preferences. This new window is dockable and searchable, making interactions with its contents much more convenient.

We also improved editor tabs by adding selection highlights, making them scale with text length and giving you the ability to scroll through open tabs if their combined width exceeds the boundaries of their window.

Code size

We have standardized managed code stripping across all platform player settings. The Stripping Level option has been replaced by a new Managed Stripping Level option. This new option is available for all platforms and both mono and il2cpp scripting backends.

To help you make your games as small as possible, we’ve introduced a new Aggressive Managed Stripping Level. This option is only available when targeting the .NET 4.x scripting runtime and will be experimental in 2018.3.

With the managed code stripping improvements and size improvements made to il2cpp, builds targeting the .NET 4.x runtime will be comparable in size to the old .NET 2.0 runtime.

Physics Improvements

With 2018.3b, comes an update of the PhysX physics engine from 3.3 to 3.4. This is not a major feature-focused upgrade but nevertheless represents the result of a few years of evolution in areas like performance and accuracy. Among the benefits of this update is up to 20x faster convex mesh cooking performance.

Furthermore, we have added multi-scene physics support for 2D and 3D. You can now run multiple scenes with physics simultaneously without them affecting each other.

What to expect from a beta

As with any beta program, you’ll have early access to new features and will be able to assist in the final steps of their development. That means you’re likely to experience Unity as less stable than a final version.

The beta phase begins once all scheduled major features have been included and a quality baseline has been established. Several beta versions will be made available during this phase and quality will improve with each iteration.

Beta tester newsletter

Sign up and receive a news about the beta, as well as tips on how to be an effective beta tester.

RSS feed

Subscribe to our beta feed and get access to the latest beta as soon as it's released.

Subscribe

Unity 2018.3.0f1 release notes

Known Issues in 2018.3.0f1 under investigation

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

  • Metal: Performance degradation on iOS devices. (1064796)

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

Known Issues - won't be fixed in 2018.3

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

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

  • 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)

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

New 2018.3.0f1 Entries since 2018.3.0f0

Improvements

  • Particles: Added missing script api for ExternalForces influencers list.

Fixes

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

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

  • Graphics: Fixed CopyTexture for compressed textures (1094698)

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

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

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

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

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

Preview of Final 2018.3.0f1 Release Notes

Features

  • Android: Added AppBundle generation support.

  • Android: Added notch support for Android.

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

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

  • 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.

  • 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.

  • Asset Import: Added support for importing R16 textures.

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

  • Editor: Added improvements to the window tabs:

    • The selected window tab is now highlighted using a blue outline.
    • The width of the tab is now adjusted according to the length of the tab title.
    • You can now scroll through open tabs with arrows when the number of open tabs exceeds the width of the window.
  • Editor: Introduced new searchable window to display and edit Project Settings and Preferences.

  • Editor: Rider installation path detection in Editor Preferences.

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

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

  • 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.

  • Graphics: Added memory-less frame buffer depth to iOS Metal.

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

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

  • Graphics: Added texture 3D CopyTexture support.

  • Graphics: Added VFX editor run-time API.

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

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

  • 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.

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

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

  • Particles: Added ParticleSystemForceField component and updated External Forces module.

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

  • 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.

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

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

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

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

  • Playables: Exposed the time wrap mode for Playables.

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

  • 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.

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

  • Profiler: Added the backend for Memory Profiler version 2.

  • 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.

  • Scripting: Added managed Memory Profiler support for Mono .NET 4.x. E.g. UnityEditor.MemoryProfiler.MemorySnapshot APIs.

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

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

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

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

  • Terrain: Made the following improvements to the Terrain system:

    • Introduced Brush and Terrain Layer Assets.
    • Added instanced drawing mode that reduces the number of drawcalls by approximately two orders of magnitude.
    • Added tools for creating adjacent Terrain Tiles.
    • Added functionality for seamless painting across Terrain Tiles.
    • Added functionality to automatically connect Terrain Tiles.
    • Moved basemap calculation to the GPU.
    • Moved Terrain paint tool processing to the GPU.
    • Introduced the Terrain stamp tool.
  • XR: Added VR single-pass stereo support for Vulkan and OpenVR using double wide texture.

Backwards Compatibility Breaking Changes

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

  • Android: Deprecated the Internal build system.

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

  • Android: Removed fastzip support.

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

  • 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.

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

  • 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: 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: In USS files, flex N now means flex N 0 auto. It previously meant flex N 0 0.

  • Editor: Unity no longer automatically shows the Services window.

  • 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: Updated the UXML factory-related API. The old API is now marked obsolete.

  • 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.

  • GI: Renamed 'Recompile RSLS Shaders' menu item to "Recompile Lightmapping Shaders".

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

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

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

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

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

  • Web: WWW is now obsolete. Use UnityWebRequest instead.

  • WebGL: Added asm.js deprecation warning.

  • WebGL: Enabled WebAssembly traps in Development builds.

  • WebGL: Removed caching support for compiled WebAssembly module.

  • WebGL: Unity no longer uses glGetProcAddress internally.

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

  • XR: Moved Oculus support to a package. The package automatically downloads when you add Oculus 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 Windows Mixed Reality support to a package. The package automatically downloads when you add Hololens/WindowsMR to the Virtual Reality SDKs list.

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

Changes

  • Android: Disabled Android TV by default for new projects.

  • 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.

  • 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.

  • iOS: Marked Mono scripting backend as deprecated.

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

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

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

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

Improvements

  • 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.

  • 2D: Added Isometric Tilemap support for 2D Tilemap.

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

  • 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.

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

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

  • Android: Added WebCamTexture acceleration for Android 5.0 and later.

  • 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: 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: Fixed an issue that prevented certain public classes in the Android extensions DLL from appearing in the Unity API reference docs.

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

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

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

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

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

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

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

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

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

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

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

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

  • Animation: Improved Animator temporary allocation scheme.

  • Animation: Improved memory reporting for some animation classes.

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

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

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

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

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

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

  • 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: 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.

  • 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.

  • Docs: Expanded the documentation of the SerializedObject class.

  • 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)

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

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

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

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

  • 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: Improved EditorGUI.EnumPopup and EditorGUI.EnumFlagsField:

    • Enum options now display in the order of declaration instead of the order of value.
    • Added support for [DescriptionAttribute] to change the display name of an enum value.
    • Added includeObsolete parameter to allow showing obsolete Enum values in the pop-up drop-down.
    • Added checkEnabled callback to allow disabling/enabling an option in the pop-up.
  • Editor: In USS files, flex-basis now accepts the value auto.

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

  • 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: Replaced the Animation condition dropdown with a searchable dropdown. (720995)

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

  • 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: 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: When switching between different Desktop Standalone platforms in Build Settings, Unity now selects the x64 architecture by default.

  • 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: 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: MinMaxSlider sliders now display horizontal/vertical resize cursors when you hover over the resize handles at their ends.

  • Editor: UIElements.ScrollView scrolling speed now matches IMGUI's scrolling speed.

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

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

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

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

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

    • In versions of Unity prior to 2017.2, when a Scene loads, Unity reads the Enlighten data on the main thread and renders albedo/emissive rendering in one go, causing a big spike.
    • In 2017.2, Unity loads Enlighten data in a time-sliced manner, but still on the main thread. The main thread schedules albedo/emissive rendering with an 8ms budget per frame.
    • From 2018.3 onwards, Unity loads Enlighten data on the loading thread. The main thread schedules albedo/emissive rendering, and you can control the budget with the DynamicGI.materialUpdateTimeSlice API.
    • Note: Unity only reads Enlighten data on the loading thread when running in the Player. (975975)
  • GI: Reduced baking artifacts in areas that use interpolated normals.

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

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

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

  • 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.

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

  • Graphics: Added physical camera Gate Fit modes to Camera properties.

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

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

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

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

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

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

  • Graphics: Metal now supports GPU skinning with Compute Shaders.

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

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

  • 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)

  • 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.

  • Kernel: Improved archive header read performance by reducing system IO calls.

  • 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.

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

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

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

  • Package Manager: Added experimental support for Git package dependencies.

  • Package Manager: Added experimental support for scoped (private) registries.

  • Package Manager: Added logging package upgrades to a file.

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

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

  • Package Manager: Package Manager UI release 2.0.1:

    • Made undesired public classes internal.
    • Made minor updates to the documentation.
  • Package Manager: Package Manager UI release 2.0.2:

    • Updated the documentation.
    • Set the dialog title to 'Unity Package Manager'.
  • Package Manager: Package Manager UI release 2.0.3:

    • Changed the behavior to keep showing updates even if "Show Preview Packages" is not checked while a preview package is being installed.
    • Changed the behavior before a user chooses to show or hide Preview Packages:
    • If a preview package is already installed, "Show Preview Packages" is enabled.
    • If no preview packages are installed, "Show Preview Packages" is not enabled.
    • Changed the behavior to save the user's choice after they have decided to show or hide Preview Packages.
  • Particles: Added "Emit Probability" property to Particle System Sub Emitters. This controls the chance that the sub-emitter emits particles.

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

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

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

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

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

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

    • Up to 2x faster, and more accurate queries
    • Improved multi-threaded simulation and broadphase that saturate cores noticeably better
    • Improved convex collisions in PCM mode
    • More accurate collisions vs terrain, unified with the mesh collisions now
    • Support for negative scaling of concave meshes (w/o baking!)
    • Faster & more accurate convex hull generator (based on Quickhull), it doesn't need inflation
    • Speculative CCD; now fast rotations can be dealt with (think Pinball flippers)
    • Simulation determinism now doesn't get affected by newly added Rigidbodies that don't belong to current islands
    • Mesh cooking is now at least 2x faster than before
  • Playables: Improved PlayableGraph housekeeping which improves performance for large numbers of PlayableGraphs, Timelines, or Animators.

  • 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".

  • 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].

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

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

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

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

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

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

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

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

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

  • Profiler: Registered all native Unity threads with Profiler.

  • Scripting: Added support for Visual Studio 2019 code editor.

  • 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.

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

  • 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: Optimized 'DisallowMultipleComponent' check to be faster and not allocate garbage collection memory.

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

  • 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 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.

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

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

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

    • Added support for PBR rendering.
    • Improved vertex shader performance when computing the wind animation.
    • Added support for top-down Billboards.
  • Terrain: Added a Mask map texture to the Terrain Layers, which is usable by custom Terrain shaders for more sophisticated shading.

  • 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 per-pixel normal map on Terrain with instancing enabled.

  • 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.

  • 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.

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

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

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

  • Timeline: Improved root animation in the Timeline window.

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

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

  • UI: Added Sprite Atlas Late-Binding support for UI.

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

  • 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: Updated UI.InputField to use a cached version of WaitForSecondsRealtime to reduce GC.

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

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

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

  • 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: Using presence detection on Windows Mixed Reality is now more responsive and reliable.

  • XR: XR LWRP Improvements:

    1. Implemented single-pass double wide rendering as a stereo rendering method fallback for Android devices that do not support single-pass instancing or multi-view.
    2. You can no longer select stereo multi-pass rendering from the Player Settings when an SRP is in use.
    3. Unity automatically selects single-pass stereo rendering if multi-pass was previously selected before using an SRP.
    4. Resolved Android y-flip issues.
    5. Shadows now render correctly on all Android platforms when using multi-view stereo rendering.
    6. Unity no longer renders the VR watermark on a head-mounted display.
    7. OpenGL invalid state errors are no longer present in adb logs.

API Changes

  • 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.

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

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

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

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

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

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

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

  • Animation: Moved GameObjectRecorder out of experimental.

  • 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.

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

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

  • 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.

  • 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.

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

  • Editor: Added new fields to the ModelImporter Scripting API:

    • ModelImporter.importBlendShapeNormals, which is similar to ModelImporter.importNormals but for blend shapes.
    • ModelImporter.normalSmoothingSource, which controls whether to use smoothing groups or face angles to determine which edges are smooth when computing normals.
  • Editor: Added new UIElements fields: BoundsIntField, RectIntField, Vector2IntField, Vector3IntField, Toggle (refactor).

  • Editor: Added new UIElements fields: MaskField, LayerField, TagField, LayerMaskField, PopupField (refactor).

  • 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 EditorUtility.CopySerializedManagedFieldsOnly, which allows you to copy fields between any two managed objects using the Unity serializer.

  • 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 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 SerializedProperty.DataEquals method that compares the raw data of two SerializedProperty.

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

  • 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: Improved EditorGUI.EnumPopup and EditorGUI.EnumFlagsField:

    • Enum options now display in the order of declaration instead of the order of value.
    • Added support for [DescriptionAttribute] to change the display name of an enum value.
    • Added includeObsolete parameter to allow showing obsolete enum values in the pop-up drop-down.
    • Added checkEnabled callback to allow disabling/enabling an option in the pop-up.
  • Editor: In UIElements, BaseControl is now BaseField.

  • Editor: Made changes to EditorGUI.EnumPopup:

    • EditorGUI.EnumPopup no longer shows Obsolete values with Error flag when using includeObsolete = true.
    • When you use EditorGUI.EnumPopup with includeObsolete = true Unity appends (Obsolete) to the name on Obsolete enum values.
    • Added support for [TooltipAttribute] to add a tooltip on enum values when using EditorGUI.EnumPopup.
  • 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: 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.

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

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

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

  • 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: Removed obsolete iOS specific 'isReadable' property and 'MarkNonReadable' method from WebCamTexture.

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

  • 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.

  • 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 AddShellScriptBuildPhase public method, plus InsertShellScriptBuildPhase and InsertCopyFileBuildPhase methods that accept an index parameter to the Xcode API.

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

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

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

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

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

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

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

  • Physics: Added Collision.GetContact(index) to retrieve a specific contact.

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

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

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

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

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

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

  • 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.

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

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

  • 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.

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

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

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

  • Scripting: Exposed public API for the console log path.

  • Shaders: Obsoleted [ShaderIncludePath] attribute with warning.

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

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

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

  • Timeline: Added AnimationPlayableAsset.removeStartOffset to enable relative root offsets.

  • Timeline: Added AudioPlayableAsset.loop property accessor. (1056481)

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

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

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

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

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

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

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

Fixes

  • 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 appeared out of range in nested timelines. (1061137)

  • Timeline: Fixed an issue where the Timeline window lost focus when using Maximize On Play. (1056594)

  • Timeline: Fixed an issue where Trimming clips was being allowed on locked tracks. (1033897)

  • Timeline: Fixed an issue with "Remove All Keys" where values were not removed on the last Scale axis. (1011490)

  • Timeline: Fixed an issue with a temporary GameObject being created for custom tracks by the Timeline window.. (1082600)

  • Timeline: Fixed an issue with allowing clips to be moved to tracks of a different type. (1016422)

  • Timeline: Fixed an issue with audio playback when enabling audio after exiting Play mode. (1014262)

  • Timeline: Fixed an issue with being able to reset a PlayableDirector. (1061398)

  • Timeline: Fixed an issue with clip names not appear correctly when the clip was resized. (1025242)

  • Timeline: Fixed an issue with clip snapping in Ripple mode. (1043956)

  • Timeline: Fixed an issue with constraints not working while previewing in the Timeline window. (1042061)

  • Timeline: Fixed an issue with copying clips where the clip position was not being copied properly. (946400)

  • Timeline: Fixed an issue with deleting a GameObject with a Playable Director that contained Control clips. (1024272)

  • Timeline: Fixed an issue with deleting clips that caused the Animation window remain locked. (1027755)

  • Timeline: Fixed an issue with key animation on machines with improperly set locales. (1051325)

  • Timeline: Fixed an issue with modifying animation in the Curves view that caused GameObjects to be disabled. (1033778)

  • Timeline: Fixed an issue with numerical properties not accepting commas as decimals. (1050374)

  • Timeline: Fixed an issue with Playable tracks where animation curves were not being copied to the correct Timeline asset. (1025464)

  • Timeline: Fixed an issue with redo that resulted in a duplicated clip temporarily losing its asset reference. (1063868)

  • Timeline: Fixed an issue with right-click not displaying a context menu when in Curves view. (1024653)

  • Timeline: Fixed an issue with root motion not being scaled properly in the Timeline window. (934650)

  • Timeline: Fixed an issue with Splitting clips that created a 1-frame Animation clip. (1029628)

  • Timeline: Fixed an issue with the Clips view being unexpectedly changed when expanding nested Timeline instances. (1020023)

  • Timeline: Fixed an issue with the Timeline window being stuck in Ripple mode after attempting to move a clip to an invalid location. (1006610)

  • Timeline: Fixed an issue with the track transform offset not being applied correctly when root motion was disabled on the Animator. (939548)

  • Timeline: Fixed an issue with track selection in Curves view. (1030681)

  • Timeline: Fixed an issue with track validation for Animation Override tracks. (1025768)

  • Timeline: Fixed Playable tracks accepting all clip types. (984760)

  • Timeline: Fixed scrubbing for sub-emitters set with AutoRandomSeed. (1076850)

  • UI: Fixed an issue where Undoing an Add Component action on a Canvas changed the positions of UI objects, depending on Anchor Presets. (1047799)

  • UI: Fixed crash at CanvasRenderer_CUSTOM_SplitUIVertexStreamsInternal when using VertexHelper. (943157)

  • UI: Fixed crash in AddUIVertexTriangleStream caused by use of temporary variables. (738798)

  • UI: Fixed crash in GUIStyle.scaledbackground when texture is null. (1074485, 1098087)

  • UI: Fixed issue where child RectTransform values were not being driven by parent GridLayoutGroup. (1051378)

  • UI: Fixed issue where enabling Content Size Fitter Constraints and then removing them greyed out the Width/Height of the GameObject until scene reload. (1013029)

  • UI: Fixed issue where items in nested Canvases failed to render because the Canvas bounds calculation occurred before the Canvas batch was built. (1038949)

  • UI: Fixed issue where Using (VertexHelper help = vh) caused a Dispose method to be called on the passed VertexHelper, which led to null lists. (738798, 943157)

  • UI: Fixed issue with 16bit characters not displaying correctly. (1067159)

  • UI: Fixed issue with CanvasScaler not applying the first frame if the screen size matched the Reference Resolution. (999240)

  • UI: Fixed issue with CanvasScaler not applying the first frame if the screen size matched the Reference Resolution. (999240)

  • UI: Fixed issue with child where values driven by a child RectTransform were not cleared when removing the driven object. (1013029)

  • UI: Fixed issue with Font Sizes that are too big for Rect Transform causing "Argument Out Of Range" error. (1037923)

  • UI: Fixed issue with Text objects where using a Font Size that was too big for the RectTransform caused an "Argument out of Range" error. (1037923)

  • UI: Fixed issue with UI Profiler stats not reporting properly. (1004333)

  • UI: Fixed issue with UI Profiler stats not reporting properly. (1004333)

  • UI: Fixed issue with wrong RectTransform values when dragging and dropping Canvas prefabs onto Canvas objects in the Project view. (1047865)

  • UI: Fixed issue with wrong RectTransform values when dragging and dropping Canvas prefabs onto Canvas objects in the Project view. (1047865)

  • UI: Fixed issue with Ignore Parent Group for CanvasGroup not ignoring the Alpha value. (910032)

  • UI: Fixed issue with Ignore Parent Group for CanvasGroup not ignoring the Alpha value. (910032)

  • UI: Fixed issues with Image material not changing color when masked. (994413)

  • UI: Fixed memory leak caused by UI Profiler window. (1058621)

  • UI: Fixed race condition that led to batches being rendered with no bounds. (1038949)

  • UI: Fixed RectTransfrom position being set to 0 when attached to disabled canvas. (1030212)

  • UI: Fixed UI Profiler memory leak. (1058621)

  • UI: Fixed Unity Editor crash when instantiating GameObjects containing Canvases and Sprites in Coroutines. (1046498)

  • UI: Fixed Unity Editor crash when instantiating GameObjects containing Canvases and Sprites in Coroutines. (1046498)

  • UI: Modifying the Canvas Sort Order will now dirty the scene. (1027688)

  • UI: Modifying the Canvas SortOrder will now dirty the scene. (1027688)

  • UI: Moved TextMesh Pro Settings to new Unified Settings window. (1056436)

  • UI: Removed update function that caused unwanted reset of local position and scale for UI elements added to an inactive Canvas. (1030212)

  • UI: Setting Aspect Ratio Fitter mode to FitInParent no longer causes a warning in the Console. (1014834)

  • UI: Setting Aspect Ratio Fitter mode to FitInParent no longer causes a warning in the Console. (1014834)

  • UI: Spawning GameObject with AspectRatioFitter set to FitInParent no longer positions the elements incorrectly. (1022548)

  • UI: Spawning GameObject with AspectRatioFitter set to FitInParent no longer positions the elements incorrectly. (1022548)

  • UI: UIElements: fix UXML factories not initialized when creating instantiating assets at Editor startup (1045535)

  • UI: Undoing AddComponent on a Canvas no longer modifies the Anchor presets. (1047799)

  • Universal Windows Platform: Fix building project with IL2CPP scripting backend incrementally failing with IOException when it's already open in Visual Studio. (1098783)

  • Universal Windows Platform: Fix: UWP build now works with incremental compiler. (1054425)

  • Universal Windows Platform: Fixed building projects with .NET 4.6 API compatibility level while using old scripting runtime in the editor. (1094479)

  • Universal Windows Platform: Fixed building projects with TMPro package on .NET scripting backend and "C# projects" build option enabled (1035513)

  • Universal Windows Platform: Fixed C# generated projects having duplicate guids when they have dots in their name and their names start with the same prefix. (1073037)

  • Universal Windows Platform: Fixed renderer not using multiple threads when using D3D12. (1094199)

  • Video: Accessing video information needing preparation when playback not ready will return default value accordingly. (1005193)

  • Video: AudioSampleProvider's buffer is overflowing when videoPlayer is playing a video file with the longer audio than video track (1030937)

  • Video: Buffer overflow warning when we change playback speed of video player (1025333)

  • Video: Copying a WebCamTexture to a Texture2D using Graphics.CopyTexture makes the output image gray (861946, 1092232)

  • Video: Editor crashes on changing "Spatial Setting" for ".webm" formats (1077664, 1092231)

  • Video: FIxed build crashes on _VEC_memcpy when continuously starting and stopping WebCamTexture. (934856)

  • Video: Fixed case of multiple "Can't play movie[]" errors being thrown when using Video Player with an incorrect URL. (921510)

  • Video: Fixed crash when using persistent AudioSource in VideoPlayer. (1081449, 1089083)

  • Video: Fixed inconsistent clamping for playback speed between inspector and API. (1094767)

  • Video: Fixed inconsistent time/frame values for VideoPlayer with SkipOnDrop disabled. (966425)

  • Video: Fixed issue causing different frames to be shown at the same Timestamp as compared to other Unity versions. (1014951)

  • Video: Fixed issue where Importing video files would cause "WindowsVideoMedia (The system cannot find the path specified)" errors to appear. (903529)

  • Video: Fixed issue where video transcode could be initiated while the video was playing in a scene, which would cause Unity to hang. (909385)

  • Video: Fixed MediaEncoder crashes with audio data. (1009960)

  • Video: Fixed occurrence of video build error on headless server. (1053877)

  • Video: Fixed VideoPlayer.errorReceived event is not fired on network connection lost (on OSX). (975480)

  • Video: Inconsistent behavior between software playback and native playback when Unity Audio is disabled (1022387)

  • Video: Removed innocuous video-related warning from Metal OSX standalone startup. (1064798)

  • Video: Smoother playback for short videos (1041511)

  • Video: The size of a .webm format clip is shortened when imported into Unity (1079014, 1092234)

  • Video: Transcoding a webm file throws Video decoding and Audio encoding errors for a few frames (1025295)

  • Video: Video clip transcodes without errors as VP8 but throws error when we play through video player (863957)

  • Video: Video player inspector throws error when we click on browse to add URL. (1024925)

  • Video: Video player video disappears when Render mode is set to Camera Near Plane on Deferred camera (1030162)

  • Video: Video Plays when "Playback Speed" is set to 0 in VideoPlayer Component only in Mac OSX (1024874)

  • Video: VideoPlayer audio tracks differ in order when VideoPlayer is being played on Android (972041)

  • Video: VideoPlayer.frame controlled by the slider doesn't start video playback. (934701)

  • Video: Videos properly restart once end reached when calling Play() again. (1046677)

  • Video: We now emit a warning when trying to transcode Webm variable-frame-rate videos (which are unsupported). (1045511)

  • Video: WebCamTexture.devices returns empty name string when WebCam name contains special characters (1054494, 1083279)

  • Video: When "Video Player"s "Playback Speed" is set to 3 or more, the video stutters immensely. (908998)

  • Video: [Android] A specific video is not played when built via command line (973778)

  • Video: [Mac] Fixed inability to change webcam resolution. (946930)

  • Visual Effect: Larger effects add up to large serialized states and in-graph latency when selecting moved nodeblocks (1079937)

  • WebGL: Fixed canvas resize when using Linear color space. (977579)

  • WebGL: Fixed integer overflow on start-up when Performance Reporting is enabled. (1085302)

  • WebGL: Fixed mouse input simulation when using touch inputs. (970812)

  • WebGL: Fixed Unity WebGL content termination. Calling Application.Quit() will stop execution.

  • WebGL: Fixed WebCamTexture device name (894564)

  • WebGL: Fixed UnityLoader.js memory leak.

  • WebGL: Replace usage of deprecated WebAudio gain/playbackRate.value with setValueAtTime() (965647)

  • WebGL: Replace usage of deprecated WebAudio listener setPosition/setOrientation with position/forward/up.setValueAtTime() (1003912)

  • WebGL: Workaround for audio not working in Chrome (as of version 66) until the user interacts with the page. (1003917)

  • Windows: Fix bad Xbox controller input when multiple gamepads connected (1003223)

  • Windows: Fixed Application.isFocused returning true if the player has been minimized before the first scene loaded. (1080560)

  • Windows: Fixed crash when Custom Editor window is destroyed due to going out of focus while being dragged. (1075038)

  • Windows: Fixed Standalone Player's titlebar not responding to touch input when window is maximized (876969)

  • Windows: Moved editor package manager cache from ProgramData to AppData. This enables simultaneous Unity installs by multiple users. (1043996)

  • Windows: Player prefs are now less likely to become corrupt for power pull scenarios on Windows. (855595)

  • XR: Calling Camera.SetStereoProjectionMatrix switches rendering method to Multi-Pass (953054)

  • XR: During play mode, headset rendering breaks if Scene window is focused (878454)

  • XR: Fix crash that causes the VR device to stop rendering when render texture size is too large and not a power of 2 (1027366)

  • XR: Fix flickering issue in rendered eyes due to incorrect pause handling behavior on mobile devices (1025479)

  • XR: Fix for Editor crash when using ConvertToEquirect if platform is set to iOS or Android. (996066)

  • XR: Fix FPS Switching when entering/exiting VR (1025561)

  • XR: FIxed 360 Stereo Capture Support for worldspace UI Canvas. (1013901)

  • XR: Fixed an issue with Windows MR where continually going into and out of play mode could cause a crash. (1025433)

  • XR: Fixed case of RenderTexture ConvertToEquirect flipping left eye and right eye images during stereo equirectangular generation, resulting in top/down images been swapped. (988420)

  • XR: Fixed crash on app start when running LWRP on Hololens. (1064175)

  • XR: Fixed issue causing "Unable to find method OnSourceEvent" on Windows MR when using .NET backend (1051807)

  • XR: Fixed issue of error spam when depth buffer sharing was enabled during Holographic Remoting or Simulation (1047269)

  • XR: Fixed issue with reported device possition when building ARCore apps targeting x86.

  • XR: Fixed serialization faliure in HoloLens photocapture when using .Net that would cause the app to crash. (1024727)

  • XR: Fixed the issue with incorrectly ignoring the viewport whilst rendering to a RenderTexture when VR is enabled (986355)

  • XR: Previously when using SteamVR with OpenGL, if the SteamVR dashboard was open prior to playing in the Editor, the Unity scene would appear skewed or distorted in the HMD once the dashboard was closed. This has been fixed. (1000325)

  • XR: Splash image does not appear in headset (878834)

  • XR: The world will no longer appear flipped on HoloLens. (1041817)

  • XR: UnityEngine.XR.InputTracking.GetNodeNames no longer returns null when a valid uniqueId is provided. (1042946)

Version Released
December 7, 2018 Download / Release notes
November 28, 2018 Download / Release notes
November 21, 2018 Download / Release notes
November 14, 2018 Download / Release notes
November 7, 2018 Download / Release notes
October 31, 2018 Download / Release notes
October 24, 2018 Download / Release notes
October 18, 2018 Download / Release notes
October 10, 2018 Download / Release notes
October 3, 2018 Download / Release notes
September 27, 2018 Download / Release notes
September 20, 2018 Download / Release notes
September 11, 2018 Download / Release notes

6 reasons why you should join the beta

  1. Get early access to all the latest features
  2. Test your compatibility
  3. Join a community of Unity experts
  4. The chance to win cool prizes
  5. Show off your skills
  6. Influence the future of Unity
Learn more

Related news

{{ post.title.rendered }}

{{ post.excerpt.rendered | truncate(200) }}

Read more

Get early access now.

Download Unity 2018.3b
Got it

We use cookies to ensure that we give you the best experience on our website. Click here for more information.