Search Unity

Unity 2018.3 Beta

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.0b10 release notes

Known Issues in 2018.3.0b10 under investigation

  • iOS: Empty project build crashes with in PlatformInfoDispatcher.ReportAnalyticsData on iOS devices. (1077832)

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

Known Issues - won't be fixed in 2018.3

  • Graphics: Reinstalling Render Pipeline Package results in Errors until Editor is restarted. (1075234, 1078081)

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

  • Linux: Linux executable doesn't launch and has incorrect icon. This is due to 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.0b10 Entries since 2018.3.0b9

Features

  • Scripting: Added CSHARP_7_3_OR_NEWER preprocessor directive when compiling C# 7.3 on .NET 4.x scripting runtime.

Backwards Compatibility Breaking Changes

  • Editor: File Menu item name changes: 'Save Scenes' -> 'Save' and 'Save Scene As' -> 'Save As'. Since they now save either a Prefab or Scenes depending on if Prefab Mode is active. Note that any dirty assets are still being saved when using Ctrl/Cmd + S.

Improvements

  • Editor: Assembly Definition File inspector: Assembly Definition References, Assembly References and Define Constraints lists are now reorderable when editing a single Assembly Definition File.

API Changes

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

  • Memory Profiler: Added UnityEditor.Profiling.Memory.Experimental.PackedMemorySnapshot.Convert to handle conversion from MemoryProfiler.PackedMemorysnapshot object to UnityEditor.Profiling.Memory.Experimental.PackedMemorySnapshot file.

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

Fixes

  • Android: Fix gradle builds failing due to jcenter download failures. (1093946)

  • Android: Fixed an issue with terrain not being rendered on certain Mali devices on Vulkan. (1029328)

  • Animation: Fixed Animation Window hotkeys conflicting with Timeline hotkeys. (1090940)

  • Animation: Fixed exceptions triggered by CurveEditor. (1092191)

  • Asset Import: Fixed Vertex Compression not working for vectors with odd dimensions (positions and normals). (1078795)

  • Cache Server: Fixes duplicate downloads of assets from Cache Server. (1084628)

  • Editor: Backporting Asset Store menuItem position.

  • Editor: Fix extra shift being present in some contextual menu shortcuts in Timeline.

  • Editor: Fix JPEG logo assets for UWP builds not added to VS project. (1066142, 1095662)

  • Editor: Fixed a bug when pressing Apply in rig configuration panel exits the config mode. (1094387, 1096999)

  • Editor: Fixed a crash when adding multiple animation clips to imported model in Import Settings. (1094987, 1096392)

  • Editor: Fixed a crash when adding multiple events to imported model animation in Import Settings. (1095730, 1097001)

  • Editor: Fixed a crash when applying exactly 2 slices to a sprite. (1096698, 1096998)

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

  • Editor: Fixed a crash when selecting more than one item in Extra Transforms to Expose. (1097932)

  • Editor: Fixed a crash with array serialization in the ModelImporter when changing avatar mapping. (1094387)

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

  • Editor: Fixes text editor shortcuts using ctrl key on macOS instead of cmd (e.g. Ctrl+A to move to start of line).

  • Editor: Remove duplicates of the same path, due to shortcut evaluation in the rider path discovery.

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

  • GI: Hotfix for a failure to write baked light maps when VCS is enabled. (1075976, 1083366)

  • iOS: Fixed VideoPlayer.isPlaying keeps returning true when the video is paused. (1086705)

  • Package Manager: Add a warning message if you disable a package and that causes dependencies to also be disabled.

  • Package Manager: Add information to compiler errors explaining if a package has been disabled as a dependency of another package

  • Package Manager: Add information to info messages for disabled components in the inspector explaining if a package has been disabled as a dependency of another package

  • Package Manager: Fix compiler errors having information about missing types from disabled built-in packages when using implicit namespaces and the new scripting runtime (1084240)

  • Physics: Improved performance when baking meshes offline. (1075709, 1091428)

  • Prefabs: Fix child object reference properties with references to non-assets getting cleared when applying parent property. (1092845, 1093647)

  • Prefabs: Fix memory leak when calculating prefab dependencies during import.

  • Prefabs: Fixed crash because some components destroys others during awake while saving a prefab, which we did not expect. (1091412)

  • Prefabs: Fixed regression causing cloned prefab instances during save to show up in the scene. (1092726)

  • Prefabs: Updating Property modifications on a RectTransform does not need to attempt to disconnect from the prefab. (1078892)

  • Scripting Upgrade: Fix IEnumerable.ToArray() incorrectly producing 'null' elements. (1015876, 1095555)

  • Shaders: Allow loading shaders from AssetBundles that were created in 2017.2. (1096786)

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

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

  • Shuriken: Fixed Trails using the old position when a Move and Clear is performed. (1061683)

  • SpeedTree: Fixed a crash when importing an invalid SpeedTree v7 asset. (1087431)

  • Timeline: Fix timeline window not displaying after exiting PlayMode with MaximizeOnPlay. (1090119)

  • Timeline: Fix warnings when keyframing rotation values. (1093429)

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

Preview of Final 2018.3.0b10 Release Notes

Features

  • Android: Add android notch support.

  • Android: Added AppBundle generation support.

  • Android: Added support for requesting permissions at runtime.

  • Android: Kotlin source files now can be used as plugins.

  • Android: OpenJDK will be included into Unity Android support, user will no longer be required to install Java.

  • Animation: Added SkinnedMeshRenderer.forceMatrixRecalculationPerRender. This property should be set in cases where the user would like to manually render a skinned mesh multiple times within a single update, an example of this would be rendering out the results of an animation to a texture.

  • Asset Import: Added support for importing R16 textures.

  • Editor: Added improvements to the window tabs: -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 -Scrolling through open tabs with arrows when number of open tabs exceeds the width of the window.

  • Editor: Added view each channel in texture inspector.

  • Editor: Introduced searchable Unified Settings window for Project Settings and Preferences.

  • Editor: Rider installation path detection in Editor Preferences.

  • Facebook: Facebook platform now uses package manager for Facebook SDK management. Configuration is via the Facebook build settings (i.e. not the package manager UI).

  • GI: Added (baked lighting only) disc shaped area light type. Only available in the progressive lightmapper.

  • GI: Added preview version of GPU lightmapper in Windows Editor. Can be selected in the Lighting window. The lightmapper is based on OpenCL and RadeonRays and will work on all modern GPUs with more than 2Gb of dedicated memory.

  • Graphics: Added memoryless framebuffer depth to iOS Metal.

  • Graphics: Added R16 texture & render targets support.

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

  • Graphics: Added texture 3D CopyTexture support.

  • Graphics: VFX editor runtime 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. Refer to the 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 Ringbuffer mode, for persistent effects such as footprints or bullet holes.

  • Particles: New ParticleSystemForceField Component and External Forces Module update.

  • Particles: Ordered Mesh shape emission: emit particles in a deterministic sequence from meshes.

  • 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 allowing separate simulation and queries.

  • Physics: Support Box , Capsule and Sphere casts in aysnc query command.

  • Playables: Exposed the time wrap mode for Playables.

  • Playables: Implemented a method to send notifications through the playable system.

  • Player: [Also mentioned under API Changes] 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) Prefabs landing page.

  • Profiler: Added backend for Memory Profiler V2.

  • Scripting: Added CSHARP_7_3_OR_NEWER preprocessor directive when compiling C# 7.3 on .NET 4.x scripting runtime.

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

  • Scripting: Added NET_LEGACY C# preprocessor directive when compiling scripts on .NET 3.5 scripting runtime.

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

  • Scripting Upgrade: The .NET 4.x scripting runtime is now the default. The .NET 2.0 scripting runtime has been deprecated and support for it .NET 2.0 will be removed in a future release.

  • Terrain: Terrain system improvements:

    • Introducing Brush and TerrainLayer assets
    • Added instanced drawing mode reducing the number of drawcalls by about 2 orders of magnitude.
    • Tools for creating adjacent terrain tiles
    • Seamless painting across terrain tiles
    • Autoconnection of terrain tiles
    • Basemap calculation moved to the GPU
    • Terrain paint tools have been moved to the GPU
    • Introducing terrain stamp tool.
  • XR: Added VR single-pass stereo support for Vulkan and OpenVR using double wide texture.

