Release notes

Known Issues in 2021.1.0a9

  • Android: Fixed issue when accessing streamable assets time is increased due to incorrect compression settings (1276114)
    This has already been backported to older releases and will not be mentioned in final notes.
    Fixed in 2021.1.0a10.

  • Editor: Fixed an issue that would result in the Unity Editor Update Check window opened in an incorrect state followed by the Editor crashing. (1285668)
    This has already been backported to older releases and will not be mentioned in final notes.
    Fixed in 2021.1.0a10.

  • Editor: Fixed being unable to rename animator parameters (1286614)
    This is a change to a 2021.1.0a1 change, not seen in any released version, and will not be mentioned in final notes.
    Fixed in 2021.1.0a10.

  • Linux: Fixed tooltip shows up in the window switcher as a separate window (1287440)
    Fixed in 2021.1.0a10.

  • Mono: Built player takes multiple seconds to shut down (1295072)

  • Serialization: Fix crash in player due to corruption in GlobalGameManager caused by usage of UIToolkit package under specific scenario. (1296253)
    This has already been backported to older releases and will not be mentioned in final notes.
    Fixed in 2021.1.0a10.

  • UI: Fixed an issue where canvas takes the Display size for RenderTexture. (1294869)
    Fixed in 2021.1.0a10.

New 2021.1.0a9 Entries since 2021.1.0a8

Fixes

  • 2D: Fixed IDE tooltip for Tilemap documentation. (1292596)

  • 2D: Fixed NullReferenceException thrown continuously on selecting Sprite Atlas V2(Experimental) Mode is selected in Editor Settings. (1294726)
    This is a change to a 2021.1.0a6 change, not seen in any released version, and will not be mentioned in final notes.

  • AI: Fixed an issue with OffMeshLink prefab leaking to the main scene after closing the prefab window. (1120451)

  • Android: Don't make gray banner when no graphics. (1199310)

  • Android: Fixed case 1287770, related to super-slow playback of video in asset bundles on Android. (1287770)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Animation: Added a null check when using culling mode and having the renderer become visible. (1294699)

  • Animation: Fixed an animation coverity defect by making sure we cannot go out of bounds. (1295247)

  • Asset Import: Fixed a rare unstable asset hash for assets with large metadata. (1285620)

  • Asset Import: Fixed wrong pivot conversion when ResampleCurves is disabled in ModelImporter. (1283884)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Asset Import: Texture Preview now updates correctly when switching from Alpha 8. (1181655)

  • Asset Pipeline: Fixed an issue where hash of a .asset file on disk was being updated locally without going through the AssetDatabase, resulting in native source assets to not be reloaded. (1183116)

  • Asset Pipeline: Previews of assets using SRP are pink when the pipeline hasn't been persisted. (1264676)

  • Documentation: Updated the documentation to describe the design of OnApplicationFocus when using Play Mode in the Editor. (1283510)

  • Editor: Double click on tab header maximizes/unmaximizes it. (1279177)

  • Editor: Fixed an issue to disable cut and copy in context when multiple objects are selected with different values. (1292164)

  • Editor: Fixed an issue to set EnumFlagsField values properly while editing with multi-selected objects. (1282836)

  • Editor: Fixed FileNotFoundException when using gzip compression for WebGL on Linux. (1268262)

  • Editor: Fixed focused inspector window tab is not updated when GameObject is renamed. (1285646)

  • Editor: Fixed missing icon size slider in project browser in one column layout. (1295227)

  • Editor: Fixed Search icon size slider. (1293955)
    This is a change to a 2021.1.0a8 change, not seen in any released version, and will not be mentioned in final notes.

  • Editor: Fixed to restrict the access of CurrentViewWidth Property within OnGUI. (1289492)

  • Editor: Null Reference check missing. (1295024)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Editor: Shows the filename if the SearchQuery don't have a name. (1293948)
    This is a change to a 2021.1.0a8 change, not seen in any released version, and will not be mentioned in final notes.

  • Editor: The input package now correctly calculates mouse deltas when the cursor is locked under Linux. (1248389)

  • Editor: The Unity Download Assistant on Windows now correctly displays progress as a positive percentage. (1294162)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Editor: The Unity Download Assistant on Windows now correctly prompts for the download and install path. (1294753)
    This has already been backported to older releases and will not be mentioned in final notes.

  • GI: Make reflection probe encoding independent of convolution type on mobile. (1269207)

  • Graphics: Fixed a crash when changing graphics API to vulkan. (1293565)
    This is a change to a 2021.1.0a7 change, not seen in any released version, and will not be mentioned in final notes.

  • Graphics: Fixed a memory leak and a potential crash, when re-writing mesh buffers contents. (1293317)
    This is a change to a 2021.1.0a1 change, not seen in any released version, and will not be mentioned in final notes.

  • Graphics: Fixed an issue where high numbers of materials would slow down unloading of Asset Bundles containing shaders. (935529)

  • Graphics: Fixed bad sort operation that was causing random crashes during lightmap baking on OSX. (1271626)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Graphics: Fixed erroneous assertion after calling Object.DestroyImmediate on a rendertarget that was just unbound. (1270401)

  • Graphics: Removed parent hiearchy keeping world transform in sceneView for VisualEffect. (1288444)

  • Graphics: Standalone Server Build forces Gfx Threading Mode Direct.

  • IMGUI: Fixed the MissingMethodException when adding elements to ReorderableList with String type. (1289219)

  • IMGUI: Fixed the text cursor becoming invisible if an exception was thrown from inside of SelectableLabel. (1293370)

  • iOS: Background audio is no longer cut when "Mute Other Audio Sources" is unchecked. (1259748)

  • iOS: Background audio no longer stopped when Unity audio is disabled. (1286259)

  • iOS: Fixed game crashing after using Social.LoadUsers and then changing scene. (1270230)
    This has already been backported to older releases and will not be mentioned in final notes.

  • License: Fixed broken login during batchmode license activation. (1294709)

  • macOS: Fixed an issue where Editor windows turn black when dragging them from one monitor to another. (1294228)
    This is a change to a 2021.1.0a8 change, not seen in any released version, and will not be mentioned in final notes.

  • macOS: Fixed non-development Apple silicon builds not running. (1293633)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Mobile: Fixed iOS plugin compile flags not updating on build append. (1254117)

  • Package Manager: Fixed an issue on startup where assets in immutable packages could be incorrectly logged as having been modified. (1279382, 1287305)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Package Manager: Fixed the issue where package name in dependencies does not match either the display name or name.

  • Package Manager: Fixed the issue where TextFields added to Package Manager window show as labels. (1285449, 1285806)

  • Package Manager: Fixed when a user switches account, and the package list refresh the new assets, a null ref exception occurs.

  • Physics: Fixed OnCollision events not happening when the listening script was added to a GameObject after the ArticulationBody component. (1258247)

  • Prefabs: Fixed so deleting the context parent in Prefab Mode in Context is prevented from the UI. (1291699)

  • Profiler: Fixed a crash on Editor shutdown if Profiler window is open. (1293834)
    This is a change to a 2021.1.0a6 change, not seen in any released version, and will not be mentioned in final notes.

  • Profiler: Fixed a crash while using Profiler ProfilerProperty and ProfilerFrameDataIterator API. (1289580)

  • Profiler: Fixed an issue when Profiler might lose metadata for markers spanned across multiple frames. (1288339)

  • Profiler: Fixed an issue with wrong chart scale after profiler capture load. (1283344)

  • Profiler: Fixed Mesh runtime size reporting in development builds, previously we would not track some of the mesh data when reporting memory footprint. (1268289)

  • Scripting: Fixed a bug where IL postprocessors like used in dots packages fail to run when editor installation path contains a space. (1294155)
    This is a change to a 2021.1.0a6 change, not seen in any released version, and will not be mentioned in final notes.

  • Scripting: Fixed a crash when calling fast memory APIs with null CommandBuffer. (1290649)

  • Search: Fixed double sided Global Illumination field is clipped with its checkbox. (1294995)
    This is a change to a 2021.1.0 change, not seen in any released version, and will not be mentioned in final notes.

  • Search: Fixed icon for edit collider is blurred in Preview Inspector of the Quick search window. (1294996)
    This is a change to a 2021.1.0 change, not seen in any released version, and will not be mentioned in final notes.

  • Search: Fixed search window is not getting refreshed for added components. (1294997)
    This is a change to a 2021.1.0 change, not seen in any released version, and will not be mentioned in final notes.

  • Search: Removed default search shortcut bindings. (1295199)
    This is a change to a 2021.1.0 change, not seen in any released version, and will not be mentioned in final notes.

  • Serialization: Ensure that SerializedProperty.DataEquals works consistently even on fields prior to an alignment boundary. (1294238)

  • Shaders: Fixed allocator errors due to orphaned memory when canceling a build during shader compilation. (1224325)

  • Shaders: Fixed Integer property type not affecting uniform state and fixed function state in shaders. (1294048)

  • Shaders: ShaderUtil.ClearShaderMessages() now actually clears all the current shader errors. Any previously encountered errors will come back when trying to compile the shader again either for build or rendering, or when reimporting. (1283645)

  • Windows: Fixed frame rate issues in exclusive fullscreen mode when running with VSync disabled at high frame rates with Direct3D 11 graphics API. (1293091)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Windows: Removed UWP "USB Device" Build and Run option. (1292590)

Changes

  • UI: Changed license file based on legal requirements.

Improvements

  • Android: Use Android 11 setFrameRate API when Optimized Frame Pacing is enabled and Vulkan is used, similar to OpenGL ES.

  • Package: Upgrading input system package to 1.0.1.

Preview of Final 2021.1.0a9 Release Notes

Fixes

  • 2D: Added missing tooltips in the Sprite Skin inspector (1285255)

  • 2D: Clear existing Tile data in Tilemap when refreshing Tilemap due to editor validation. (1272540)

  • 2D: Fixed dynamic batching of SpriteRenderers with TilemapRenderers in Individual Mode with the BaseMap shader property.

  • 2D: Fixed exception when upgrading/downgrading packages used by Sprite Editor Window that is currently active. (1242988)

  • 2D: Fixed Grid Selection outline when undoing a Grid Select action. (1275085)

  • 2D: Fixed IDE tooltip for Tilemap documentation. (1292596)

  • 2D: Fixed missing Sprite reference after loading scene from AssetBundles. (1274645)

  • 2D: Fixed null exception error when entering PlayMode with the Tile Palette window open and Inspector window open inspecting a GameObject. (1287664)

  • 2D: Fixed Sprite Editor Window doesn't show the Sprite when the Inspector is locked and the Sprite is not selected in the Project window.

  • 2D: Fixed Sprite with no animation data is being processed during AssetPostProcessor.

  • 2D: Made com.unity.2d.sprite and com.unity.2d.tilemap discoverable in Package Manager.

  • 2D: Name Tiles based on Texture of Sprite when creating Tiles from nameless Sprites. (1281572)

  • 2D: Order Tile Palette better when creating Tiles from a Sprite Texture when the size of Sprites are of multiples of each other. (1281560)

  • 2D: Sprite Editor Window shows Editor Window's 'Save Changes' dialog before if it is closed if there are pending changes that needs to be apply. (1274232)

  • 2D: Sprite is removed from Objects for Packing list of Sprite Atlas when using undo after replacing the Sprites. (1261537)

  • 2D: Store modified values of Grid Selection when asset/s are saved. (1287084)

  • AI: Fixed an issue with OffMeshLink prefab leaking to the main scene after closing the prefab window. (1120451)

  • AI: Fixed editor crash when a mesh used for baking the NavMesh gets destroyed. (1070148)

  • AI: Fixed editor crash when accessing null terrain tree meshes. (1271682)

  • AI: Fixed exception when requesting a path with a negative agent type ID. (1278829)

  • AI: Fixed issue with crash during building Navmesh from multi-floor multi-area-type source. (1273805)

  • AI: Fixed NavMeshAgent oscillates across a point when moving close to edges. (1274343)

  • Android: Added .mov to supported extensions in VideoPlayer. (1282206)

  • Android: Added a warning if making a signed release Android build without Arm64 binaries. (1289652)

  • Android: Don't make gray banner when no graphics. (1199310)

  • Android: Export gradle project failing when using custom base build.gradle only the first time. (1245249)

  • Android: Fixed Android Export Project option when Il2CPP used with C++ Compiler Configuration Master. (1273917)

  • Android: Fixed black build settings window when SDK/build-tools are missing. (1230551)

  • Android: Fixed bug where draws after indirect draw result in corrupt geometry on Adreno. (1271258)

  • Android: Fixed compilation error when using framebuffer fetch on single-channel texture formats. (1261534)

  • Android: Fixed crash when using UAV with Vulkan on older Mali devices. (1256902)

  • Android: Fixed GL_EXT_shader_framebuffer_fetch not being added when fragment method is in an included file.

  • Android: Fixed issue when Unity Remote system is unable to connect to Android devices due to incorrect adb executable file path. (1251622)

  • Android: Fixed issue when using RenderDoc on Android with Vulkan on some Adreno devices caused by Unity's ASTC HDR support detection. (1287309)

  • Android: Fixed messages, pointing to Preferences menu item (OSX vs. Windows). (1213519)

  • Android: Fixed mismatch between deltaTime and unscaledDeltaTime. (1266965)

  • Android: Fixed problem with camera capture session related crash while enabling/disabling camera access permission. (1262468)

  • Android: Fixed problem with custom Aspect ratio value in manifest file. (1284210)

  • Android: Fixed regression in 180 degree rotation reporting. (1273594)

  • Android: Fixed to automatically deselect ARM64 when switching to Mono, restore when switching back to IL2CPP. (1281826)

  • Android: Fixed wrong caret position inside InputField when typing/deleting text fast. (1252556)

  • Android: Greatly reduced the overhead of GetBigLittleConfiguration() call happening every frame. (1285344)

  • Android: SafeArea size not being correctly calculated when resolution is changed. (1285223)

  • Android: When running Android SDK tool with elevated privileges use JDK bundled with Unity, previous behavior was the SDK tool would use java from PATH env variable, and would fail if there's no java installed and there's no java path set in PATH env variable. (1290206)

  • Animation: Added a null check when using culling mode and having the renderer become visible. (1294699)

  • Animation: Adding multiple StateMachineBehaviours to an object will now properly display in the Inspector Window. This may cause generated behaviours on Playables to also be displayed in the inspector in play mode (see case 1173312). (1278575)

  • Animation: Fixed a bug where stepped animation was not evaluated properly. (1277195)

  • Animation: Fixed an animation coverity defect by making sure we cannot go out of bounds. (1295247)

  • Animation: Fixed an issue where the animation clip timeline is not aligned to the left if its length is lower than 0.05s. (1267304)

  • Animation: Fixed crash caused by AnimationState using invalid reference. (1256962)

  • Animation: Fixed crash caused by Avatars in Prefabs. (1278233)

  • Animation: Fixed crash when calling SamplePlayableGraph with Custom Playable. (1272325)

  • Animation: Fixed humanoid mask not overriding correctly the base mask when there is transform. (1218558)

  • Animation: Fixed timeline playback being disabled after unlinking the AnimationWindow. (1285659)

  • Animation: MeshFilter.mesh property is now animatable. (1228956)

  • Asset Bundles: Fixed main thread hitching when loading an AssetBundle asynchronously while loading other assets in the background.

  • Asset Bundles: Fixed occasional graphics job related crash when unloading an AssetBundle that contains Shaders. (1264580)

  • Asset Import: Added Help box in the Model importer rig panel to inform about the state of QualitySettings.skinWeights when the Model importer skin weights value is higher. (1194866)

  • Asset Import: Fixed "ArgumentOutOfRangeException: StartIndex cannot be less than zero" errors when selecting some specific Models. (1287132)

  • Asset Import: Fixed a rare unstable asset hash for assets with large metadata. (1285620)

  • Asset Import: Fixed bug where renaming a script doesn't properly take effect on asset import workers.

  • Asset Import: Fixed corrupted PSD file could crash the Editor. (1284882)

  • Asset Import: Fixed issue where FBX and Sketchup files with paths longer than 260 characters cannot be imported on Windows.

  • Asset Import: Fixed issue where Reset does not apply to the 'Bake Axis conversion' setting in ModelImporter. (1228920)

  • Asset Import: Fixed such that Arguments are used as doubles rather than floats, allowing the FindGridCell method to have greater boundaries. (1280470)

  • Asset Import: ModelImporter's remap Materials entries do not accept sub-assets materials anymore. (1243094)

  • Asset Import: Removed unsupported layerElement reference mode error logs. (1225010)

  • Asset Import: Texture Preview now updates correctly when switching from Alpha 8. (1181655)

  • Asset Pipeline: Added warning dialog before running out of disk space. Check is done on every refresh.

  • Asset Pipeline: Asset db file scanner will now error report files/folders that have a path or name that exceeded current limits. Path limit is 505/510 bytes (510 for meta file) and file name limit is 250/255 (255 for meta file). This fixes also an issue that would occur if a folder name was too long for getting a .meta counterpart. (1280028)

  • Asset Pipeline: Asset Pipeline: Crash fix that could happen, when leaving safe mode using the "leave safe mode" button. (1290368)

  • Asset Pipeline: Deleting an asset in use in import worker could cause an infinite refresh loop. (1263755)

  • Asset Pipeline: Fixed an issue where hash of a .asset file on disk was being updated locally without going through the AssetDatabase, resulting in native source assets to not be reloaded. (1183116)

  • Asset Pipeline: Fixed for invalid artifact id assert that could get raised, when undo was restoring an object from a deleted asset. (1254071)

  • Asset Pipeline: Fixed issue when calling AssetDatabase.IsValidFolder() with a path that has a trailing slash at the end. (1153840)

  • Asset Pipeline: Fixed issue where Assertion failed on expression: 'txn.IsBlacklistEmpty()' was being triggered, due to certain checks not happening before a Refresh was deemed completed. (1247090)

  • Asset Pipeline: Fixed shutdown discovered when reimporting all assets. (1274119)

  • Asset Pipeline: Fixed: changes made to Asset outside Unity are not applied during Play Mode when "Recompile After Finish Playing" is set in preferences. (1150790)

  • Asset Pipeline: Logging in import worker will now always log to local import worker log file. (1286454)

  • Asset Pipeline: Previews of assets using SRP are pink when the pipeline hasn't been persisted. (1264676)

  • Audio: Fixed incorrect behavior of audio filter components on game object with multiple attached audio sources. Previously the effects were only applied to the first source, now the effects are instantiated per source. (1241932)

  • Audio: Fixed initialization issue on macOS when no audio input devices are available.

  • Audio: Fixed inspector window not immediately showing the "Wet" slider after selecting "Allow wet mixing" on an effect in the AudioGroup Strip View. (1276039)

  • Audio: Fixed macOS editor crashing when repeatedly stopping and playing the AudioRenderer. (1283073)

  • Audio: Fixed potential volume fluctuation in timeline audio on scene change. (1198128)

  • Bug Reporter: Bug Reporter throws an error if the project contains a shortcut to a path outside of the Assets folder. (1160328)

  • Build Pipeline: Fixed a case where calling GetImplicitAssetBundleName or GetImplicitAssetBundleVariantName on a deleted asset would throw an incorrect exception and return invalid values. (913864)

  • Build Pipeline: Fixed a case where IOrderedCallback returning int.Max or int.Min could be called in incorrect order. (1282571)

  • Build Pipeline: Fixed a case where selecting a dll while the Build Window was open could throw exceptions. (1137088)

  • Build Pipeline: Fixed a case where Textures generated from SpriteAtlas v2 would shift their locations at build time. (1293028)

  • Build Pipeline: Fixed instability in Lzma compressor where a complete signal could be fired and the compressor will exit before processing all data. (1170712)

  • Build Pipeline: GlobalObjectIdGlobalObjectIdentifiersToObjectsSlow returned random objects when then GlobalObjectId references a non-existing object. Now fixed. (1291291)

  • Build Pipeline: StreamingAssets AssetBundle manifest is now provided by default to PlayerBuild, which will result in types being referred by AssetBundle being kept in the build even if Player.Optimization.Managed Stripping Level is set to Medium or High.

  • Burst: ABI struct ret/by val for trivial aggregates for WASM is now respected.

  • Burst: Allow to call [BurstCompile] functions from other [BurstCompile] functions.

  • Burst: Bitmask intrinsic was broken on non intel platforms.

  • Burst: Burst will now error if a cpblk was used to copy into a [ReadOnly] parameter or field.

  • Burst: Debug symbols are now output when using the native toolchain on mac.

  • Burst: Debug symbols for function names on some platforms are no longer hashes.

  • Burst: Dwarf symbols from multiple modules (e.g. multithreaded AOT compilation) now have correct compilation unit information.

  • Burst: Filter symbol warnings to prevent them reaching logs.

  • Burst: Fixed a bug where a static readonly variable that was a System.Guid would result in an internal compiler error.

  • Burst: Fixed a bug where a stfld into an element of a vector could deduce the wrong type for the underlying vector.

  • Burst: Fixed a bug where if you used an enum argument to a function to index into a fixed array, a codegen error would occur.

  • Burst: Fixed a bug where the mm256_cvtepi32_ps intrinsic would crash the compiler.

  • Burst: Fixed a bug whereby for platforms that require us to write intermediate LLVM bitcode files, UTF paths would be incorrectly handled.

  • Burst: Fixed a bug with constant expressions that could cause a compile-time hang.

  • Burst: Fixed a bug with float/double vector constructors of Unity.Mathematics that take half or half vector parameters.

  • Burst: Fixed a poor error message when a generic unsupported type (like a class or an auto-layout struct) combined with an unsupported managed array (like (int, float)[]) wouldn't give the user any context on where the code went wrong.

  • Burst: Fixed an internal compiler error when nested managed static readonly arrays were used (produces a proper Burst error instead now).

  • Burst: Fixed an issue that could prevent the Editor from shutting down.

  • Burst: Fixed an issue where UNITY_DOTSPLAYER builds not building for NET_DOTS would be unable to compile do to references to UnityEngine.

  • Burst: Fixed handling of conversion from signed integer to pointer which caused issues as discovered by Zuntatos on the forums.

  • Burst: Fixed incorrect struct layout for certain configurations of explicit-layout structs with overlapping fields.

  • Burst: Fixed permissions error when running lipo tool to combine libraries.

  • Burst: Fixed potential error that could occur when unloading cached libraries.

  • Burst: Fixes a caching issue where stale cached libraries may have been used if a project was copied to a different folder, or Unity was upgraded to a newer version.

  • Burst: If targeting multiple iOS architectures, produce a combined burst library containing all architectures, this fixes "New Build System" on xcode version 12.

  • Burst: Inspector slow down when scrolling/moving the window on large listings.

  • Burst: Job Entry point symbols should now reflect the job name and type rather than a hash in callstacks/native profilers.

  • Burst: Job entry points without symbols now use the Execute location rather than pointing to unknown/unknown.

  • Burst: Sleef fallback to scalar float for WASM.

  • Burst: We no longer attempt to replace the debug metadata multiple times for a given export.

  • Core: Fixed static analysis issue:
    Non-static class member "isListening" is not initialized in this constructor nor in any functions that it calls. (1291660)

  • Documentation: Updated the documentation to describe the design of OnApplicationFocus when using Play Mode in the Editor. (1283510)

  • DX12: Fixed a crash when RayTracingShader.Dispatch is called with an acceleration structure that was deleted in the meantime. (1281285)

  • DX12: Fixed alembic mesh udpating.

  • DX12: Fixed for incorrect parameter type on native plugin API IUnityGraphicsD3D12v5::TextureFromRenderBuffer and IUnityGraphicsD3D12v6::TextureFromRenderBuffer. (1278695)

  • DX12: Fixed for shader resource view of indirect argument buffer. (1276431)

  • DX12: Fixed [D3d12 - "Failed to create a heap!"] message when starting editor in D3D12 mode. (1284462)

  • Editor: Added a foolproof EditorGUIUtility.ResetGUIState(); when drawing inspectors in override preview panel. (1242693)

  • Editor: Added a new flag called forceChildVisibiityfor the SerializedObject to control the visibility of hidden children. (1273848)

  • Editor: Added missing keycode mappings for special characters (e.g. ^, ~, |). (1281473)

  • Editor: Added some missing sizes (64, 128, 256) for selected icons. (1249745)

  • Editor: Allow Hyphen character in Input Field when ContentType Property is set to Name. (1270473)

  • Editor: Checking and enabling VSync when Unmaximizing the game view. (1254640)

  • Editor: Correct prefab positioning in hierarchy after undo and redo are called. (1268662)

  • Editor: Creating a terrain material from a terrain preset no longer causes a null reference access warning. (1240871)

  • Editor: Cursor is now locked to the center of the gameview in the linux editor instead of the center of the screen when cursor lock is called in playmode. (1272190)

  • Editor: Detect circular asset references, instead of crashing. (1249114)

  • Editor: Double click on tab header maximizes/unmaximizes it. (1279177)

  • Editor: Ensure there's proper Prefab and context menu handling for a ReorderableList as a whole, also when removing elements from the list. (1292522)

  • Editor: Expand/collapse icon settings when clicking on label. (1195293)

  • Editor: Exposed BuildUtility.BuildCanBeAppended to check for possibility of BuildOptions.AcceptExternalModificationsToPlayer usage. (1288856)

  • Editor: Fixed "Frame Selected" shortcut being invoked when Game View is focused and Play Mode is active, improving performance. (1252043)

  • Editor: Fixed 'Toggle hidden packages visibility' does not affect embedded/local packages. (1245277)

  • Editor: Fixed -api-profile flag causing editor to write to ProjectSettings/ProjectSettings.asset using binary serialization mode despite ForceText being configured in ProjectSettings/EditorSettings.asset.

  • Editor: Fixed a crash that could occur when Burst compilation was scheduled before Burst had been initialized.

  • Editor: Fixed a potential null reference exception in the Editor Tool Manager. (1251555)

  • Editor: Fixed a small issue with item position varying slightly in the editor when display scaling is set to something other than 100%. (1269754)

  • Editor: Fixed adding and removing components expands collapsed components view in the inspector window. (1280892)

  • Editor: Fixed an error where Slider1D was called with an invalid vector. (1284682)

  • Editor: Fixed an issue on Mac where open/save dialogs could not use copy/paste keyboard or menu shortcuts. (1252424)

  • Editor: Fixed an issue to avoid "<multi>" string in the "Aniso Level" slider's value input field, in the Inspector, with multiple textures selected. (1226069)

  • Editor: Fixed an issue to avoid overlapping of Input fields and their label in CustomRenderTextureEditor's Inspector if the Inspector is resized. (1268481)

  • Editor: Fixed an issue to avoid trimming of text in header, if header parameter contains line separator. (1269034)

  • Editor: Fixed an issue to create Sorting Layers with the different names. (1268131)

  • Editor: Fixed an issue to disable cut and copy in context when multiple objects are selected with different values. (1292164)

  • Editor: Fixed an issue to set EnumFlagsField values properly while editing with multi-selected objects. (1282836)

  • Editor: Fixed an issue to set static flag in inspector on 'Set to Value of X' in context menu . (1221145)

  • Editor: Fixed an issue where Account, Layer and Layout buttons disappear when resizing the editor beyond the width of the screen in the macOS. (1254983)

  • Editor: Fixed an issue where deselecting floating preview window throws null reference exception and GUI errors. (1278192)

  • Editor: Fixed an issue where, after Play In Editor completed, settings were reset to default.

  • Editor: Fixed an issue with adding new tags and sorting layers in the Preset of 'Tags & Layers'. (1268174)

  • Editor: Fixed an issue with object selector closing inappropriately on click. (1286812)

  • Editor: Fixed Animation window keyframe Copy/Paste keyboard shortcuts not working before the main curve area has been clicked on. (1265480)

  • Editor: Fixed case case where terrain objects could still be selected despite picking being disabled. (1251889)

  • Editor: Fixed changing editor mode shows "Failed to load window layout". (1293093)

  • Editor: Fixed ConsoleWindow copy for SafeMode. (1276089)

  • Editor: Fixed crash in GizmoUtilTests. (1274537)

  • Editor: Fixed crash when duplicating a GameObject with HideInHierarchy flag. (1288394)

  • Editor: Fixed CSharpCompiler.CompileAssemblyFromSource on Linux.

  • Editor: Fixed custom cursor appears while hovering mouse on the Package Manager Window. (1186485)

  • Editor: Fixed Custom font reset option not resetting all the values to their defaults. (1268319)

  • Editor: Fixed custom layout submenu item is showing when it should not (i.e. Window/Panels). (1265713)

  • Editor: Fixed default index doesn't filter prefabs using t:prefab. (1284865)

  • Editor: Fixed doc and typo in Scene Template Pipeline. (1286440)

  • Editor: Fixed ETC Compression Legacy/Default that auto fills fast/normal settings. (1277170)

  • Editor: Fixed FileNotFoundException when using gzip compression for WebGL on Linux. (1268262)

  • Editor: Fixed focused inspector window tab is not updated when GameObject is renamed. (1285646)

  • Editor: Fixed GameObjects with Playable Director component can't be turned into a prefab when Timeline window is open in preview mode. (1223541)

  • Editor: Fixed initial size of SafeMode if first time usage. (1275799)

  • Editor: Fixed invisible asset created in the project browser after renaming it with 260+ characters. (1281291)

  • Editor: Fixed issue where not all memory held by the editor console was freed after it had been cleared. (1264725)

  • Editor: Fixed issue where scene visiblity/picking didn't work with objects in the DontDestroyOnLoad scene. (1234777)

  • Editor: Fixed issue where the Editor Script extending GameView function like Device Package in Non-English(e.g. Japanese) raises exceptions every frame. (1275960)

  • Editor: Fixed issue with the alignment of certain buttons in some of the 2D colliders. (1281292)

  • Editor: Fixed LOD Group presets not to include references to renderers as these are related to Game Objects rather than project assets. (1251159)

  • Editor: Fixed missing icon size slider in project browser in one column layout. (1295227)

  • Editor: Fixed modal window becoming non-interactable when creating a child modal window. (1215161)

  • Editor: Fixed not being able to delete array elements via keyboard 'Delete' key. (1260899)

  • Editor: Fixed organization refresh every tick. (1280142)

  • Editor: Fixed ping highlight does not mark a folded child GameObject in the Hierarchy correctly when scrolling is required to reach the object. (1171103)

  • Editor: Fixed Play and Pause button toggle icons not loading the correct "On" state when entering Play mode.

  • Editor: Fixed Player Settings Reset not clearing some icons for Android and iOS. (1263065)

  • Editor: Fixed player settings visual glitch, "Metal API Validation" checkbox had an extra indentation level.

  • Editor: Fixed rectangle selection box sometimes does not select all vertices in the rectangle when editing shape for Shadow Caster 2D. (1282153)

  • Editor: Fixed repaint during Drag and drop. (1282237)

  • Editor: Fixed repaint during Drag and drop. (1288096)

  • Editor: Fixed resize hover state. (1212854)

  • Editor: Fixed restoration of static EditorGUI fields in case of exception during rendering of audio mixer effect inspector. (1232339)

  • Editor: Fixed scene view move/rotate/scale handles not rendering if editor is using OpenGL ES 2 graphics API. (1287914)

  • Editor: Fixed SceneHierarchy renaming using the context menu while a renaming is already active. (981190)

  • Editor: Fixed script order exception when adding scripts from dll. (1280737)

  • Editor: Fixed search index incremental update progress sometime never finishes. (1292594)

  • Editor: Fixed SearchField showing a clear button when passed a null search text string. (1252262)

  • Editor: Fixed spacing in warning message when attempting to attach a debugger to the Editor. (1254306)

  • Editor: Fixed spurious memory leak warning when using JobHandle.CombineDependencies() with long-running jobs. (1284488)

  • Editor: Fixed the issue where AddComponentMenu could have folders with no name. (1259764)

  • Editor: Fixed the issue where game object name could be set to empty string when changed in inspector window. (1169191)

  • Editor: Fixed the issue where Game View focus is lost when entering Play mode with maximized Game View. (1252097)

  • Editor: Fixed the issue with Editor mode defaulting to Normal after restart. (1156788)

  • Editor: Fixed the issue with Slider Component using an Image for its Fill Rect field not marking the Image's Fill Amount property as driven. (1264829)

  • Editor: Fixed the issue with space between rectangles drawn using GUILayout. (1282874)

  • Editor: Fixed the Package related MenuItem issue. (1233571)

  • Editor: Fixed the title issue with a tooltip. Since the name of the texture you have selected is already there where you clicked, a tooltip is sufficient showing the full name if it is not being fully visible due to size constraint. (1248621)

  • Editor: Fixed the Unity crash handler on Windows to use the active project of the editor from which it spawned when creating bug reports. (1246875)

  • Editor: Fixed to restrict the access of CurrentViewWidth Property within OnGUI. (1289492)

  • Editor: Fixed Tools.ViewTool returning ViewTool.Pan when not in GUI context. (1165779)

  • Editor: Fixed undoing color change while picker is open produces a warning. (1262695)

  • Editor: Fixed UnityEngine.Selection.objects should not return nulls. (1274421)

  • Editor: Fixed Arrow Left and Arrow Right keys not collapsing and expanding array elements. (1281321)

  • Editor: Fixes Script Execution Order Add Item drop-down menu in Project Setings not opening in the Windows Editor when there are over 1000 items, prevents drop down menu item insertion when system limit is reached instead of preventing insertion above 1000 item. (1265757)

  • Editor: Handle null camera case in some of Handles functions, was for example producing a null reference exception when opening a ProBuilder UVEditor with a face selected. (1242263)

  • Editor: Handle Set/Clear As Active Parent Object action Undo correctly. (1275084)

  • Editor: Include Asset Database dependencies when exporting packages. (1250495)

  • Editor: Last selected console log entry now stays active after search filter is removed. (1264776)

  • Editor: Lightmap visualization tonemapping now works on Editor start. (1279800)

  • Editor: Made 3D RenderTexture inspector use 3D Texture preview. (1227413)

  • Editor: On Windows, LTS builds of the editor will now each have their own entry in Add/Remove programs. (1267038)

  • Editor: On Windows, when using the mouse in a Unity window, the wrong mouse position is used in other Unity windows. (1275064)

  • Editor: Optimized rendering of TreeView when it has a large selection set.

  • Editor: Preview Objects names when selecting multiple assets are now displayed correctly. (1184882)

  • Editor: Rare crash when several editors are opened fixed.

  • Editor: Reduced unnecessary gameview repaint during lod crossfade animations.

  • Editor: Reverted changes regarding DS-1131.

  • Editor: Roslyn analyzer rulesets are now correctly applied for script compilations that happen very early during editor startup. (1273682)

  • Editor: Scene/Game view gizmo fadeout is less aggressive now, and can be user controlled via "Fade Gizmos" slider in Gizmos window. (1274317)

  • Editor: Since the picking zones were increased for touch (tablet + finger) it seems that tablet users have trouble using scrollbars because the splitter gets in the way.
    The behavior is reverted. (1240329)

  • Editor: The camera inspector FOV slider now correctly adjusts its range when the FOV axis is horizontal. (1219321)

  • Editor: The green button on windows in macOS now shows menu items correctly enabled when button is held. (1268232)

  • Editor: The input package now correctly calculates mouse deltas when the cursor is locked under Linux. (1248389)

  • Editor: The Windows standalone uninstaller now correctly cleans up all files and removes the install directory. (1277752)

  • Editor: Transform component inspector context menu is better organized now (Copy/Paste/Reset items under their own submenus). (1264870)

  • Editor: Update GUI.Color to reflect that it doesnt get effected in personal addition. (1273117)

  • Editor: Updated the EULA for Mac installers. (1274616)

  • Editor: When app bundle identifier contains invalid chars (iOS/Android), remove them with warning. (1183580)

  • Editor: When installing the Windows editor, installing Linux Mono support alongside Linux IL2CPP support will no longer overwrite Linux IL2CPP support. (1276104)

  • GI: Added a Gizmo for the Disc Light. (1273193)

  • GI: Backup and restore builtin parameters when rendering cubemaps. (1242415)

  • GI: Fixed cookies on baked point lights ignoring light rotation. (1289490)

  • GI: Fixed error message in console regarding GPULM when GPU doesn't meet GPULM requirement. (1289660)

  • GI: Fixed HDR reflection probe baking when editor is in mobile platform mode with 11.11.10 HDR format active. (1280354)

  • GI: Fixed Radeon Pro denoiser artifacts when using HDR lightmaps. (1272945)

  • GI: Fixed Static Analysis Defect 53772 in EnlightenJobHelpers.h: Passing tainted expression "sz" to "resize", which uses it as an allocation size. (1290400)

  • GI: HashTexEnv in Materials.cpp can be expensive. (1138460)

  • GI: Made indirect bounce intensity animatable. (1278770)

  • GI: Make GPU lightmapper work on Apple Silicon DTK.

  • GI: Make reflection probe encoding independent of convolution type on mobile. (1269207)

  • GI: Prevent CPU version of A-Trous lightmap denoiser from introducing triangle-aligned artefacts into the filtered output. (1255973)

  • GI: Stop writing to stored LightProbes when setting baked coefficients in play mode. (1265063)

  • GI: The "Auto Generate" is now available on every tab in the Lighting Window. (1266957)

  • GI: The user observed that their scene was still being lit after they pressed the clear baked data button. This was due to the ambient probe and the default reflection probe, created from the skybox, never being reset. This change very simply resets these fields when the button is pressed. (1200802)

  • GI: The user observed that upon deleting a lightmapped scene object and undoing the deletion, the scene object was no longer being lit. This was caused by the fact that we do not serialize lightmapping data such as indices and ST. This change explicitly handles the case where a lightmapped scene object is deleted in an undo-able manner. (1225425)

  • GI: Wrong GPU chosen when baking using eGPU. (1274223)

  • Graphics: Added a space in the Tier list UI in Graphic Settings. (1259327)

  • Graphics: Added backbuffer MSAA support to OSX/Game View. (1289045)

  • Graphics: Added exposure slider to the inspector of HDR RenderTextures (excl 3D) & 2D/2DArray textures. (1225327)

  • Graphics: Added missing macros to sample 2D textures.
    Fixed issue on Switch where declaration of a texture with full-float precision was ignored.

  • Graphics: Added missing script API taking GraphicsBuffer parameters, for SetBufferCounterValue and SetBufferData.

  • Graphics: Added support for Buffer<> and RWBuffer<> in all shader stages (not just compute) for Nintendo Switch.

  • Graphics: Added support for CreateExternalTexture with the Vulkan API.

  • Graphics: Added SupportsRandomWriteOnRenderTextureFormat to query if a given RenderTextureFormat can be used when enabling the random write flag. (1266102)

  • Graphics: Added the support of a custom shader editor per render pipeline with the CustomEditorForRenderPipeline ShaderLab keyword allowing to fix HDRP and URP material editor issues. (1276432)

  • Graphics: Adding Chinese pure dynamic font characters causes atlas memory leak of about 0.5mb each. (1273364)

  • Graphics: Clarifies and simplifies the texture resource views within the Xcode GPU frame debugger. (1281175)

  • Graphics: Corrected list of formats supported by Virtual Texturing.

  • Graphics: Dirty prefab when dirtying a material used by that prefab. (1282291)

  • Graphics: Editor text on Mac OSX will no longer randomly become corrupted. (1267885)

  • Graphics: Encoding an R8-image to JPG or TGA no longer results in a cyan-tinted image; the result is now gray, as is the case for R16-images and for encoding to PNG. (1259972)

  • Graphics: Extended supported formats for GPU readback. (1123748)

  • Graphics: Fixed a casting issue when assigning int to bool with HLSLcc.

  • Graphics: Fixed an issue where high numbers of materials would slow down unloading of Asset Bundles containing shaders. (935529)

  • Graphics: Fixed assert generated when Light Probe usage is Off when using ray tracing effects. (1291419)

  • Graphics: Fixed blit operation when source is null and a custom shader is being used. (1278604)

  • Graphics: Fixed case 1086548 (RenderToCubemap offsets shadows when the material on the mesh has GPU Instancing enabled), by adding support for STEREO_CUBEMAP_RENDER_ON for instanced rendering. (1086548)

  • Graphics: Fixed case 1266922.

  • Graphics: Fixed custom shaders with no explicit Pass defined to respect the "receive shadows" flag. (1050091)

  • Graphics: Fixed depth buffer size check when implicit backbuffer depth is used, removing error message spam. (1268201)

  • Graphics: Fixed drop of VisualEffectAsset within a prefab. (1285794)

  • Graphics: Fixed erroneous assertion after calling Object.DestroyImmediate on a rendertarget that was just unbound. (1270401)

  • Graphics: Fixed erroneous precision when deducing the precision of a sampler from a texture and using inline state. (1271276)

  • Graphics: Fixed for setScissorRect crashing on metal when adjusting panels in editor. (1256241)

  • Graphics: Fixed FrameTimingManager produced incorrect frame time on Vulkan and DirectX12. (1274505)

  • Graphics: Fixed GLES device leaking texture IDs in some circumstances. (1261513)

  • Graphics: Fixed gradient sampling in Fixed mode. (1212002)

  • Graphics: Fixed inconsistency issue where some meshes would be dynamically batched in editor but not in standalone player. (1278480)

  • Graphics: Fixed incorrect shadows when using DrawMeshInstancedIndirect. (1281700)

  • Graphics: Fixed issue on Metal-MacOS Standalone where HDR enabled Don't Clear and Depth Only cameras would clear the background (rendering the empty texture). (1184769)

  • Graphics: Fixed issue where passing a null value to GetBlendShapeIndex function on Mesh class would cause the editor to crash. (1288012)

  • Graphics: Fixed issue where speedtree textures were becoming unbound after clicking "Regenerate materials". (1231184)

  • Graphics: Fixed loading of png files with large chunks. (1273050)

  • Graphics: Fixed Metal error when creating pipeline state if number of shader components is less than render target pixel format. (1242218)

  • Graphics: Fixed metal/vulkan shaders sometimes referencing inputs omitted by the compiler. (1277144)

  • Graphics: Fixed metal/vulkan shaders sometimes referencing outputs omitted by the compiler. (1290551)

  • Graphics: Fixed missing support for mip tails in sparse textures on Vulkan. (1265578)

  • Graphics: Fixed OpenGL bug where projection matrix was not correctly restored after calling Graphics.DrawMeshNow and GL.PopMatrix. (1262117)

  • Graphics: Fixed Particle System incorrect rendering order when using 'Sorting Fudge'. (1256788)

  • Graphics: Fixed possible crash on Adreno when using RenderPass API and Vulkan. (1282143)

  • Graphics: Fixed potential divide by 0 when running graphics jobs on UWP Player.

  • Graphics: Fixed repaint of VFX Graph in play mode.

  • Graphics: Fixed sample mesh skinned (vfx) when GPUSkinning is disabled. (1275889)

  • Graphics: Fixed Shader.globalRenderPipeline tag is not being set correctly at runtime. (1141848)

  • Graphics: Fixed shaders that use immediate consts failing compilation under some circumstances. (1283218)

  • Graphics: Fixed shadowmask behavior for terrain trees that have LODs. (1285466)

  • Graphics: Fixed stateful case where ComputeShader could be put in a bad state internally if user forgot to bind out buffer. Required Editor restart to get rid of previously.

  • Graphics: Fixed terrain material being reset to builtin terrain material after reopening an SRP project.

  • Graphics: Fixed Validation error from creating 0 size frame buffers on Vulkan. (1278091)

  • Graphics: Fixed Vulkan validation error Shader requires vertexPipelineStoresAndAtomics but is not enabled on the device. (1288889)

  • Graphics: Fixed Vulkan Validation warnings when fragment shader input is not produced for render pass attachment. (1278088)

  • Graphics: Fixes a crash, when changing the mesh data during the frame. (1227781)

  • Graphics: Fixes instanced shadow rendering when using closest fit with a single cascade. (1257896)

  • Graphics: Fixes NullReferenceException on Terrain Shaders when project is opened after deleting Library folder. (1240491)

  • Graphics: Fixes reflections in baked reflection probes not being rendered when rendering path is set to deferred. (1260144)

  • Graphics: Fixes vulkan validation error VUID-VkFramebufferCreateInfo-pAttachments-00882. (1278684)

  • Graphics: Frame Debugger does not show formats of MRT (multiple render targets) correctly. (1261622)

  • Graphics: Handle depthSlice -1 for backbuffer when using OpenGL ES. (1281747)

  • Graphics: Improved frustum test for point lights. Fix cyclic error in computing Projection -&gt; CalculateObliqueMatrix -&gt; Projection. (1266851)

  • Graphics: Improved handling of VirtualTexturing enabled state outside of the player settings UI. (1264576)

  • Graphics: Keep it possible to create textures using deprecated ASTC enums. (1277203)

  • Graphics: Made accessing buffer dimensions an error when compiling for metal. (1274166)

  • Graphics: Make it clear that some Line Renderer Inspector options are for Scene View editing, and do not belong to the Line Renderer instance. (1199217)

  • Graphics: Nodes using camera buffers (depth or color) from the main camera will use the buffers from the scene camera when the main camera is not rendered. (1256861)

  • Graphics: Prevent ability for users to incorrectly pick a scene object when picking a detail mesh prefab. (1270627)

  • Graphics: Prevent drag and drop of Material, Shader, Texture on a GameObject with VFXRenderer. (1251051)

  • Graphics: Properly warn about double usage in shaders on metal. (1281502)

  • Graphics: Removed assert that would trigger before a clean error could be logged. (1284710)

  • Graphics: Removed parent hiearchy keeping world transform in sceneView for VisualEffect. (1288444)

  • Graphics: Restore all settings on LODGroup to defaults when Reset. (1254015)

  • Graphics: Sample Mesh - Color store as float. (1229974)

  • Graphics: Small bugfixes in the texture mipmap streamer.

  • Graphics: Standalone Server Build forces Gfx Threading Mode Direct.

  • Graphics: Static batching and Mesh.CombineMeshes can handle more vertex formats now, for example Float16 normals or UVs. It also no longer clamps vertex colors to UNorm8 format - if input meshes have higher precision vertex colors, then combined mesh will have high precision colors too. (1274815)

  • Graphics: Terrain asset presets no longer include instance data. This corrects the intended behavior, and significantly improves performance. (1244214)

  • Graphics: Terrain no longer has artifacts on some iOS devices when using Anisotropic Textures and Instancing. (1103084)

  • Graphics: The Post-processing package has been updated to version 3.0.1.

  • Graphics: Update SRP packages to 10.1.0.

  • Graphics: Updated SRP packages to 10.2.0.

  • Graphics: Updated terrain warning against using shaders that rely on tangents to recommend the correct shaders for SRPs. (1281595)

  • Graphics: Warn user for rendering artifacts when importing texture with cubemap sequence/cross layout with non-optimal size. (1163002)

  • Graphics: When blitting textures with multiple slices, all slices are now blit across the source and destination. (1211291)

  • GraphView: Added capability support to stacks, stack children, and groups to help better avoid unsupported behaviors. Specifically with grouping and heterogeneous selections.

  • IL2CPP: Avoided a crash on startup for assemblies that use nested types in the type. Google Ad Mobs has one such assembly, for example. (1287997)

  • IL2CPP: Correctly report the public key for assemblies where is exists.

  • IL2CPP: Fixed issue with generated Visual Studio Solution project files that caused IntelliSense and other code analysis tools to fail when scanning source files. (1285102)

  • IL2CPP: Fixed issue with re-throwing an exception from a catch that includes a nested try/catch block. (1281069)

  • IMGUI: Fixed Null object being created when dropping Sprite to Array in Inspector. (1281986)

  • IMGUI: Fixed the MissingMethodException when adding elements to ReorderableList with String type. (1289219)

  • IMGUI: Fixed the text cursor becoming invisible if an exception was thrown from inside of SelectableLabel. (1293370)

  • IMGUI: Https://jira.unity3d.com/browse/UIT-191: The rect transform rectangle visual is too light.

  • IMGUI: Updated Layers drop down icon positions and images. (1184677)

  • iOS: Background audio is no longer cut when "Mute Other Audio Sources" is unchecked. (1259748)

  • iOS: Background audio no longer stopped when Unity audio is disabled. (1286259)

  • iOS: Fixed application not rendering when using a very high Application.targetFrameRate.

  • iOS: Fixed crash/hang when going to background from portrait upside down on some devices. (1285042)

  • iOS: Fixed password input cleared on first character when touch keyboard input is hidden. (1251498)

  • iOS: Fixed xcode12 picking "generic" target by default resulting in "build and run" not running app. (1279315)

  • iOS: Removed prohibited API usage.

  • Kernel: Fixed enter playmode regression when there are many outstanding Burst jobs to compile.

  • License: Fixed broken login during batchmode license activation. (1294709)

  • License: Fixed license validation when serial number is missing on Mac. (1279866)

  • Linux: Added check for return value of write as its possible it could fail. (1228164)

  • Linux: Fixed a bug where unplugging/plugging in controllers would lead to a bad input device tracking state. (1279308)

  • Linux: Fixed an incorrect assert message on disconnecting a game controller. (1279323)

  • Linux: Fixed an issue where the Linux Downloader would not properly extract files.

  • Linux: Fixed game controller and joystick serial numbers. (1269974)

  • Linux: Fixed the Bug Reporter suggestion box. (1156930)

  • Linux: Fixed Unity Bug Reporter taskbar icon on Ubuntu LTS showing "unknown". (1188799)

  • Linux: Invalid window layouts do not crash the editor when loaded. (1286251)

  • Linux: Re-enable CanAllocateALotOfMemory test. (1111793)

  • Linux: Show error if Linux Mono support is not installed. (1276232)

  • Linux: Updated from SDL 2.0.7 to 2.0.12.

  • macOS: Added logging to Thread shutdown to help determine possible broken threads, as well as potential fix for HID thread not properly shutting down when exiting.

  • macOS: Application is correctly focussed and unfocussed when the GameCenter UI is used.

  • macOS: Fixed an issue where a unitypackage created on another filesystem might fail to import. (1266321)

  • macOS: Fixed aux window remains active when a tab is moved. (1265583)

  • macOS: Fixed code signing of native plugins in Xcode projects. (1276317)

  • macOS: Fixed crash when trying to access Movies, Music, or Photos folders on Catalina. (1280375)

  • macOS: Fixed improper layout of the Inspector when making the Editor full screen. (1283862)

  • macOS: Fixed improper layout of the Package Manager Window when making the Editor full screen. (1278245)

  • macOS: Fixed Unity Editor activating tooltips when other apps are currently active. (1269177)

  • macOS: Report shader compiler error when invalid texture samplers are used in Metal shaders. (1214014)

  • Mobile: Fixed iOS plugin compile flags not updating on build append. (1254117)

  • Multiplayer: Fixed out of bounds access error when doing connection checks in unet.

  • Multiplayer: Resolved an issue where you can now set the threadpool size for LL API.

  • Networking: UnityWebRequest: DownloadHandler.text will handle exception if encoding is not supported (fallback to UTF-8). (1288445)

  • Networking: UnityWebRequest: fix il2cpp stripping potentially making ReceiveContentLength not called on custom download handler. (1282106)

  • Networking: UnityWebRequest: fix possible data corruption in UploadHandlerFile. (1238418)

  • Package: Error message when loading new scene with DontDestroyOnLoad. (1283984)

  • Package: Fixed edge-case exception when vcam is deleted. (1284701)

  • Package: Lens inspector sometimes displayed ortho vs perspective incorrectly for a brief time. (1060230)

  • Package Manager: Added ellipsis when package (name, version and tag) is truncated. (1284866)

  • Package Manager: Clear subsystem instance map on deinitialize so that stale instances aren't being retrieved on restarts.

  • Package Manager: Document link underlining is correct.

  • Package Manager: Fixed an issue where changes in the project manifest wouldn't be applied when autorefresh is disabled. (1292471)

  • Package Manager: Fixed issues with Samples display when switching between low width and regular width view.

  • Package Manager: Fixed packages left selected when clicking a package that has a path exceeding the maximum path limit. (1268917)

  • Package Manager: Fixed removing package with a read-only file throws UnauthorizedAccessException if package is in Packages directory (Git clone). (1237777)

  • Package Manager: Fixed the issue where advanced settings no longer persisted in project.

  • Package Manager: Fixed the issue where new versions of a package doesn't show up after a refresh in In Project tab. (1281125)

  • Package Manager: Fixed the issue where package name in dependencies does not match either the display name or name.

  • Package Manager: Fixed the issue where TextFields added to Package Manager window show as labels. (1285449, 1285806)

  • Package Manager: Fixed the issue where the add from git URL text field does not shrink properly.

  • Package Manager: Fixed to support installing a package to a location that exceeds the maximum path length. (1268396)

  • Package Manager: Fixed uninformative error when path to package files exceeds the maximum path length limitation. (1266765)

  • Package Manager: Fixed when a user switches account, and the package list refresh the new assets, a null ref exception occurs.

  • Package Manager: Improved performance of accessing HiddenPackagesCount in PackageManagerUtilityInternal. (1275248)

  • Package Manager: Modify Preview Packages in Use behavior to conform to lifecycle v2. (1284843)

  • Package Manager: Package manager not recognizing new package name from A$.

  • Package Manager: Packages view tab shrinks when there is plenty of space to display complete text.

  • Package Manager: Remove the upm error that is logged twice. (1283355)

  • Package Manager: See All Versions' from Project Settings should not affect 'My Registries' package version discovery. (1284861)

  • Package Manager: Select the first added scoped registry when we open the project settings from the popup.

  • Package Manager: Updated com.unity.purchasing to 2.1.1 - fixes some compatibility issues with platforms without analytics.

  • Package Manager: Updated com.unity.purchasing to 3.0.0-pre.4.

  • Package Manager: We now tag Scoped Registry packages in their Package Details according to the version tag.

  • Package Manager: When a package name text is long, the status icon gets an offset and won't be aligned to other icons. (1287317)

  • Package Manager: Whenever the user manually refreshes a list, we should apply the search query text.

  • Particles: Added shortcuts for Resimulate, Show Bounds and Show only Selected. (1268064)

  • Particles: Ensure smooth size updates when doing slow-mo scrubbing of the particle playback time. (1224857)

  • Particles: Fixed crash when using BakeTrails with Attach Ribbons to Transform.

  • Particles: Fixed emit from script bug when emitting particles from LateUpdate during Edit Mode. (1283939)

  • Particles: Fixed ParticleSystem Window throwing an error when Undo was performed after creating a sub-system. (1280126)

  • Particles: Fixed to ensure Rate over Distance emission sets particle ages correctly. (1261813)

  • Particles: Remove the warning about mis-matched vertex streams when creating a default Particle System. (1259366)

  • Physics: Added missing property tooltips for Physics 2D project setting properties of "Gizmos" and "Layer Collision Matrix". (1276423)

  • Physics: CCD type is restored to specified Collision Detection type in Rigidbody Inspector when isKinematic is toggled from true to false. Inspector does not show speculative CCD in use during kinematic override. There are no warnings that this is occurring. (1177698)

  • Physics: Fixed OnCollision events not happening when the listening script was added to a GameObject after the ArticulationBody component. (1258247)

  • Physics: Fixed Physics Debug window section titles to be clickable for dropdown. (1261353)

  • Physics: Physics Collider Tooltips were revised. (1261350)

  • Physics: When using the Physics Debugger, GameView and SceneView gizmo highlights are now synced. (1285340)

  • Playables: Fixed an issue where an Assert would pop if you were evaluating a PlayableDirector in OnEnable of a MonoBehaviour that has the [ExecuteInEditMode] Attrbute. (1246997)

  • Playables: Fixed crash in playable graphs when multiple notification receivers callbacks exist and change the source playable graph in a destructive manner. (1290690)

  • Plugins: Removed console exceptions for Magic Leap. (1252217)

  • Prefabs: Added missing tooltips for Revert and Apply buttons in Prefab overrides comparison view. (1261334)

  • Prefabs: Fixed collection of direct dependencies on Prefabs. (1178737)

  • Prefabs: Fixed crash when exiting prefab mode in some circumstances. (1269978)

  • Prefabs: Fixed distorted UI for Prefab override comparison window when a changed component is selected. (1069062)

  • Prefabs: Fixed lost references when applying added GameObject from context menu. (1237942)

  • Prefabs: Fixed Prefab preview in Inspector doesn't update until reselected. (1056071)

  • Prefabs: Fixed so deleting the context parent in Prefab Mode in Context is prevented from the UI. (1291699)

  • Prefabs: Fixed that there is no information provided about the Prefab when a Prefab's child has broken references after using ForceReserializeAssets. (1262196)

  • Prefabs: The apply menu in the Prefab overrides comparison view no longer lists apply targets where all overrides are default overrides compared to that apply target. This brings the apply menu items in the comparison view in line with the apply menu items in component context menus and ensures there's no apply menu items that don't have any effect. (1190143)

  • Prefabs: When opening a UI Prefab in Prefab Mode in Context and then opening a child UI Prefab in a nested Prefab Mode in Context, the UI of the child would sometimes get hidden below the UI of the context. (1268329)

  • Profiler: Fixed a bug when UnityEditor.UnityStats returned invalid number of active animations. (1252764)

  • Profiler: Fixed a bug which caused RegisterNewMarkerCallback to be called multiple times with the same marker. (1158554)

  • Profiler: Fixed a crash while using Profiler ProfilerProperty and ProfilerFrameDataIterator API. (1289580)

  • Profiler: Fixed a situation when Profiler remains active even with Profiler window closed in play mode. (1249581)

  • Profiler: Fixed an issue when Profiler might lose metadata for markers spanned across multiple frames. (1288339)

  • Profiler: Fixed an issue with wrong chart scale after profiler capture load. (1283344)

  • Profiler: Fixed issue when threads could have empty name in Profiler. (1278270)

  • Profiler: Fixed large amount of tris and verts are being reported in an empty scene by the Game View statistics when refocusing the Editor. (1275827)

  • Profiler: Fixed Mesh runtime size reporting in development builds, previously we would not track some of the mesh data when reporting memory footprint. (1268289)

  • Profiler: Fixed Profiler settings option to clarify what it does. (1240432)

  • Profiler: Fixed recursive call in ProfilerUnsafeUtility.CreateMarker causing il2cpp builds to fail.

  • Profiler: Fixed situation when Audio Profiler view can show information from an invalid frame. (1240903)

  • Profiler: Fixed sorting order in Show Related Objects panel to be numerical instead of alphabetical. (1198266)

  • Profiler: Fixed Standalone Profiler recording without clearing previously recorded data when Clear on Play is selected. (1249920)

  • Profiler: Fixed to generate unique names for new Profiler Modules to avoid confusion. (1256273)

  • Profiler: Fixed to make sorting stable for identically named threads in Profiler CPU Timeline view. (1283571)

  • Profiler: Fixed UnityEngine.Profiling.Recorder.gpuElapsedNanoseconds produced invalid results on Vulkan. (1273246)

  • Profiler: Hierarchy Views randomly collapsing (i.e. hiding their children) parts of the sample tree when Editor Only samples are present in a frame and the "Collapse EditorOnly Samples" option is turned on (default setting is on).

  • Profiler: Selections CPU or GPU samples made in the CPU Usage and GPU Usage Profiler Modules now carry over correctly and persistently to all views (Timeline, Hierarchy, Raw Hierarchy) as well as to all frames that contain them. In frames other than the one the selection was originally made in, the selection will point to the first sample that provides the best match to the stack of sample names that lead up to that original sample. So if there are e.g. multiple Components of the same type "MyComponent", and you select the "MyComponent.Update()" sample of one of them, there is no way for the Profiler to identify the "MyComponent.Update()" sample of exactly that sample Component in the next frame. It will therefore just select the very first "MyComponent.Update()" sample it can find. If a part of the Sample Stack is missing in a frame, the selection Tooltip in Timeline or an extra line at the bottom of the Hierarchy views will alert you of the fact, that the selection that was carried over to this frame is just an approximation. An option was added to show the difference in this approximated Sample Stack, and the originally selected Sample Stack. If not even one of the sample names from the original selection fits the samples in a particular frame and thread, no selection will be displayed. If a selection was made on a thread other than the Main Thread, switching to the Hierarchy Views will automatically switch them to the right thread this selection was made in. (1066309)

  • Profiler: Stops UI System Preview Window from being maximised and throwing an exception. (1287275)

  • Scene/Game View: Exposed a property to make grid snapping usable from custom EditorTools.

  • Scene/Game View: Fixed "Width & Height" field in the new Game View aspect ratio menu not allowing mouse drag input. (1284724)

  • Scene/Game View: Fixed an issue where toggling scene visibility for shadow casting objects would not affect shadows cast from local lights. (1282033)

  • Scene/Game View: Fixed crash in GizmoManager when trying to build gizmos for a GameObject with a null transform component. (1260013)

  • Scene/Game View: Fixed Line Renderer editor not repainting the Scene View when selecting points. (1276045)

  • Scene/Game View: Fixed picking in sceneview for materials with non-2D _MainTex textures. (1288999)

  • Scene/Game View: Fixed Scene View Invert Selection not taking into account scene picking/visibility state. (1277187)

  • Scene/Game View: Fixed Scene View overlays preventing other IMGUI windows in the Scene View from receiving input. (1282859)

  • SceneManager: Allow scenes to be saved to packages from the save panel. (1276187)

  • SceneManager: Enforce required full path for LoadSceneInPlayMode. (1220015)

  • SceneManager: Made sure objects are cleaned up properly if they are children of GameObject with DontSave flag. (1157422)

  • SceneManager: Make GetSceneByPath no longer case sensitive. (1214583)

  • SceneManager: Prevent loading scene where multiple objects have same identifier. (1138553)

  • SceneManager: Scene is set dirty when child dragged upon own parent. (1278128)

  • Scripting: Added option to disable Signed Assembly version validation. (1193928)

  • Scripting: C# scripts containing invalid characters in disabled conditional sections are now correctly imported. (1279339)

  • Scripting: Common math and geometry structs such as Vector3 no longer depend on CultureInfo.CurrentCulture to implement ToString method overloads. (1275065)

  • Scripting: Fixed a crash when calling fast memory APIs with null CommandBuffer. (1290649)

  • Scripting: Fixed debugger crashes caused due to incorrect marshalling for pinvoke byte array return type. (1274470)

  • Scripting: Fixed hang that would manifest when the debugger agent would get stuck waiting to do a thread_join on a suspended thread. (1275345)

  • Scripting: Fixes usage of comment in rsp file. (1216598)

  • Scripting: Fixes usage of whitespace in rsp command arguments. (1223381)

  • Scripting: Quaternion.Angle: Apply the same epsilon tolerance value when comparing q & -q as we do when comparing q & q, both of which should always result in an angle of 0. (1246947)

  • Scripting: Sign bee_backend.exe so it does not trip up user virus protection.

  • Scripting Upgrade: Fixed potential AsseblyUpdater assembly corruption when applying Camera.GetScreenHeight() / GetScreenWidth() -> Screen.height/width updates.

  • Scripting Upgrade: Fixed potential AsseblyUpdater assembly corruption when field name and type needs updating.

  • Serialization: Ensure that SerializedProperty.DataEquals works consistently even on fields prior to an alignment boundary. (1294238)

  • Serialization: Fields of type UnityEngine.Hash128 are now correctly serialized in ScriptableObjects and MonoBehaviours. (1271062)

  • Serialization: Fixed crash when opening the Preset window on an object containing SerializeReference with instances accessible from multiple property path. (1290753)

  • Serialization: HDRP/TerrainLit shader no longer produce build errors when in Always included Shaders list. (1237876)

  • Services: Fixed the parameter supplied to the request to enable analytics.

  • Shaders: Added a new keyword to handle the custom editors per render pipeline in ShaderLab to ensure a smooth material workflow between render pipelines.

  • Shaders: Added Material.SetInteger, Material.GetInteger, MaterialPropertyBlock.SetInteger, MaterialPropertyBlock.GetInteger, Shader.SetGlobalInteger and Shader.GetGlobalInteger that use integers internally; added Integer property type to ShaderLab. (1277994)

  • Shaders: Exposed Render Queue control on the Standard shader. (1287934)

  • Shaders: Fixed a crash when PrimitiveID is the only input to a stage. (1289378)

  • Shaders: Fixed allocator errors due to orphaned memory when canceling a build during shader compilation. (1224325)

  • Shaders: Fixed bad GLSL code generation on some cases accessing loop inductor inside the loop. (1267920)

  • Shaders: Fixed Editor failures due to shader compiler communication issues when using some VPN solutions. (1025558)

  • Shaders: Fixed handling of the scalar after the matrix that is not 4xN. (1242345)

  • Shaders: Fixed Integer property type not affecting uniform state and fixed function state in shaders. (1294048)

  • Shaders: Fixed iOS Tesselation shader compilation issue when using appdata_full. (1281129)

  • Shaders: Fixed missing shader warnings when getting the shader variant from cache server. (1283021)

  • Shaders: Fixed missing shared compiler warnings when targeting GL/Vulkan/Metal/Switch. (1281243)

  • Shaders: Removed redundant shader upgrader pass on editor startup. (1274174)

  • Shaders: Reset m_LightmapFlags in Material::ResetWithShader(). (1283694)

  • Shaders: ShaderUtil.ClearShaderMessages() now actually clears all the current shader errors. Any previously encountered errors will come back when trying to compile the shader again either for build or rendering, or when reimporting. (1283645)

  • Shaders: Support Texture.CalculateLevelOfDetail function in Metal shaders. (1237836)

  • Terrain: Fixed a connection cleared when AutoConnect is not used in first frame. (1241302)

  • Terrain: Fixed being unable to rotate branch group. (1283095)

  • Terrain: Fixed new Tree GameObjects instantiating with the name "OptimizedTree" instead of "Tree.". (1283097)

  • Terrain: Fixed Terrain paint tool selection persistence when loading or removing paint tools. (1283242)

  • Terrain: Fixes confusing behavior for Lock Width To Height feature when painting trees on Terrain where width is randomized within the specified height range instead of using the randomized height value. (1265350)

  • Terrain: Fixes crash that occurs when deleting terrain component during OnTerrainChanged callback. (1281737)

  • Terrain: Internal: fixed crash when copying terrain during callback with debug allocator active. (1286747)

  • Terrain: Re-use of the leaf icon for the tree component as the component icon was missing. (1260457)

  • Terrain: The reset functionality from the component burger menu was not working for trees, the PR fixes this. (1252536)

  • Terrain: When reparenting a element of the tree, all modification made by hand are reset to avoid strange behaviors. (1272795)

  • Text: Fixed a crash in the Text system. (1288809)

  • Timeline: Fixed misalignment of exposed property reference fields in Timeline. (1222744)

  • Timeline: Fixed timeline audio playing at the wrong time when Time.timeScale is not 1. (981046)

  • Timeline: Fixed timeline audio playing on timelines with GameTime update mode when Time.timeScale is 0. (1269783)

  • UI: Added OnSubmit functionality which will be called when the input field should be sumitted. (1262424)

  • UI: Added option to not activate the inputfield on selection. Helpful for controller based platforms where navigating to items is required to navigate UI. (1268708)

  • UI: Fallback to non SRP when rendering uGUI's profiler rerender even if SRP is in use. (1275870)

  • UI: Fixed issue where a Graphic could be set as a raycast target even is disabled. (1290917)

  • UI: Fixed issue where a selected UI element would not get the highlight state when hovered. (1274735)

  • UI: Fixed issue where focus wouldnt be given back to main window on mouse click causing incorrect input event position. (1290074)

  • UI: Fixed issue where PixelPerfect wouldn't update right away when toggled on the Canvas. (1261788)

  • UI: Fixed issue where the tiling and offset were no longer applied at the material level. (1287864)

  • UI: Fixed issue with UI profiler showing wrong batch count for canvas's that shrink. (1290246)

  • UI: Fixed uGUI description to not mention UI Toolkit to avoid confusion.

  • UI: Fixed Unity Events that were set as Runtime only to initialize properly upon entering playmode with the FastEnterPlay mode enabled. (1206410)

  • UI: Fixing issue with vertex attributes not getting pass through to the profile rerendering leaving the view empty. (1276001)

  • UI: Fixing uGUI doc population.

  • UI: Make use to first materials texture ID and texel size if no texture has been provided. (1257149)

  • UI Toolkit: Added the possibility to put an event on mouse down before showing a contextual menu. (1268159)

  • UI Toolkit: Changed EnumField+derivatives & BasePopupField-based classes to properly handle pointer down events. (1248669)

  • UI Toolkit: Changed TextField to match IMGUI behavior of select-all-on-mouse-up. (1179932)

  • UI Toolkit: Enabled dynamic atlassing of sprites. Fixed tight sprite scale modes.

  • UI Toolkit: Fixed being able to drag elements onto existing elements outside the currently active sub-document.

  • UI Toolkit: Fixed being able to drag or create elements onto empty space in the Canvas while editing a child sub-document in-place, leading to elements being added to the wrong document.

  • UI Toolkit: Fixed closing of no UI Toolkit installed warning disabling Viewport zoom.

  • UI Toolkit: Fixed disappearing icons. (1279796)

  • UI Toolkit: Fixed Element not visisle after being hiden/shown in specific sequence. (1269414)

  • UI Toolkit: Fixed error with UI Elements Samples window after Minimizing/Maximizing another window. (1244800)

  • UI Toolkit: Fixed layout being affected by the state of RenderTexture.active. (1268095)

  • UI Toolkit: Fixed ListView Horizontal Scrolling attribute value not being reflected properly in the Inspector.

  • UI Toolkit: Fixed ListView range selection when initial selection is set programmatically.

  • UI Toolkit: Fixed panel color that was not being premultiplied before clearing the target texture background. (1277149)

  • UI Toolkit: Fixed possible instability inside in-place sub-document editing mode after selecting elements belonging to a parent document.

  • UI Toolkit: Fixed potentially losing assigned StyleSheets in parent document when discarding changes before going inside a sub-document.

  • UI Toolkit: Fixed re-importing of a child UXML asset that is instanced by a parent UXML asset causing the parent to be unusable via the Library pane.

  • UI Toolkit: Fixed ScrollView's scroll bars not showing when children are using position:absolute. (1247583)

  • UI Toolkit: Fixed scrollView's showHorizontal and showVertical limitations. They are converted to a tristate enum, horizontalScrollerVisibility and verticalScrollerVisibility, to support a new Hidden state, along with AlwaysVisible and Auto. (1278466)

  • UI Toolkit: Fixed such that binding operations are done asynchronouly to improve performance and avoid editor lockups. (1243897)

  • UI Toolkit: Fixed such that right-click context menu on properties now shows on every bound field. (1197268)

  • UI Toolkit: Fixed unsaved changes * indicator not being reset when going inside a child sub-document while discarding changes in the parent.

  • UI Toolkit: Only use mapped buffers when the graphics device support it. (1281641)

  • UI Toolkit: Prevent NullRefException when providing textureless sprites as background.

  • UI Toolkit: PropertyField will now use a custom label(if provided) when drawing a property with an IMGUI PropertyDrawer.

  • UI Toolkit: PropertyFields on array fields would not refresh properly when array size changed in some use cases. (1290774)

  • UI Toolkit: Throw a proper argument null exception when using UQuery.

  • Universal Windows Platform: Fixes duplicate OnClick event from an Xbox controller after loading a new Scene. (1263078)

  • Version Control: Fixed '-vcsMode' command-line argument being applied after API Updater. (1266509)

  • Version Control: Fixed a crash on initial script recompilation when script tried to checkout assets. (1275692)

  • Version Control: Status overlay icons are no longer "washed out colors" in Linear color space. (1218701)

  • Video: Enabled the previously disabled tests and re-ran them on PS4 and Android on Katana with testRepetitions set to 100. (1068853)

  • Video: Fixed video preview in editor.

  • Video: Uncommented the EndReached callback in VideoPlayback playmode tests and updated the tests since the original fix for the callback issue had landed. (1062515)

  • Virtual Texturing: Fixed a crash during tile extraction of invalid virtual texture stacks.

  • WebGL: Added more detailed information when a page load fails due to misconfiguration in server hosting settings. Note that Firefox does not currently support Brotli compression for local development (https://bugzilla.mozilla.org/show_bug.cgi?id=1670675). (1283658)

  • WebGL: Added support for JS side to customize the render target size of the WebGL canvas, instead of requiring it to always match 1:1 with the High DPI CSS size of the canvas (enabled by setting 'config.matchWebGLToCanvasSize = false; in page .html template). (1178725)

  • WebGL: Applied a workaround to Chrome specific Web Audio performance issue https://bugs.chromium.org/p/chromium/issues/detail?id=1133233. (1270768)

  • WebGL: Attempting to open a dynamic library will now throw a DllNotFoundException rather than aborting execution as a runtime error. (1227393)

  • WebGL: Consistently refer to WebGL APIs by names "WebGL 1" and "WebGL 2". (1260548)

  • WebGL: Fixed a bug where calling unityInstance.Quit() from JavaScript would not let JS VM garbage collect away the Unity game instance. (1188667)

  • WebGL: Fixed a bug where keyboard up events would be missed if WebGLInput.captureAllKeyboardInput was set to false while a key was being held down. (1195047)

  • WebGL: Fixed a crash at startup that occurred if initial filesystem data triggered a heap resize. (1174367)

  • WebGL: Fixed a crash with Unity web loader on new macOS Big Sur.

  • WebGL: Fixed a GUI blit issue in WebGL builds with linear color space enabled, that caused washed out UI images on web browsers compared to other platforms. (1187401)

  • WebGL: Fixed a hang in Caching.ClearCache() when building against multithreaded WebGL. (1146530)

  • WebGL: Fixed a memory error crash when using the "Convert To Entity" component. (1254779)

  • WebGL: Fixed a WebAssembly trap when a touch point got canceled on mobile devices. (1262657)

  • WebGL: Fixed an issue when a failing cross-domain revalidation request prevents a file from being downloaded. (1266091)

  • WebGL: Fixed audio clip autoplay regression in WebGL builds. (1276713)

  • WebGL: Fixed audio not looping seamlessly in WebGL. (1189720)

  • WebGL: Fixed default page template to properly scale the canvas size at startup on mobile. Removed by-default low DPI scaling on mobile pages (use a custom template .html to do half-res or quarter-res rendering if desired). (1274295)

  • WebGL: Fixed for TAB keys being ignored by UI input fields. (1281765)

  • WebGL: Fixed inverted y axis for game controllers with the Input System on WebGL. (1273623)

  • WebGL: Fixed issue with paused audio clicking in Firefox. (1238052)

  • WebGL: Fixed Keyboard.current and Mouse.current to be immediately available in MonoBehaviour.Start() functions, instead of returning null. (1239007)

  • WebGL: Fixed mouse wheel scrolling with the new input system on WebGL. (1264545)

  • WebGL: Fixed occasional large values with Input.GetAxis. (1208971)

  • WebGL: Fixed pixelated edges of soft shadows for WebGL. (1240932)

  • WebGL: Fixed Preset incompatibilities in Player Settings. (1232138)

  • WebGL: Fixed Screen.orientation API to work on Android and iOS. On desktop browsers Screen.orientation is simulated by checking whether browser window width < height. (1283211)

  • WebGL: Fixed UnityWebRequest with relative URLs on WebGL platform when built with no exception support (Enable Exceptions = None). (1283652)

  • WebGL: Fixed video playback in Firefox to loop seamlessly. For more information, see https://bugzilla.mozilla.org/show_bug.cgi?id=1668591. (1267333)

  • WebGL: Improved error messages that are printed when a build to WebGL fails. (1245847)

  • WebGL: Keyboard input is not detected in the Input Field when built on WebGL. (1258876)

  • WebGL: Overlay cameras will no longer cause full screen renders to be incorrect. (1184385)

  • WebGL: Reduced memory usage on dual Intel integrated + NVidia GPU Windows laptops when using URP in a large scene with many individual objects. (1225254)

  • WebGL: Removed support for Wasm arithmetic exceptions in preparation for updating to LLVM Wasm backend. (1286167)

  • WebGL: Resolved issues with touch events and the new input system on WebGL. (1257101)

  • WebGL: WebGL: WebGL: Fix use after free of m_Context in GfxDeviceGLES destructor, which resulted in "Memory access out of bounds" exceptions when quitting an application in WebGL builds. (1204734)

  • Windows: Batchmode now allows settings resolution and window mode. (1266308)

  • Windows: Fixed Time.deltaTime calculations on D3D11 and D3D12 when VSync is force disabled from the driver software (like Nvidia Control Panel, Radeon Settings or Intel Graphics Command Center).

  • Windows: Fixed Unity Editor Icon at the top left is blurry. (1264422)

  • Windows: Popover window in Frame debugger now closes when pressing up or down on the keyboard in the tree view.

  • Windows: Removed UWP "USB Device" Build and Run option. (1292590)

  • Windows: We now log the full Windows 10 version including edition, build (with UTR) Version, and architecture when running the editor for better diagnosis. (1251004)

  • Windows: X86_64 is now the default Windows architecture. (1283651)

  • XR: Added XR Interaction Toolkit as a pre-release package.

  • XR: Fixed CommandBuffer.SetRenderTarget() with XR single-pass rendering. (1261545)

  • XR: Fixed Graphics.Blit when using VRTextureUsage.TwoEyes. (1258990)

  • XR: Fixed screenspace shadows with XR multiview. (1168315)

  • XR: Update verified packages for AR Foundation and related packages.

  • XR: XR Devices no longer report errors if no tracking features found on device.

API Changes

  • 2D: Added: Added Tilemap.GetUsedSpritesCount/NonAlloc to allow users to get information on the Sprites used in the Tilemap.

  • 2D: Added: Added Tilemaps.TileFlags.KeepGameObjectRuntimeOnly flag to allow users to keep GameObjects from Tiles after removing the originating Tile.

  • 2D: Added: SpriteAtlasAsset can be loaded/saved using SpriteAtlasAsset.Load and SpriteAtlasAsset.Save.

  • Android: Added: Added API level 30 to AndroidSdkVersions enum.

  • Animation: Added: A new parameter was added to the MatchTarget function for auto matching completion in case of interruption.

  • Animation: Added: Published UnbindAllStreamHandles and UnbindAllSceneHandles to manage Animation C# job handles life cycle. (1238832)

  • Asset Bundles: Added: Added AssetBundle.UnloadAsync for unloading assetbundles in the background. (1281619)

  • Asset Import: Added: Added CanOpenAssetInEditor method to check whether an asset would be opened in Editor.

  • Build Pipeline: Added: ContentBuildInterface.CalculatePlayerSerializationHashForType for providing precise per type dependency tracking for incremental rebuild of asset bundles.

  • Build Pipeline: Added: New API FilterToSubset on BuildReferenceMap & BuildUsageTagSet providing more control over native build data, reducing unnecessary asset bundle rebuilds.

  • Core: Added: Added new Screen, Application and SystemInfo classes in UnityEngine.Device namespace, that can mimic platform-specific behavior in the Unity Editor when used with Device Simulator.

  • Editor: Added: Added a callback when pivot mode, pivot rotation, view tool enable and grid snap enable are changed.

  • Editor: Added: Added EditorGUIUtility.SetMainWindowPosition.

  • Editor: Added: Added MeshPreview class for drawing an interactive Editor preview of a Mesh asset. (1184921)

  • Editor: Added: Added attributeType argument to OnOpenAssetAttribute to denote a function used to check if the asset would be opened in Editor.

  • Editor: Added: API method for setting custom diff tool. (1246952)

  • Editor: Added: EditorGUI.LinkButton and EditorGUILayout.LinkButton are now public.
    EditorUtility.OpenPropertyEditor is now public.

  • Editor: Changed: HelpURLAttribute now supports derived classes in order to generate dynamic URLs.

  • Editor: Obsoleted: Remove Slave from MPE API and documentation.

  • Editor: Obsoleted: Renamed some SearchService API's classes to prevent name clashes.

  • Graphics: Added: Added an option to flag renderers as static shadow casters in order to facilitate the implementation of cached shadow map in SRP.

  • Graphics: Added: Added methods to check if Material/MaterialPropertyBlock contains a property based on type (e.g. MaterialPropertyBlock.HasFloat, Material.HasColor, etc.).

  • Graphics: Added: Added new API Graphics.minOpenGLESVersion and built-in keyword SHADER_API_GLES30.

  • Graphics: Added: Added new API SystemInfo.GetRenderTextureSupportedMSAASampleCount(RenderTextureDescriptor desc) to query the correct MSAA samples count of a RenderTexture.

  • Graphics: Added: BatchRendererGroup: Added optional visibleIndicesY array. Data available in shader in Y channel. (Hybrid Renderer V2).

  • Graphics: Added: Expose API to set the renderDynamicObjects for Custom reflection probes.

  • Graphics: Added: Made GraphicsSettings.GetGraphicsSettings() public.

  • Graphics: Changed: Added callbacks to RenderPipelineManager that don't cause GC. (1259717)

  • Graphics: Changed: RenderRequestMode now has enum values for PBR materials data.

  • iOS: Obsoleted: The public accessor for the legacy Game Center player ID is now unavailable, and will be removed completely in the next major release of Unity.

  • Mobile: Added: Adaptive Performance: Updated the version defines for the device simulator to support it in 2021.1 without package.

  • Networking: Added: UnityWebRequest now supports sending/receiving data using NativeArray, avoiding managed allocations (UploadHandlerRaw and DownloadHandlerBuffer). (1138156)

  • Package: Added: Added ApplyAfter option to ImpulseListener, to add control over the ordering of extensions.

  • Package: Added: New feature: CinemachineConfiner2D - Improved 2D confiner.

  • Package Manager: Added: The UnityEditor.PackageManager.PackageInfo class has a new GetAllRegisteredPackages method which returns the list of packages currently registered.

  • Package Manager: Obsoleted: UnityEditor.PackageManager.PackageInfo.status' and 'UnityEditor.PackageManager.PackageStatus' are now obsolete.

  • Particles: Added: Added emitterVelocity property to InitialModule.

  • Physics: Added: Expose ArticulationBody.computeParentAnchor option to control whether the parent anchor is matched to the other one automatically or not.

  • Physics: Added: Expose ArticulationBody.SnapAnchorToClosestContact function to place the anchor to a position where the risk of collider overlap is minimised.

  • Physics: Added: Make WheelCollider.sprungMass writable, to enable explicit mass distributions. In addition to that, expose WheelCollider.ResetSprungMasses() to reset the vehicle back to automatically calculated implicit sprung masses. It's the same usage pattern as with Rigidbody.inertiaTensor / Rigidbody.ResetInertiaTensor().

  • Player: Added: Added several object pool implementations including: ObjectPool, LinkedPool, GenericPool, UnsafeGenericPool and CollectionPool.

  • Profiler: Added: Added API for interacting with the Profiler Window and the selection in the CPU and GPU Usage Profiler modules.

  • Scripting: Added: Added a new AsyncReadManager FileInfo() API to check for a file's existence and (if present) the file size.

  • Scripting: Added: Added Vector3Int.forward and Vector3Int.back.

  • Scripting: Added: Introduced query for compute shader hardware support:
    ComputeShader.IsSupported(int kernelIndex).

  • Scripting: Added: Time.timeAsDouble added
    Scripting: Time.timeSinceLevelLoadAsDouble added
    Scripting: Time.fixedTimeAsDouble added
    Scripting: Time.unscaledTimeAsDouble added
    Scripting: Time.fixedUnscaledTimeAsDouble added
    Scripting: Time.realtimeSinceStartupAsDouble added.

  • Scripting: Changed: New Added Unity.IO.LowLevel.Unsafe.ReadStatus.Truncated result for completion of a truncated read. A truncated read occurs when an asynchronous file request attempts to read beyond the end of a file.
    Added Unity.IO.LowLevel.Unsafe.ReadStatusExtension methods -Unity.IO.LowLevel.Unsafe.ReadStatusExtension.Complete() returns true on successful completetion regardless of truncated file reads.

  • Scripting: Obsoleted: Removed UnityEditorInternal.ScriptEditor.

  • Scripting: Removed: Previously undocumented EditorUtility.CompileCSharp() is removed. Its functionality can be achieved through the supported AssemblyBuilder class.

  • Scripting: Removed: Removed UnityEditorInternal.GetExternalScriptEditorArgs as it was throwing not supported exception.

  • Shaders: Deprecated: Material, MaterialPropertyBlock and Shader API for working with "Int" properties is deprecated. Use "Integer" or "Float" properties and the corresponding API instead.

  • UI Toolkit: Added: Added a new dropdown menu made of VisualElements to enable popup fields in runtime.

  • UI Toolkit: Added: Added a new DropdownField control to UI Toolkit runtime.

  • UI Toolkit: Added: Added KeyboardNavigationManipulator to simplify the implementation for users.

  • UI Toolkit: Added: Added MeasureTextSize method for InputFields.

  • UI Toolkit: Added: Added RadioButton and RadioButtonGroup controls.

  • UI Toolkit: Changed: ProgressBar was moved to UnityEngine.UIElements to support runtime.

  • UI Toolkit: Obsoleted: ShowHorizontal is obsolete. Use horizontalScrollerVisibility instead.

  • UI Toolkit: Obsoleted: ShowVertical is obsolete. Use verticalScrollerVisibility instead.

Changes

  • Android: Android does not longer make use of QualitySettings.vSyncCount to match iOS behavior.

  • Android: Bump Android Logcat verified version to 1.2.0.

  • Android: Vulkan is no longer preferred over OpenGL ES when using Android 7 and for all Mali Midgard GPUs.

  • Asset Import: Changed Alembic verified package to 2.1.1-pre.1.

  • Burst: Burst enters RC phase.

  • Burst: Bursted DOTS Runtime Jobs are now decorated with [NativePInvokeCallback] instead of [MonoPInvokeCallback] which could generate callback wrappers which could cause native code to inadvertently interop with the managed VM.

  • Burst: Eager-compilation is now cancelled when script compilation starts, to prevent spurious errors related to recompiled assemblies.

  • Burst: Improved Burst initialization time.

  • Burst: Improved Burst Inspector loading time.

  • Burst: Improved eager-compilation performance.

  • Burst: Improved performance of "eager-compilation" (scheduling compilation immediately after assemblies are changed) by cancelling queued eager-compilation when entering play mode with Synchronous Compilation unchecked.

  • Burst: Improved performance of eager-compilation by not eager-compiling test assemblies.

  • Burst: In versions of Unity older than 2019.3, changing the following options in the Burst menu now requires the Editor to be restarted: Enable Compilation, Safety Checks, and Native Debug Mode Compilation. In versions of Unity older than 2019.3, previously-compiled methods will not be recompiled after changing those options, which could lead to undefined behavior where methods may or may not be compiled with the correct options. This change removes that possibility.

  • Burst: Made the compiler better at constant-folding complex static readonly constructors.

  • Burst: Open-generic static methods are not supported by Burst, but they were previously visible in Burst InspectorBurst: they are now hidden.

  • Burst: Temporarily removed the Burst compiler warning about exception throws not in [Conditional("ENABLE_UNITY_COLLECTIONS_CHECKS")] methods, to let us address user feedback. The next minor version of Burst will reincorporate this in a more friendly manner.

  • Burst: The Burst Inspector no longer uses JIT compilation. The code it shows is now compiled the same way as for editor / player usage.

  • Burst: The Burst menu-item Safety Checks has been changed to a modal choice of Off, On, and Force On. Force On will overwrite any user job or function-pointer with DisableSafetyChecks = true. To avoid users falling into the consistent trap of having Safety Checks set to Off, any reload of the Editor will issue a warning telling the user that Safety Checks have been reset to On.

  • Burst: The command line option --burst-disable-compilation is now disabling entirely Burst, including the AppDomain.

  • Burst: Updated Cross Compilation Tooling To LLVM 10.

  • Burst: Use platform provided memory intrinsics for iOS, tvOS, WASM, and console platforms.

  • Burst: Warnings are hidden in the inspector view.

  • Burst: When using "Executable Only" build type on Universal Windows Platform, Burst will now only generate code for a single CPU architecture that you're building for.

  • Editor: Quick Search is now built-in the Unity Editor and no package needs to be installed.

  • Graphics: Changed so texture formats DXT1 and DXT5 in the UI labels are now named "DXT1|BC1" and "DXT5|BC3", indicating terminology used by modern graphics APIs.

  • Graphics: Changed switch shaders to now use separate samplers instead of combined texture-samplers objects.

  • Graphics: ComputeBuffer.IsValid now returns false when compute is not supported and ComputeBuffer.BeginWrite throws InvalidOperationException for invalid ComputeBuffers. (1259525)

  • Graphics: Texture2D.Compress now compressed R8 textures to BC4 and R8G8 textures to BC5, on mobile platforms ETC/EAC are used.

  • Graphics: VT-internal warnings no longer show up in the editor window, but still get printed into the editor log file.

  • Mobile: Adaptive Performance: Session bugfixes for Adaptive Performance provider subsystem management.

  • Package: Added FBX Exporter package 4.0.0-pre.1 as a core package:
    https://docs.unity3d.com/Packages/com.unity.formats.fbx@4.0/manual/index.html.

  • Package: Added the Code Coverage package as pre-release. This package helps you identify areas of your code that need more testing, even if you haven't written any automated tests.

  • Package: Storyboard Global Mute moved from Cinemachine menu to Cinemachine preferences.

  • Package: UI update - Moved Cinemachine menu to GameObject Create menu and Right Click context menu for Hierarchy.

  • Package Manager: Recorder verified package to 2.5.0-pre.1.

  • Package Manager: The Package Manager no longer discards the existing package state in case of critical errors such as failure to parse the project manifest.

  • Scripting: Changed NativeArray limit of 2GiB in size, and now it can contain 2^31 items instead.

  • Scripting: Reintroduced warning that is thrown when a script that is derived from MonoBehaviour has the same name as a built-in component (e.g. Transform).

  • Scripting: Roslyn Analyzers inside Assembly Definitions Folders are now only applied to the Asmdef Assembly itself and to other Assemblies referencing the Asmdef Assembly - but not to any other code in the project.

  • Shaders: Editor now skips warming up shaders from shader collections in the Preloaded shaders section of Graphics settings.

  • Timeline: Updated Timeline package to version 1.4.3.

  • Timeline: Updated Timeline package to version 1.4.4.

  • Timeline: Updated Timeline package to version 1.5.1-pre.2.

  • UI: Changed license file based on legal requirements.

  • UI: Changed the Shader property for soft masking from _MaskSoftnessX / Y to _UIMaskSoftnessX / Y so we dont overlap with TMP's shader properties.

  • UI Toolkit: Allow :root pseudo selector to target the element receiving the style sheet.

  • UI Toolkit: Changed are now called on bound field when value is first set on the control and matches default value. (1273589)

  • UI Toolkit: Changed DynamicAtlas system to track texture references and support dynamic removals.

  • UI Toolkit: Changed the blending equation to allow blending of the resulting RenderTexture.

  • UI Toolkit: Improved renderer batching.

  • UI Toolkit: Mobile touch scrolling is now supported in scrollviews and listviews.

  • UI Toolkit: Text rendering is now handled by the textcore fontengine for both the editor and runtime.

  • UI Toolkit: Updated menu item for Live Reload to be called "UI Toolkit Live Reload" to avoid user confusion.

  • XR: The Oculus XR Plugin package has been updated to 1.5.0.

  • XR: The Oculus XR Plugin package has been updated to 1.5.0.

  • XR: Update verified packages for AR Foundation and related packages.

  • XR: Updated ARCore, ARKit, ARKit Face Tracking, ARFoundation, ARSubsystems packages to 4.1.1.

  • XR: Updated verified version of com.unity.xr.legacyinputhelpers to v2.1.6
    Changelog for 2.1.6 of com.unity.xr.legacyinputhelpers:
    Fixes error message when using the color camera
    Changes default near clip plane to 0.01f
    Fixes rig migration for URP and HDRP.
    Support for URP/HDRP v10.1.

Improvements

  • 2D: Added information foldout in Tilemap Inspector for showing the Tile and Sprite assets used in the Tilemap.

  • 2D: Improve performance when applying changes after slicing a texture for the Sprite Editor.

  • 2D: Improved Automatic Palette Sizing by setting a better fitting size when sizes of Sprites are of multiples of each other. Otherwise, the largest size for Sprites is used.

  • 2D: Improved memory and speed of Animation SpritePostProcess for large sprite count.

  • 2D: Improved performance in SceneView for SceneViewOpenTilePaletteHelper.

  • 2D: Improved slicing performance. (1271316)

  • 2D: Show grid preview when slicing spritesheets.

  • 2D: Store and reuse last used location when creating Tiles from the Tile Palette window.

  • 2D: Update 2D template to use current verified version of 2D packages.

  • Android: Expand Create Symbols.zip option, you can now choose from Disabled/Public/Debugging, the symbols will always have an extension .so, the symbols for libil2cpp (if IL2CPP is selected), libmonobdwgc-2.0 (if Mono is selected), libunity, libmain will all be present. You can upload the zip package to Google Play Console for automatic stacktrace resolving (In this case pick Public symbols). (1288739)

  • Android: Improved load and reload time for obbs.

  • Android: Improved Time.deltaTime consistency for OpenGL ES and Vulkan graphics APIs.

  • Android: Updating NDK to r21d.

  • Android: Use Android 11 setFrameRate API when Optimized Frame Pacing is enabled and Vulkan is used, similar to OpenGL ES.

  • Asset Import: Improved performance of registering Scripted Importers especially when large numbers are being registered together. (1228635)

  • Asset Import: Optimized "Alpha is Transparency" texture import option processing; it's several times faster now.

  • Asset Import: Reduced cost of domain reloads on asset import worker processed by removing unnecessary additional domain reloads.

  • Asset Pipeline: Added documentation for: IsDirectoryMonitoringEnabled, IsAssetImportWorkerProcess, GetTextMetaFilePathFromAssetPath, CacheServerConnectionChangedParameters, cacheServerConnectionChanged.

  • Asset Pipeline: Calling ForceProduceArtifact not only omits the use of cache server artifact but now also local cached artifacts.

  • Asset Pipeline: Calling ProduceArtifact rapidly doesn't produce multiple artifacts anymore.

  • Asset Pipeline: Changed API doc:
    AssetDatabase.LoadAssetAtPath.

  • Asset Pipeline: Logging done in imports run in an import worker is now forwarded to the main editor log.

  • Asset Pipeline: SpriteAtlas importer gathers its differences differently now.

  • Build Pipeline: (DS-1018) Add WithDebugInformationFormat to the compiler settings for MsvcCompiler.

  • Build Pipeline: Upgraded udp package to 2.1.0.

  • Core: Improved error message in certain cases of disk full.

  • Core: Reduced thread contention on JobQueue internal memory allocation.

  • Documentation: Clarified an aspect of Mip Stripping docs.

  • DX12: Optimize ray tracing acceleration structure building on the render thread (roughly 2x speedup).

  • DX12: When reading vertex attributes from vertex buffers (closest hit / any hit shaders), we now fill only the channels that are available instead of returning 0 when trying to read more attribute channels than available.

  • Editor: A newly-created Scene View window now copies last active Scene View settings. (1264773)

  • Editor: Added "Localize compiler messages" to Preference Window>Language to localize compiler messages in the current language.

  • Editor: Arrays/lists inspector UI control supports multi-selection of array elements now.

  • Editor: Clear on Recompile' option added to console's 'Clear' context menu. (1264753)

  • Editor: Improve the multi-selection display of Culling Mask and Static fields of certain components. (1190806)

  • Editor: Improved the reliability of our SQLite implementation.

  • Editor: LODGroup values can now be edited via input fields in addition to the slider. Input field editing also works in multi-selection mode.

  • Editor: Optimized mobile ASTC texture compression (about two times faster now).

  • Editor: Optimized mobile ASTC texture compression some more (10% speedup).

  • Editor: Optimized mobile ETC/ETC2/EAC texture compression (about two times faster now).

  • Editor: Optimized mobile PVRTC texture compression (8% speedup).

  • Editor: Optimized various parts of texture importing (5%-20% faster depending on settings & texture types used).

  • Editor: Optimized various parts of texture importing (~10% faster depending on settings & texture types used).

  • Editor: Reduced editor repaints while rendering HDRP.

  • Editor: Scene/Game view Gizmos dropdown window now has a search field. (1274775)

  • Editor: Two new events added to ObjectSelector: ObjectSelectorSelectionDone: An item in the list is double-clicked; and ObjectSelectorCanceled: The window was closed by explicitly pressing escape on the keyboard.

  • Editor: Updated Navigation icons. (1254021)

  • GI: Hiding Enlighten specific settings when it is not supported by the SRP. Affected areas are Mesh Renderer, Light, Scene view, Lighting Explorer and Lightmap Parameters.

  • Graphics: Fixed async readback crashing on DX12 if buffer was a SubUpdates buffer.

  • Graphics: Improved compression speed for ASTC textures.

  • Graphics: Improved error on DX12 while trying to set stable power state but windows was not in developer mode.

  • Graphics: Improved the performance of loading single mip cubemaps on GameCore.

  • Graphics: Optimized static batching process, e.g. entering play mode with 30k static batched objects in the editor is faster by two seconds.

  • Graphics: UnityEngine.Profiling.Recorder.gpuElapsedNanoseconds now can measure GPU time on OpenGL ES3.

  • IL2CPP: An IL2CPP failure will now result in one (instead of two) error messages. The error message text will be displayed with as little extra information as possible, so that the error is (hopefully) more understandable.

  • IL2CPP: Improved error message when required Visual Studio components are not installed when building for Windows.

  • IL2CPP: On Android public symbol file (for ex., libil2cpp.sym.so) will no longer contain debugging symbols, it will only contain symbol table, debugging symbol are present in libil2cpp.dbg.so. This should significantly lower the file size of libil2cpp.sym.so.

  • IL2CPP: When script debugging is enabled, stack traces will now include C# source code line numbers for all assemblies where debug symbols are available.

  • Kernel: Fixed instability in FolderContentsMatchesTheOneReturnedByGenerateDirectoryStructure test.

  • Mobile: Updated com.unity.mobile.notifications to 1.3.2.

  • Networking: Make UnityWebRequest objects properly show up in profiler. (1017004)

  • Package: Upgrading input system package to 1.0.1.

  • Prefabs: Performance of 'Undo' operations on objects in nested prefabs has been optimized by up to 30%.

  • Profiler: Added ability to specify port in the direct Profiler connection UI.

  • Profiler: Added profiling support to Asset Import process via direct IP connection.

  • Profiler: Added progress bar when loading and saving Profiler data.

  • Profiler: Call Stacks displayed in the CPU Usage Profiler now by default only show calls for which more information than just their memory address is present. You can toggle on "Full details for Call Stacks" if you want to see the addresses.

  • Profiler: Call Stacks displayed in the selection tool-tip of Timeline view are now clickable if they contain file information.

  • Profiler: Duplicated sample name for the Call view in Profiler in the tooltip to ensure it is fully readable. (1241955)

  • Scripting: Added c/cpp/mm/m/java/h as defaults to "Project Settings->Editor->Additional extensions", so they would appear in code editor, and thus providing easy way to edit them and inspect them. (1284679)

  • Scripting: Added support for new managed code stripping annotation attributes.

  • Scripting: Added support for Unity Version Defines in Assembly definition import options.
    This feature improvement allows scripts to easily specify different code snippets for different unity version ranges. This is especially useful for introducing calls to newly added public APIs, in which case these API calls needs to be guarded by defines based on a unity version range of a given unity version or later.
    Unity version range expression syntax is the same as package version range expressions. Unity version format differs from package version format, thus Unity version expressions are evaluated based on some rules specific to the Unity version format:

    • Comparison of release types follows the following rules: a<b<f=c<p<x. So eg. an alpha version is always smaller (earlier) than a beta version, regardless of the Incremental version.
    • The unity versions are allowed to have suffixes (e.g 2020.1.3-bonfire) which are ignored by the unity version comparison code
    • Chinese releases are equivalent to public releases (f) so for the sake of comparison in the version range expression 2020.1f3 would be equal to 2020.1c3[
    • experimental releases don't include an Incremental Version - e.g. everything after 2020.2.1x would be treated as suffix and ignored by the version comparison.
  • Scripting: GameObject.FindGameObjectWithTag and GameObject.FindGameObjectsWithTag are much faster.

  • Scripting: MenuItem for manually running script updater is removed. It now always offers to update when it finds a compilation error it can fix.

  • Scripting: Script compilation has a background task progress bar when auto-refresh is disbled.

  • Scripting: Script Compilation is now incremental across player builds.

  • Scripting: Script Updater approval dialog will show you which files will be overwritten before you give permission.

  • Scripting: Script Updater causes fewer script recompiles when importing/upgrading projects.

  • Scripting: The errors that trigger a script updater are no longer displayed in the console window.

  • Shaders: #pragma require now works from compute shaders as well.

  • Shaders: Added shader name to messages in the log about shader state being unsupported,.

  • Shaders: Shaders can now use UNITY_PLATFORM_<PLATFORM_NAME> defines to specialize compilation per build target platform (examples: UNITY_PLATFORM_OSX, UNITY_PLATFORM_WINDOWS).

  • SpeedTree: A Fix button now will appear in Mesh Renderer and LOD Group component inspector if Unity detects wrong SpeedTree shader is used (for instance Nature/SpeedTree8 shader is used for meshes that come from SpeedTree 7 assets, and vice versa), and will correct them if clicked. (1237736)

  • Terrain: Added "Delete Brush..." button to the brush selection UI.

  • Terrain: Now a "Hole Edge Padding" option is added to terrain Detail Prototype that you can control how far details objects will be from the hole edge.

  • Terrain: Now an error message will show up on UI when you select an invalid detail prototype.

  • Terrain: Reduced Terrain per-frame CPU update cost.

  • UI Toolkit: Improved renderer batching.

  • Version Control: Smart Merge (UnityYamlMerge) now allows ignoring "tiny" float differences in some fields. For a configuration example, see mergerules.txt. (1211899)

  • WebGL: Added support for QualitySettings.vsyncCount so it is no longer ignored.

  • WebGL: Added support for smooth rendering of decimated frame rates for 60/k fps (30, 20, 15, 12, 10 and 5 fps).

  • WebGL: Added support for vsyncless rendering for development/profiling purposes (enabled by setting QualitySettings.vsyncCount = 0; and Application.targetFrameRate = 1000;).

  • XR: Update XR Plug-in Management to 3.2.16 and Windows MR XR Plug-in to 5.0.0.

  • XR: Updated api docs on XRDisplaySubsystem.scaleOfAllViewports and XRDisplaySubsystem.scaleOfAllRenderTargets.

  • XR: Updated Windows Mixed Reality XR Plugin verified version to 4.1.1.

Features

  • 2D: Added an option to enable/disable Alpha Dilate for SpriteAtlas.
    This adds ability to use Alpha Transparency for padding pixels around Sprite Borders when packing SpriteAtlas.

  • 2D: Added C# Job Tessellation support for Fill Area of SpriteShape.

  • 2D: Added Isometric Grid slicing to Sprite Editor.

  • 2D: Added support to allow user to toggle drawing of Grid Gizmo in the Tile Palette window with a button in the Tile Palette window.

  • 2D: Added support to allow users to toggle drawing of Grid Gizmo for a Grid component in the SceneView using the SceneView Gizmo button or through the list in the Gizmo dropdown.

  • 2D: Allow showing of confirmation dialog when Apply or Revert button on Sprite Editor Window in pressed. This can be turned on or off in Preferences.

  • Burst: A new option [BurstCompile(DisableSafetyChecks = true)] that allows per job or function-pointer disabling of safety checks. This allows users to have blessed code run fast always.

  • Burst: Added a compiler warning for any use of throwing an exception from a method not guarded by [Conditional("ENABLE_UNITY_COLLECTIONS_CHECKS")]. Since exceptions in Burst are only supported in the editor, this provides a useful warning to users who may be relying on try/catch behaviors for control-flow which is not supported in final game builds.

  • Burst: Added first batch of Arm Neon intrinsics. Currently, only ArmV8 (AArch64) targets are supported. The supported intrinsics include all ArmV7 and ArmV8 ones.

  • Burst: Added intrinsics support for AtomicSafetyHandle.NewStaticSafetyId.

  • Burst: Added support for stacktraces in Burst exceptions.

  • Burst: Added support for try/finally and using/foreach for IDisposable patterns.

  • Burst: Added support to load additional burst libraries in playmode/standalone for the intention of allowing Modding support on desktop platforms.

  • Burst: Added BurstCompiler.IsEnabled API.

  • Burst: An error message if attempting to BurstCompiler.CompileFunctionPointer() on a multicast delegate, since this is not supported in Burst.

  • Burst: Burst compilation status is now displayed in the Background Tasks window in Unity 2020.1 and above (click the spinner in the bottom-right of the Editor to open this window).

  • Burst: Experimental support for tvOS.

  • Burst: Improve Editor experience by scheduling compilation immediately after assemblies are changed, instead of waiting until Play Mode is entered.

  • Burst: Improved our aliasing detection to allow DynamicBuffer structs to be easily vectorizable.

  • Burst: Upgraded Burst to use LLVM Version 10.0.0 by default, bringing the latest optimization improvements from the LLVM project.

  • Burst: VS 2017 support for platform that needs it.

  • Burst: You can now select explicit x86/x64 architecture SIMD target for Universal Windows Platform.

  • Editor: Added Device Simulator window as a core feature of the Editor.

  • Editor: Fetch the access token in a synchronous way if username and password is passed in arguments.

  • Editor: Improved integration Search in Unity.

  • Graphics: Mesh sampling skinned & Index.

  • Mobile: Adaptive Performance: Added a transparency scaler.

  • Mobile: Adaptive Performance: Added settings to control the Indexers thermal and performance actions when using the Device Simulator.

  • Package: Updated to ProBuilder 5.0.0-pre.7.

  • Package Manager: Added a new add package by name dropdown and revamped the existing add from git URL dropdown.

  • Package Manager: Give the users more choices concerning the load next value to load their assets in My assets filter.

  • Package Manager: Infobox text that describes the current flow of the package when the version is not a Release.

  • Package Manager: Package Manager: 'Release Candidate (RC)' packages will no longer be tagged as such for users on release builds- it was decided that it's confusing for users to see a tag different from the version tag (-pre), so release builds just tag RC packages as Pre-Release now. Users on Developer builds still see RC packages tagged as RC.

  • Package Manager: Removed 'See all versions' option in version list for external users, added Project Setting for internal users to re-enable this option.

  • Package Manager: Updated Package Manager UI version tags for new Lifecycle and logic for recommending/showing available versions to users.

  • Particles: Added new Emitter velocity mode - Manual. This mode can be used to override the ParticleSystem's calculated emitter velocity value. This gives scripts complete control over the ParticleSystem velocity. It is also possible to use this whilst authoring a system to simulate movement when making an effect that relies on movement.

  • Scripting: Introduced the ability to setup script compilation defines (in asmdef inspector) depending on the Unity version the scripts are being compiled for (Uniy Version Defines).

  • UI Toolkit: Added 2D Sprites use as background style images.

  • UI Toolkit: Added element drag and drop and re-ordering support in the Canvas.

  • UI Toolkit: Added in-Canvas style toggles for flex and text alignment.

  • UI Toolkit: Added Rich Text style properties to the Inspector.

  • UI Toolkit: Added support for azimuthAngle, altitudeAngle, twist, and multiple Pen devices in EventSystem when using Input System package.

  • UI Toolkit: Added UI Builder, a visual UI authoring tool for UI Toolkit. It was initially released as a package (com.unity.ui.builder) and is now part of core Unity for its 1.0 full release.
    https://unity3d.atlassian.net/browse/UR-1324.

  • UI Toolkit: Added user Theme StyleSheet enumeration and preview in the Canvas.

  • UI Toolkit: Added USS variable search in Inspector style fields.

  • UI Toolkit: Adds support of mixed values mode for UI Toolkit's implementation of the Property field.

  • UI Toolkit: Created PanelEventHandler and PanelRaycaster components allowing UI Toolkit panels to receive events and selection from a standard UI EventSystem. EventSystem now has a SetUITookitEventSystemOverride method to default override for UI Toolkit's event system and to change whether panel components should be created automatically on start. PanelSettings sortingOrder is used to determine drawing and selection order between UI Toolkit panels and UI canvases.

  • UI Toolkit: Dynamic texture slots to reduce batch breaking.

  • UI Toolkit: Sprite support in UI Toolkit.

Changeset: 18321e85013a