Backwards Compatibility Breaking Changes

  • AI: The maximum number of OffMeshLinks that can be autogenerated and loaded in a static scene NavMesh has been set to 65535.

  • Android: Deprecated Internal build system.

  • Android: Remove fastzip support.

  • Android: Vulkan is now only considered on Adreno 4xx devices when Vulkan is the only selected Graphics API.

  • Asset Import: Reorganized ModelImporter inspector Model panel.

  • Audio: Simplified audio profiler view so that it is consistent with other profiler panes. The detailed view also enables audio profiling, so that this is only performed when actually needed.

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

  • Editor: Assemblies built in the editor for the .NET 4.x scripting runtime will now always have NET_4_6 define set regardless of when .NET STandard 2.0 scripting profile is choosen (NET_STANDARD_2_0 define). As the scripting profile setting only affects players and .NET 4.6 scripting profile is always used in the editor.

  • Editor: Changed ParticleSystem module headers to only track the enabled state property instead of all properties and added Property menu choices to right clicking on the headers.

  • Editor: Event queueing in UIElements: events generated while processing an event are now processed after the current event finishes processing, instead of being processed immediately. As a consequence, event order may change compared to what it was previously, but is now coherent for all elements in a hierarchy.

  • Editor: File Menu item name changes: 'Save Scenes' -> 'Save' and 'Save Scene As' -> 'Save As'. Since they now save either a Prefab or Scenes depending on if Prefab Mode is active. Note that any dirty assets are still being saved when using Ctrl/Cmd + S.

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

  • Editor: The UXML factory related API has changed. The old API is now marked obsolete.

  • Editor: We no longer show the Services window automatically in any situation.

  • 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: Packages assets are now hidden in the object selector.

  • Particles: The Legacy Particle System has been removed.

  • Scripting: The .NET 3.5 Equivalent Scripting Runtime has been marked as deprecated.

  • Scripting Upgrade: Updated 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: Removed usage of glGetProcAddress.

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

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

  • XR: Oculus support moved to a package. The package automatically downloads when Oculus is added to the Virtual Reality SDKs list.

  • XR: OpenVR support moved to a package. The package automatically downloads when OpenVR is added to the Virtual Reality SDKs list.

  • XR: Windows Mixed Reality support moved to a package. The package automatically downloads when Hololens/WindowsMR is added to the Virtual Reality SDKs list.

Changes

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

  • Build Pipeline: Calling BuildPipeline.BuildPlayer while scripts are being compiled will now wait for compilation to complete 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 simply Edit->Frame Selected. Use the hotkey bound to the latter menu item instead when that behavior is desired.

  • iOS: iOS/tvOS simulators players are now distributed as dylibs.

  • iOS: The Mono scripting backend has been marked as deprecated.

  • 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 considered experimental. The "Enable Vulkan editor support" checkbox has been removed.

Improvements

  • 2D: Added an option in Sprite Editor to display pivot position in pixels and snap pivot to pixels when you drag it.

  • 2D: Added Isometric 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, that allows users to adjust the Z Position of the Tile Palette Paint Brush. Keyboard shortcuts '-' and '=' can be used to adjust the Z Position value as well.

  • AI: Faster unloading of a scene that contains a large number of autogenerated OffMeshLinks.

  • Android: Added option to start Android app in non-fullscreen mode. (977660)

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

  • Android: Android NDK has been updated to r16b.

  • Android: Automatically populate min / target android api level dropboxes in the editor.

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

  • Android: Improved player loading time on Android devices.

  • Android: Include public classes from Android extensions in the Unity API reference docs.

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

  • Android: We now pass -d switch to adb install to allow version downgrade.

  • Android: We now set JAVA_HOME to point to the jdk path set in Unity Editor. (961766)

  • Android: We now use use apkzlib by default to pack apk. The "Use legacy SDK tools" checkbox in build settings can be used to force using aapt / apkbuilder instead.

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

  • Animation: Added IAnimationClipSource interface to let MonoBehaviour components provide a list of clips to the Animation Window.

  • Animation: Animation performance improvement: Reduce animator polling for events.

  • Animation: Animator will not automatically create an empty output when it doesn't have an AnimatorController assigned.

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

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

  • Animation: Implemented shift-click and right-click context menu to add properties in animation window without closing popup window.

  • Animation: Improved Animation system's root transformation/motion.

  • Animation: Improved Animator temporary allocation scheme.

  • Animation: Improved memory reporting of some animation classes.

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

  • Asset Import: Added UseSRGBMaterialColor option in Model Importer to convert material albedo colors. (1033503)

  • Asset Import: Fixed inconsistency when using some ModelImporter properties from their serialization vs. inspector.

  • Asset Import: New UI for AvatarMask inspector and ModelImporter Animation panel for the Mask section.

    • Added a SearchBar.
    • Multiselection and keyboard navigation is now supported.
    • Using ALT/CMD to collapse or enable/disable the entire hierarchy is now supported.
  • Asset Import: SpeedTree import changes:

    • Added option to import materials as sub-assets, making the import deterministic.
    • Added support for workflows using material sub-assets, similar to the ModelImporter.
  • Compute: ComputeBuffer.GetData and ComputeBuffer.SetData will now throw exceptions when bad values for arguments are provided: offset/size is checked more strictly (for one argument version we assume offset 0 and size same as of container provided), and compatibility between c# type size and ComputeBuffer stride is checked.

  • Docs: Expanded the documentation of the SerializedObject class.

  • Editor: (Also mentioned under API Changes) 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 Popup dropdown.
    • Added checkEnabled callback to allow disabling/enabling an option in the popup.
  • Editor: Added support for finding .asmdef assets with t:asmdef when using AssetDatabase.FindAssets and the Unity Editor project browser search field.

  • Editor: Added warning when assembly definition file (asmdef) assemblies are not loaded on startup where one or more of their asmdef references are not being compiled due to having no scripts. Also added warning when compiling asmdefs with no scripts in the Editor. (1041284)

  • Editor: Assembly Definition File inspector: Assembly Definition References, Assembly References and Define Constraints lists are now reorderable when editing a single Assembly Definition File.

  • Editor: Asset Bundles included in Read-Only folders can now be registered with the Caching system by adding the Read-Only folder path as a Cache.

  • Editor: Deleting a script now only triggers recompilation where strictly necessary, where previously it would recompile all scripts.

  • Editor: Disable menu item for deleting or renaming GameObjects marked NotEditable via context menu.

  • 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: In USS files, flex-basis now accept the value auto.

  • Editor: MinMaxSliders now display horizontal/vertical resize cursors when hovering over the resize handles at their ends.

  • Editor: New UI for ExposedTransforms in the ModelImporter Rig panel when Optimize GameObject is selected:

    • Added a SearchBar with a filter to show only selected nodes.
    • Added support for multiselection and keyboard navigation.
    • Added support for using ALT/CMD to collapse or enable/disable the entire hierarchy.
  • Editor: Replaced animation condition dropdown with a searchable dropdown. (720995)

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

  • Editor: UIElement's scrollview scrolling speed now matches IMGUI's scrolling speed.

  • Editor: UIElements: Several UXML attributes and USS properties have been renamed, for consistency and alignment with CSS. See https://docs.google.com/spreadsheets/d/1vS7LASgy1_Cdnr49isXGIVf6FWkNAOc56zGODfJbzPM/edit?usp=sharing for details.

  • Editor: Updating and deleting a precompiled assembly (.NET plugin) with "Auto Referenced" disabled now only triggers recompilation where strictly necessary, where previously it would recompile all scripts.

  • Editor: Using new SerializedProperty.DataEquals method in the ModelImporter Animation panel to make the Clip Masks faster to refresh.

  • Editor: When switching between different Desktop Standalone platforms in Build Settings, the x64 architecture will now be selected by default.

  • GI: Added a debug view to display visible texels from the baked GI point of view, 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:

    • Pre-2017.2 when a scene was loaded the Enlighten data was read on the main thread and albedo/emissive was rendered in one go causing a big spike.
    • In 2017.2 Enlighten data is loaded in a time-sliced manner, but still on the main thread. Albedo/emissive rendering is scheduled from the main thread and has a 8ms budget per frame.
    • In 2018.3+ Enlighten data is loaded on the loading thread. Albedo/emissive is scheduled from the main thread and the budget can be controlled by using the DynamicGI.materialUpdateTimeSlice API.
    • Also note: Enlighten data is read on the loading thread currently only in the Player. (975975)
  • GI: Performance improvement: we now only extract materials when the progressive lightmap baking backend is running.

  • GI: Progressive lightmapper: Show Light Probes convergence status in the Lighting window during baking.

  • GI: Reduced baking artifacts in areas using interpolated normals.

  • GI: The lightmap window memory view can now show allocations greater than 4Gb.

  • GI: We now cache progressive lightmapper g-buffers in the GI cache. Lightmap baking will start 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 Gate fit modes to Physical Camera and import from FBX in ModelImporter.

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

  • Graphics: Blend shapes now use compute shaders where supported: GPU Skinning must be enabled 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: Metal: added possibility to use ComputeBuffer in "native" metal shaders (written in metal shading language).

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

  • Graphics: Texture2DArray objects now have an improved Editor, including the ability to preview the textures in the array.

  • IL2CPP: Added "Master" configuration to 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 instance link time code generation on Windows based platforms. Furthermore, generated Visual Studio projects for IL2CPP scripting backend on Windows Standalone and Universal Windows Platform now also contain optional "MasterWithLTCG" configuration, which can be used to enable these settings there. (1089249)

  • iOS: Added profiler blocks in native code for input events in the new input system. This allows you to see how many input events are coming.

  • Kernel: Improve 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: A suitable error message is now displayed where a Personal Edition license is blocked.

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

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

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

  • Package Manager: Add references to package manager asmdef files from the Object Selector.

  • Package Manager: Package Manager UI release 2.0.1:

    • Move undesired public classes to internal.
    • Minor fix to the documentation.
  • Package Manager: Package Manager UI release 2.0.2:

    • Documentation update.
    • Set dialog title to 'Unity Package Manager'.
  • Package Manager: Package Manager UI release 2.0.3:

    • When a preview package is installed, keep showing updates even if "Show Preview Packages" is not checked.
    • When user has not already choose to show or hide Preview Packages:
    • If a preview package is already installed, "Show Preview Packages" is checked.
    • If no preview packages are installed, "Show Preview Packages" is not checked.
    • When user has decided to show or hide Preview Packages, use this decision.
  • Package Manager: Package upgrades are now logged into a file.

  • Package Manager: UI improvements, including the ability to filter packages displayed.

  • Package Manager: UPM now provides the author information of packages.

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

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

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

  • Particles: We now expose a culling mode option, giving users control over particle simulation whilst offscreen. (765905)

  • 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 depend on the order of Rigidbody creation.
    • Mesh cooking is now at least 2x faster than before.
  • Playables: Improved performance of PlayableGraph housekeeping. Improves performance for large numbers of PlayableGraphs/Timelines/Animators.

  • Prefabs: For Prefab instances: we now show the last known overridden root prefab instance name when the prefab asset has gone missing. Now showing "MyGameObjectName (Missing Prefab)" instead of just "Missing Prefab".

  • Profiler: Added an Options drop-down menu to the CPU Hierarchy View toolbar on the Profiler Window. This allows for collapsing of samples that only occur when the game is run in the Editor. Collapsed samples do not add their GC Alloc value to that of the encompassing sample. Collapsing is on by default and Samples will show up as "EditorOnly [SomeMethodName]".

  • Profiler: Added auto-registration of Mono threads with Profiler.

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

  • Profiler: All native Unity threads are now registered with Profiler.

  • Profiler: Enabled automatic scripting threads profiling for il2cpp.

  • Profiler: Exposed Profiler.maxUsedMemory API and cmdline argumets to control max used memory by Profiler. (1049157)

  • Profiler: Fix incorrect total/used memory metrics in the Profiler's Memory pane.

  • Profiler: Improved performance of data integration into ProfilerWindow.

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

  • Profiler: Recorder objects can now be configured to only collect samples from a single thread.

  • Profiler: Windows Editor now supports PIX for Windows CPU Timeline captures. (1080203)

  • Scripting: Hides obsolete properties from intellisense: -Visual Studio (without R#) : works out of the box (win, mac). -Visual Studio (with R#) : 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. A ticket has been submitted with them for a feature request: https://youtrack.jetbrains.com/issue/RIDER-17505.

  • Scripting: If a UnityWebRequest encounters an HTTP error, its error property will now contain the status code and name of the error (rather than a generic message).

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

  • Scripting: Optimized 'DisallowMultipleComponent' check to be faster and not allocate GC memory.

  • Scripting: Removed main thread limitation from LineUtility Simplify functions.

  • Scripting: Allocator.Temp memory in NativeContainers is now auto disposed when returning from managed code back to native. Additionally, the restriction that Allocator.Temp memory cannot be passed to jobs is now enforced. This enables the use of Allocator.Temp native containers in Burst compiled jobs.

  • Scripting Upgrade: We now log changes made to user assemblies by the AssemblyUpdater in Editor.log (check Logging section in https://docs.unity3d.com/Manual/APIUpdater.html for more details).

  • 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: New SpeedTree v8 asset (.st files) can now be imported to Unity.

    • PBR rendering is supported.
    • Improved vertex shader performance computing the wind animation.
    • Top-down billboards are supported.
  • Terrain: Added a mask map texture to the terrain layers so that custom terrain shaders can utilize them for more sophisticated shading.

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

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

  • Terrain: You can now specify a shader so that the shading of basemap pass can better match the splatting passes. Do so by adding the "BaseMapGenShader" dependency for generating the terrain basemaps.

  • Testing: Introduced an NUnit constraint for testing whether code allocated 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 API to rebind the PlayableOutputs to the scene.

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

  • Timeline: Improved Timeline's root animation.

  • Timeline: The scene offset mode on AnimationTracks now use the existing scene position and rotation when previewing in Editor.

  • Timeline: Timeline Editor uses different color and icons when editing a PlayableDirector in prefab isolation mode.

  • Timeline: Timeline now always evaluates objects back to their scene position when an AnimationTrack has no clips or extrapolation at the current time.

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

  • UI: Adding the ability to to use Sprite Tight mesh inside Unity UI.

  • UI: Updated the way bold characters are generated when no bold font can be found, by thickening 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.

  • Web: UnityWebRequest will now support cookies in the same game session. Also added API to remove them.

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

  • XR: Linear color space now works on Oculus Go and Quest. For Gear VR, driver issues may prevent linear 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. Single-pass double wide rendering has been implemented as a stereo rendering method fallback for android devices that do not support single-pass instancing or multi-view.
    2. Stereo multi-pass rendering is no longer selectable from the player settings when an SRP is in use.
    3. Single-Pass stereo rendering will automatically be selected if multi-pass was previously selected before using an SRP.
    4. Android y-flip issues should be resolved.
    5. Shadows render correctly on all android platforms when using multi-view stereo rendering.
    6. The VR watermark will no longer be rendered on an HMD.
    7. OpenGL invalid state errors could no longer be present in adb logs.

API Changes

  • 2D: New experimental API to set preview texture for SpriteEditorWindow with Experimental.U2D.ISpriteEditor.SetPreviewTexture. Importers that support ITextureDataProvider can also provide custom SpriteEditorWindow preview texture by implementing Experimental.U2D.ITextureDataProvider._previewTexture.

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

  • AI: New experimental NavMeshQuery.Raycast() method usable in jobs and capable of returning the list of visited NavMesh nodes.

  • Android: Added Android API 28 (Pie) to our scripting reference

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

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

  • Animation: Exposed Animator.WriteDefaultValues, allowing you to force a write of default values stored in the animator when appropriate.

  • Animation: GameObjectRecorder is out of experimental

  • Animation: It is now possible to define the FPS of the clip generated by the GameObjectRecorder using additional parameter in GameObjectRecorder.SaveToClip().

  • Animation: Refined the experimental Anim C# Jobs API, and renamed and changed some fields in AnimationStream and AnimationHumanStream. E.g. IsValid() becomes isValid, GetBodyLocalPosition() becomes bodyLocalPosition, DoF renamed to Dof, etc.

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

  • Asset Import: Added AssetPostprocessor.OnPostprocessMeshHierarchy callback, to allow you to modify the imported hierarchy before proceeding to import the avatar and animation clips. (1069175)

  • Asset Pipeline: Deprecated the overload of AssetDatabase.TryGetGUIDAndLocalFileIdentifier with int localID parameter, as it can return a localID that has overflowed (can happen when called on objects 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. Please note that the mipLevel parameter is ignored unless the shader specifies a read-write (unordered access) texture.

  • Editor: (Also mentioned under Improvements) 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 Popup dropdown.
    • Added checkEnabled callback to allow disabling/enabling an option in the popup.
  • Editor: Added a SelectRange API to the UIElements text field.

  • Editor: Added fields:

    • ModelImporter.importBlendShapeNormals: analogous to ModelImporter.importNormals but for blend shapes, and
    • ModelImporter.normalSmoothingSource: 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 Preset.ApplyTo(Object, string[]) that apply only the given properties and their children to the target Object. An empty array will apply all properties.

  • Editor: Added Presets.DataEquals(UnityEngine.Object) that allows to compare the content of a Preset with the Serialization of any matching Object type. This would let you know if applying this Preset would make any change on the target object or not.

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

  • 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: the property is now ignored. SW CommandBuffers are now only used if GraphicsJobs are enabled and native Vulkan secondary command buffers are slow or have issues on some drivers.

  • Editor: In UIElements (experimental), renamed BaseControl to BaseField.

  • Editor: In UIElements, BaseControl is now BaseField.

  • Editor: KeyDown events receiving a KeyCode and KeyUp events are now used by text fields in the Editor when the user is entering text. Previously they only used KeyDown events producing printable characters. If you have controls that draw after a text field that need to be aware of these events, you should test for them before drawing the text field.

  • Editor: Old Prefabs API that is not consistent with the new Prefabs feature set has been marked obsolete. Note that it still works for now but will produce warnings.

  • Editor: Various EditorGUI.EnumPopup changes:

    • EditorGUI.EnumPopup no longer shows Obsolete values with Error flag when using includeObsolete = true.
    • EditorGUI.EnumPopup used with includeObsolete = true will append (Obsolete) to the name on Obsolete enum values.
    • Added support for [TooltipAttribute] to add a tooltip on enum values when using EditorGUI.EnumPopup.
  • GI: Added LightProbeGroup.dering to enable/disable remove ringing from probes in the group

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

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

  • Graphics: Exposed Texture.isReadable property, allowing you to check if texture data can be read at runtime (imported textures are not readable by default).

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

  • IMGUI: Added TreeView.getNewSelectionOverride. This override is required in order to support selection via clicking/keyboard while building only the visible rows.

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

  • iOS: Added methods to the Xcode API to allow adding script and copy file build phases at a specific position. Alsoexposed a 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 GetAllBuildPhasesForTarget, GetBuildPhaseType & 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 conversion from MemoryProfiler.PackedMemorysnapshot object to UnityEditor.Profiling.Memory.Experimental.PackedMemorySnapshot file.

  • Mobile: Added support for custom focus point on both iOS and Android (new WebCamDevice.isAutoFocusPointSupported and WebCamTexture.autoFocusPoint properties).

  • Mobile: Added support for device camera available resolutions on Android and iOS: new property WebCamDevice.availableResolutions.

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

  • Playables: Added FrameData.effectivePlayState to pass the accumulated playstate 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: [Also mentioned under Features] 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: Added method PrefabUtility.HasPrefabInstanceAnyOverrides to quickly check if there's any override on a Prefab instance.

  • Profiler: Added Dispose functionality for the PackedMemorySnapshot class in order to prevent instances from keeping a lock longer than necessary on the snapshot file.

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

  • Scripting: Added diagnostics functions in UnityEngine.Diagnostics.Utils: ForceCrash, NativeAssert, NativerError, NativeWarning. See the documentation for further info.

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

  • Scripting: Exposed public API for console log path.

  • Shaders: Obsoleted [ShaderIncludePath] attribute with warning

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

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

  • Timeline: Added the method Timeline.TimelineEditor.Refresh() (along with the enum Timeline.RefreshReason) to allow users to refresh Timeline's 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 new root offset properties.

  • 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 VideoPlayer follows to schedule its samples.

  • Video: Added VideoPlayer.isPaused. Indicates whether player is in paused state (as opposed to being stopped or playing).

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

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

Fixes

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

  • 2D: Added fix for culling large Tiles for TilemapRenderer at certain Camera views. (1044578)

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

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

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

  • 2D: Crash on 'crnlib::crn_comp::append_chunks' when Packing Sprite atlas. (1058281)

  • 2D: During Sprite Atlas Packing, Unity Editor Crashes (1029266)

  • 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: Fix to prevent Tile Startup from being called more than once during placement. (1046004)

  • 2D: Fixed case of Editor freezing when applying changes to a prefab which has child GameObjects with TilemapRenderer components. (1048857)

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

  • 2D: Fixed case of Unity crashing on MonoStringNew when entering Play Mode after reopening the project and loading resources. (1066715)

  • 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 Sprite Renderer would render from the wrong Sprite Atlas with a duplicate name (because of a late binding issue). (1046157)

  • 2D: Fixed issue where SpriteAtlas inspector did not update correctly after calling SpriteAtlasExtensions.SetPlatformSetting. (1040282)

  • 2D: Fixed issue where SpriteAtlas packed sprites did not render after SetPlatformSettings and PackAtlases. (1040280)

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

  • 2D: Fixed problem where changes to the "Max Texture Size" and "Compression" settings in the Sprite Atlas weren't saved correctly. (1037553)

  • 2D: Fixed the SceneView Camera to no longer focus on the (0, 0, 0) position if a Tile is selected in the Tile Palette when no Tile Palette tool is active. (1069022)

  • 2D: Fixed GetTransformInfoExpectUpToDate when placing Tiles on Tilemap and using SRP. (1044224)

  • 2D: Image components not displaying sprite data when instantiated from a prefab and trigger a SpriteAtlas request (1038179)

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

  • 2D: There is no longer a "Invalid texture used for cursor" warning message in the console when switching between Tile Palette edit modes. (1051717)

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

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

  • 2D: Unity crashes while packing a huge sprite with sprite atlas when the graphics API is set to D3D11 or D3D12 (1030584)

  • 2D: [2D] Sprite indexing is rearranged in Atlas when switching platforms while having platform-dependent settings. (1019559)

  • 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: Application.Unload will correctly work when il2cpp scripting backend is used. (989301)

  • Android: Cancel mouse button down event when the touch input is received (1001675)

  • Android: Fix ETC2 decompression assert when downscaling 1 pixel wide/height texture (1030609)

  • Android: Fix shader compile errors caused by precision mismatch on Mali 450 devices

  • Android: Fixed a bug where DrawMeshInstancedIndirect did not work on Adreno and some Nvidia GPUs on Android. (1008623)

  • Android: Fixed a crash when upgrading an existing application that was launched at least once to ARM64. (1024014)

  • Android: Fixed a JNI global reference table overflow crash when doing a lot of AndroidJavaProxy calls per frame (1044728)

  • Android: Fixed an issue where gradle builds failed when having more than 250 files inside the streamingAssets folder (962451)

  • Android: Fixed an issue with terrain not being rendered on certain Mali devices on Vulkan. (1029328)

  • Android: Fixed AndroidJavaProxy callbacks with primitive array arguments (1036625)

  • Android: Fixed case of Auto or Never Blit modes causing a black screen on Android. (1052530)

  • Android: Fixed case of pink shader when using UI with ETC1 split alpha texture. (1067933)

  • Android: Fixed case of Time.realTimeSinceStartup not taking into account the time spent when device sleeps. This now also works reliably on old devices. (1037712)

  • Android: Fixed crash when returning null from Java native code. (1062852)

  • Android: Fixed crash when switching from scene which has active WebCamTexture (1059444)

  • Android: Fixed IPostGenerateGradleAndroidProject.OnPostGenerateGradleAndroidProject returning incorrect path when exporting a gradle project (1049213)

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

  • Android: Fixed OpenGL ES 3.1 + AEP detection.

  • Android: Fixed problem detecting bluetooth speaker on application start (1064409)

  • Android: Fixed problem with return key on external keyboard (1007047)

  • Android: Fixing graphical corruption when screen resolution is changed (785610)

  • Android: Implement TouchScreenKeyboard.selection

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

  • Android: We now show a error message in Player Settings UI if Android Adaptive icons are not set up correctly. (1064764)

  • Animation: Allow a function with overloads to be assigned to an Animation Event. Only the first function will be called by the animation event however. Also added a HelpBox with a warning message to warn the user for that (1039852)

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

  • Animation: Fixed a cosmetic issue where input boxes in the animation window would overlap when large numbers were entered. (1065467)

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

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

  • Animation: Fixed case of Animation Window Add Properties DropDown Menu size not matching its content size. (1056393)

  • Animation: Fixed case of error messages being thrown when zooming in too much in Curve Editor. (1064815)

  • Animation: Fixed case of null reference exception that could occur when switching build platforms. (1024668)

  • Animation: Fixed case of warning message being issued when changing Animation Window selection in play mode in the Editor. (1046665)

  • Animation: Fixed case of wrong CurveModifiedType being sent in function callback onCurveWasModified when changing animation events in clip. (1047683)

  • Animation: Fixed copy/paste of multiple sprite selection in the animation window introducing delays in later frames (1028025)

  • Animation: Fixed crash caused by race condition when deleting Animation component and MeshRenderer under high stress. (1041327)

  • Animation: Fixed crash on use of controller with missing statemachine reference. (1038352)

  • Animation: Fixed crash when adding an AnimationPlayableOutput with no source Playable to PlayableGraph and exiting game. (1056043)

  • Animation: Fixed crash when calling GetSource/SetSource on invalid constraints. (1044031)

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

  • Animation: Fixed crash when null animator is passed to any AnimationPlayableUtilities functions. (1041877)

  • Animation: Fixed crash when previewing a prefab with an empty game object names in its hierarchy. (1026947)

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

  • Animation: Fixed crash when you modify a controller in a PlayableGraph while in playmode (991264)

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

  • Animation: Fixed Integers and Enum in nested structs in a MonoBehaviour not beeing animated. (1019123)

  • Animation: Fixed issue where OnStateIK would fire unexpectedly on all layer with IK pass on. (1064994)

  • Animation: Fixed keyframing issues affecting animation clips with root motion in the Animation Window. (952189)

  • Animation: Fixed MonoBehaviour recording when more than one copy of the same component exists on an object. (1063505)

  • Animation: Fixed performance issues when dragging large amount of keyframes from multiple curves in the dopesheet editor. (1032730)

  • Animation: Fixed root motion evaluation in humanoid characters when manually calling animator.Update(0). (1064826)

  • Animation: Made Animator.CrossFade documentation more explicit (making Feature request 965113 obsolete)

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

  • 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: Editor crash reimporting an asset tied to a missing scripted importer (1025425)

  • Asset Import: fix switching scripted importer reapplies old import settings (1056618)

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

  • Asset Import: Fixed crasher during material asset preview creating while importing package asset (987972)

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

  • 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 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 Rig setup workflow in the Model Importer to enable setting up the avatar using scripts and presets. (1060952)

  • Asset Import: Fixed the ScriptedImporter default inspector. (1040745)

  • Asset Import: Fixed wrong texture colors when importing assets using Sketchup tinted materials. (964166)

  • Asset Import: ModelImporter would crash unity when setting a null avatar mask. (1066253)

  • Asset Import: Scripted importers selection of main asset was not always applied correctly. (969107)

  • Asset Import: ScriptedImporter changing the version number does not trigger a re-import after renaming the importer (1065609)

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

  • 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: Assets name are not part of the Preset serialization anymore. (1044464)

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

  • 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 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 an issue manifesting on a small set of hardware where clicking on a menu item under some circumstances can crash the editor (1033991)

  • 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 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 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 "Screen position out of view frustum" when zooming with mouse outside of Scene View. (983757)

  • 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 an skp file. (1004401)

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

  • 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 "Shift+Tab" does not navigate backwards on OSX. (1065620)

  • 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 the error message "Invalid memory pointer detected" is spammed in the editor log when a large number of objects are selected. (1060229)

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

  • 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 being able to save layout when invalid characters (OS specific) are present in the name. (1025369)

  • 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 ALT + SHIFT + opening the main menu instead of executing a defined shortcut (where one exists). (1073352)

  • 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 GradientEditor closing when selecting the color picker tool on OSX. (1059666)

  • Editor: Fixed case of GUI text width not being calculated correctly when GUIStyle uses Word Wrap. (1047812)

  • 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 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 preventing to create a new console from clicking the console status bar when a window is maximized. (1021153)

  • 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 Game Object preview would change after switching scene. (1038538)

  • 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 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: Presets of AssetImporter will correctly ignore all properties that are excluded from meta files.

  • 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: 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 color picker tool is now cancelled when changing keyboard focus.

  • 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: Trying to change to an invalid camera mode will throw an exception. (1033951)

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

  • Editor: [Graphview] There's a "snap indicator" when you try to connect two input ports of a same node. (1002414)

  • Editor: [Shortcut Manager] Scene view fly mode gets stuck if you hold shift and change directions (1018932)

  • 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: Calling AddCommandBuffer, AddCommandBufferAsync, and RemoveCommandBuffer will no longer allocate GC memory. (1064900)

  • Graphics: Enable to hide light gizmo for SRP

  • Graphics: ETC Texture Compressor "Fast", "Normal", "Best" dropdown options are no longer broken. (1050954)

  • 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 due to memcpy'ing overlapped memory.

  • 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: Fix JobTempAlloc warning message in SRP (1033301)

  • Graphics: Fix submitting non-instanced property arrays via DrawMeshInstanced. (1010738)

  • 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 deprecated TextureFormat errors being thrown erroneously. (1045495)

  • 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 case of wrong capsule collider height when imported from a SpeedTree asset. (1051448)

  • 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 Graphics.DrawMeshInstancedIndirect not supporting 32-bit indices on OpenGL

  • 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 resource leak (1053627)

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

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

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

  • 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: SRP: Getting a temporary, multi-sampled depth texture no longer yields a warning about the destination texture being NULL. (1014408)

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

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

  • Graphics: The VFACE variable is incorrect in shaders when rendered from a Reflection Probe (1027670)

  • Graphics: Various graphics Bugs when new SRP Batcher is ON in SampleGame,Fontainebleau and BOTD demos (1036664)

  • Graphics: Vulkan: Fixed crash with certain shaders.

  • Graphics: RenderPipelineManager.CleanupRenderPipeline() no longer allocates GC memory each frame. (1054358)

  • 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: "Disable Depth and Stencil" now works on Metal. (921435)

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

  • 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: Changing iPhone X orientation manually to upside-down portrait is no longer permitted, as it's not supported by the device. (1064081)

  • iOS: Do not crash when reading shaders from AssetBundles built before 2017.3 (1038178)

  • iOS: Fix device model detection on simulator (1033270)

  • iOS: Fix for incorrect 'Success' message when a build fails during post processing stage. (1057069)

  • iOS: Fix for iOS build failure when the bundle ID doesn't include a dot (1053292)

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

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

  • iOS: Fixed broken "Hide Mobile Input" Input Field option. (1044120)

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

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

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

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

  • iOS: Fixed iOS8 Render Texture Crash (1027704)

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

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

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

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

  • iOS: New input system: input event timestamps are now relative to those of the input system.

  • 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: Texture2D.SetPixels works with BGRA too (1037570)

  • iOS: We no longer allow building for Apple TV/iOS Simulator if only Metal is added to the graphics API list (as the 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 the iOS app will now connect to the Editor rather than Editor connecting to the app: this is more reliable. (1041492)

  • iOS: [iOS] Fix a crash on launch when using launch screen storyboards. (1023109)

  • Kernel: Added functionality in order to detect the very unlikely situation when the application runs out of instance IDs. The system will log an error message and force the application to quit. (967306)

  • Kernel: Fix editor crash when opening project that contains components with missing GameObjects, by containing them into recovery GameObjects (907367)

  • Kernel: Reduce base memory usage on devices with low amount of memory (1025415)

  • Kernel: SerializedProperty.arraySize now returns the smallest value when multiple objects are selected. (1035438)

  • Linux: Fix crash when changing layouts in Linux editor (1015932)

  • Linux: Fix keyboard input buffering at low framerates on Linux (1049679)

  • Linux: Fix low res aspect ratio UI showing up properly in Linux editor (1058359)

  • Linux: Fixed an issue that would trigger a graphics driver crash on Linux Editor shutdown. (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 tooltips to not appear / disappear correctly. (898148)

  • Linux: Fixed issue that prevented the Linux editor and player responding to CTRL-C. (1064193)

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

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

  • Mobile: Better implementation for WebCamTexture.requestedFPS property 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 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 middle button horizontal scroll in Timeline on Mac when using Apple's Magic Mouse (1030957)

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

  • Package Manager: "Failed to change file flags" on built-in packages would spam the console (1013876)

  • Package Manager: Calling PackageManager.Client.Remove with an empty string would remove all packages from the project

  • Package Manager: Cured potential crash due to unescaped literal in pathname.

  • Package Manager: Fix EditorGUIUtility.PingObject() not working if Packages root is collapsed (1049204)

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

  • Package Manager: Fix select folders while searching in two column layout and search location filter is set to "Packages" or "Assets" (1050945)

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

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

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

  • Package Manager: On Mac, process would hang in batch mode on shutdown when exiting prematuraly due to an error (1021955)

  • Package Manager: Package Manager UI now refreshes after all add/remove actions. (1064839)

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

  • Particles: Add error message when trying to play a Particle System that has not been instantiated (i.e. 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 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: 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 hid the particle material slot in the inspector (1077827, 1084251)

  • Particles: Particle sorting was incorrect with ortho camera with negative near clipping plane when using sort by distance (1056469, 1084256)

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

  • Particles: Particle System bounds ignored Shape Y scale when using Rectangle emission shape (1064275, 1084257)

  • Particles: Particles with the Render alignment set to "Facing" billboarded incorrectly with directional lights (1072493, 1084254)

  • Particles: Setting the scale of a GameObject didn't adjust the Pivot value of a StretchedBillboard ParticleSystem (1068381, 1084255)

  • Particles: Sub Emitter particles were not randomized 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: Allow a Sprite to be dragged onto the PolygonCollider2D. (1084839)

  • 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: Fix for bug when WheelCollider.GetGroundHit causes crash at Scripting::ScriptingWrapperFor if WheelCollider is null (1030966)

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

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

  • Profiler: Fixed coroutines naming 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 Players and 64MB in the Editor.

  • ps4: Fix PSVR trees when billboarded (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: Crash upon exiting Unity (963834)

  • Scripting: Editor crashes PersistentManager::ReadObject when accessing Unity API within AppDomain.CurrentDomain.DomainUnload (964296)

  • Scripting: Editor with custom theme crashes when closing with WinScreenSetup::SetWindow (1025186)

  • Scripting: Error messages for TLS handshake failures are more specific now, where previously they were almost always INTERNAL_ERROR. (1070949)

  • Scripting: Fatal Error: "pointer to object of manager 'MonoManager' is NULL" while closing the project with PanicButton extensions (1008226)

  • Scripting: FatalError on MonoManager (NULL) when existing Unity with a specific dynamic library asset (1017841)

  • Scripting: Fix crash on shutdown in standalone players when using the scriptable player loop. (1030187)

  • Scripting: Fix crash when calling DestroyImmediate(gameObject) in OnApplicationQuit. Fixes ZenInject crash that would happen sometimes after exiting play mode. (1005227)

  • Scripting: Fix error not being emitted for incorrect method signature for DidReloadScript (1021423)

  • Scripting: Fix scripting runtime version not changing when modifing it on ProjectSettings.asset from any external tool like version control / overwriting the file / etc... (1010811)

  • Scripting: Fix UnityEditor.iOS.Xcode is not found for batch mode for iOS. (1018716, 1087294)

  • Scripting: Fix: Fix crash on shutdown when calling JobHandle.Complete() or Scheduling jobs, during OnDisable during engine shutdown. (1044003)

  • Scripting: Fixed case of 'Error in CSharpNamespaceParser` being thrown when importing C# scripts containing trailing whitespaces. (1056395)

  • Scripting: Fixed crash when a Unity supported message has parameters with ref or out keyword on 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 incorrect scripting backend and profile defines being defined when building scripts in the editor. (1075345)

  • Scripting: Fixed WaitForSecondsRealtime so it can be reused. Lets users avoid GC issues. Exposed waitTime property to WaitForSecondsRealtime so it can be modified after creation. (1058067)

  • Scripting: PersistentManager::ReadObject crash when exiting Unity if VSCode plugin is installed (946976)

  • Scripting: Raise exception rather than aborting when incomplete PInvoke method is specified (1032601)

  • Scripting: References to missing assets in arrays and lists will no longer be completely lost. (1085374)

  • Scripting: The templates we use to generate scripts are now formatted to Unity-standard convention (986688)

  • Scripting: Visual Studio Project generation: Will now regenerate project when enabled built-in packages have been changed. (1030664)

  • Scripting Upgrade: Avoid extra allocation in List.AddRange. (1041305)

  • Scripting Upgrade: Fix crash when calling GetMethod("Invoke") on Delegate or MulticastDelegate type. (1085270)

  • Scripting Upgrade: Fixed a crash that would sometimes happen when entering playmode on OSX with mono 4.x (1060892)

  • 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 crash in debugger when trying to invoke a generic method. (1049288)

  • Scripting Upgrade: Fixes an issue with DriveInfo.IsReady returning true when there was no disc in the cd drive (1028143)

  • Scripting Upgrade: Fixes APIUpdater crash when project path contains $ char. (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 issues with compute shaders when switching between Mac and iOS build targets.

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

  • Shaders: Fixed setting of pass type when compiling shader variants. (1035151)

  • 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: 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 "FindTerrainTiles query rectangle too large" errors.

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

  • 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 an issue where the UI elements would distort on "Import Heightmap" window when shrinking it horizontally and vertically. (1053066)

  • Terrain: Fixed cases when there's an L shaped terrain and one of the tiles is missed when painting.

  • Terrain: Fixed create terrains gizmos to show all possible new terrain locations.

  • Terrain: Fixed issue causing "Details are not being painted according to the selected brush" (1068717)

  • Terrain: Fixed issue causing "Unable to paint across Terrain Tiles" (1068933)

  • Terrain: Fixed issue where mesh renderer would draw shadows on terrain when painted as a tree, even when the cast shadow was set to "OFF". (1050886)

  • Terrain: Fixed issue where smoothing along terrain seams would create lines/creases along the seam. (1061923)

  • Terrain: Fixed terrain auto connect.

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

  • Terrain: Fixed terrainData asset to have unique name and also newly created TerrainData assets should go in the same directory as the parent.

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

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

  • Terrain: Undo/Redo functionality for created connected Terrain Tiles. "Parent" tile is affected instead of the "child" tile (1033425)

  • Timeline: Audio plays in the Timeline if the Timeline was disabled prior to entering Play mode and enabled after exiting the Play mode (1014262)

  • Timeline: Can't locktrack when inlinescurves is selected (1017565)

  • Timeline: Clip released in invalid target will be stuck if in ripple mode (1006610)

  • Timeline: Clips in a sub-timeline don't snap to the edges of their parent. (1027725)

  • Timeline: Clips names in timeline shows the middle of the word when clip is shrinked (1025242)

  • Timeline: Converting to clips will create AnimationPlayableAsset clips instead of Recorded ones (1021763)

  • Timeline: Copied clip doesn't keep old positionning (946400)

  • Timeline: Copied track won't keep old setup (969331)

  • Timeline: Curves aren't copied in right timeline assets for playable tracks (1025464)

  • Timeline: Delayed fields don't accept commas as decimal place denominators and will set minimum values (1050374)

  • Timeline: Deleting a GameObject with a playable director containing Control Clips causes exceptions (1024272)

  • Timeline: Draging a GameObject in the track area no longer creates a control track by default. (1056197)

  • Timeline: Edit modes don't validate track drop properly (1016422)

  • Timeline: Fix temporary game object being created for custom tracks by Timeline Editor. (1082600)

  • Timeline: Fix timeline scrubbing for sub-emitters with autorandomseed. (1076850)

  • Timeline: Fix tooltip typo in control tracks. (1083618)

  • Timeline: Fixed a crash when creating a control clip with an empty timeline (1033890)

  • Timeline: Fixed an issue where dragging a clip shorter than the minimum length, or longer than the maximum length would produce a 5 seconds clip instead of clamping to the limit values (1071501)

  • Timeline: Fixed Animation Window preview of Timeline clips not linking to proper GameObject in the hierarchy (1027289)

  • Timeline: Fixed Animation Window preview of Timeline clips not showing missing path feedback (1046358)

  • Timeline: Fixed case of constraints not working in Timeline preview. (1042061)

  • Timeline: Fixed case of Exposed References being cleared when loading timelines from asset bundles. (1063994)

  • Timeline: Fixed case of root motion not being scaled properly when applied in Timeline. (934650)

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

  • Timeline: Fixed clip snap on trim in ripple mode (1043956)

  • Timeline: Fixed crash when the audio system is re-initialised while a Timeline is playing audio. (1001668)

  • Timeline: Fixed deleted clips causing linked animation window to stay locked (1027755)

  • Timeline: Fixed errors when deleting clips locked to inspectors (1029784)

  • Timeline: Fixed issue that was previously preventing correct support for animation track root object evaluation and track offset. (927718)

  • Timeline: Fixed keyframing with offsets in non-us locales (1051325)

  • Timeline: Fixed playhead indicator in nested timelines appearing out of range (1061137)

  • Timeline: Fixed redo of a duplicate clip temporarily losing it's asset reference (1063868)

  • Timeline: Fixed Reset in PlayableDirector gear menu. (1061398)

  • Timeline: Fixed Timeline not finishing when stepping using PlayMode (1063648)

  • Timeline: Fixed track selection when selecting inline curves (1030681)

  • Timeline: Fixed trim being allowed on locked tracks (1033897)

  • Timeline: Fixed: Changing a clip's duration in the inspector doesn't affect the timeline's duration (1033454)

  • Timeline: Fixed: Modifying inlines curves when there is an activation track will disable the object (1033778)

  • Timeline: Mute icon do not appear on override tracks (876029)

  • Timeline: No track validation on override tracks (1025768)

  • Timeline: NullReferenceException error thrown while dragging animation clip on track group in Timeline window (1022052)

  • Timeline: Playable tracks accept any kind of clips (984760)

  • Timeline: Removing keyframe doesn't reset the transform red color (876335)

  • Timeline: Split hotkey is trimming and creating a 1 framed clip on animation clips (1029628)

  • Timeline: Timeline allows for keyframing of materials, but does not work as expected. Shows incorrectly mapped references (1006210)

  • Timeline: Timeline Editor now maintains focus of locked timelines when using Maximize On Play (1056594)

  • Timeline: Undo a lock won't re-select the clips (1021780)

  • Timeline: Values are not removed on last Scale axis when removing keys with "Remove All Keys" (1011490)

  • Timeline: View settings are sometimes lost when digging (1020023)

  • Timeline: When recording a new clip, inline curves selection are on the first clip instead of the new one (986964)

  • Timeline: [OSX] RightClick doesn't open menu in inlines curves (1024653)

  • UI: Changing sorting order of a canvas will now dirty the scene. (1027688)

  • UI: Fix issue with RectTransform component values being wrong when dragging a Canvas prefab under another Canvas (1047865)

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

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

  • UI: Fixed crash when instantiating GameObjects containing Canvas's in coroutines. (1046498)

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

  • UI: Fixed issue with "ignore parent group" for CanvasGroup not ignoring the alpha value (910032)

  • UI: Fixed issue with child where child rect transform driven values were not being cleared when removing driven object. (1013029)

  • UI: Fixed issue with Enabling "Content Size Fitter" Constraints and then removing them, greying out the "Width"/"Height" of the GO untill Scene Reload (1013029)

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

  • UI: Fixed issue with RectTransform messing up when dragging Canvas prefab onto another Canvas (1047865)

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

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

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

  • UI: Fixed RectTransfrom position being set to 0 after attaching to disabled canvas (1030212)

  • UI: Fixed UI profiler memory leak (1058621)

  • UI: Fixed Undoing Add Component action on Canvas changing UI object positions depending on Anchor Presets (1047799)

  • UI: Fixed warning when Setting Aspect Ratio Fitter to "Fit in Parent" (1014834)

  • UI: Fixing issue where CanvasScaler wouldn't apply the first frame if the screen size matched the reference resolution. (999240)

  • UI: Fixing issue where we were trying to access vert 0 of a empty vert list for a text object. (1037923)

  • UI: Fixing issue with 16bit chars not displaying correctly. (1067159)

  • UI: Fixing issue with canvas bounds calculation trying to use a non built batch. (1038949)

  • UI: Fixing issue with Canvas with a CanvasScaler at the same resolution as the display not being positioned correctly (999240)

  • UI: Fixing issue with material not repopulating properly if mask was disabled. (994413)

  • UI: Fixing issue with UI element alpha when the option of Canvas Group has no effect if a parent has a CanvasGroup and a Canvas (910032)

  • UI: Fixing issue with UI stats not properly populating in the profiler. (1004333)

  • UI: Fixing issue with using Using (VertexHelper help = vh) as that would cause a dispose to be called on the passed VertexHelper leading to null lists (738798, 943157)

  • UI: Fixing race condition that lead to batches being rendered with no bounds (1038949)

  • UI: Fixing Unity Editor crashing when instantiating GameObjects containing Canvas and Sprites in Coroutines (1046498)

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

  • UI: Moved access to the TMP Settings to the new unified settings. (1056436)

  • UI: Removing delayed update in calling Aspect Ratio Fitter which would cause a 1 frame delay (1022548)

  • UI: Removing update as the call is only done when setting the parent, which copies the original data and then reapplies it when nessisary. (1030212)

  • UI: Setting Aspect Ratio Fitter to "Fit in Parent" 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: 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: UWP build now works with incremental compiler. (1054425)

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

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