Unity 2021.1.0 Alpha 6

Released:
Select the runtime platforms of your choice from the list below (the desktop runtime is included as standard) or, to install the full complement of runtime platforms, use the download assistant installer above.

Known Issues in 2021.1.0a6

  • 2D: Fixed a Crash on when using Sprite Atlas with secondary texture assigned. (1288572)
    Fixed in 2021.1.0a7.

  • 2D: Fixed unable to create Sprite Shape Profile along with ArgumentNullException thrown in the Project window (1280016)
    This has already been backported to older releases and will not be mentioned in final notes.
    Fixed in 2021.1.0a7.

  • Android: Loading the Viking Village scene takes a couple of minutes (1276114)

  • Asset Import Pipeline: Parent and child nested Scriptable Object Assets switch places when parent Scriptable Object Asset is renamed (1189089)

  • Asset Importers: [Performance Regression] Importing an fbx model is noticeably slower when the model contains Animations (1265275)

  • Audio: [editor][fmod][macOS] Editor is preventing Mac OS from entering sleep mode automatically (995866)

  • Cloth: 'Cloth Constraints' & 'Cloth self Inter collision' windows properties are not selectable (1288691)

  • Editor: Fix the issue with Cancelling Display Dialog error when switching active input handling setting (1283400)
    Fixed in 2021.1.0a8.

  • Editor: Fixed color picker in shader graph doesn't work on mouse up. (1289161)
    Fixed in 2021.1.0a7.

  • Global Illumination: [OSX] Crash on 'Preparing Bake' stage when rebaking GI after changing lighting settings and clearing baked data (1271626)

  • Global Illumination: [macOS] BugReporter doesn't get invoked when the project crashes (1219458)

  • GraphView: Fix unresponsive GraphView after dropping a node in a stack (1275569)
    Fixed in 2021.1.0a7.

  • Graphics: CPU sampling of gradient in vfx now longer convert from gamma (1289889)
    This has already been backported to older releases and will not be mentioned in final notes.
    Fixed in 2021.1.0a7.

  • Graphics: Fixed Crash when loading assetbundle texture with out-of-bound mipmap bias value in DX12. (1179311)
    Fixed in 2021.1.0a7.

  • Hub: [HUB] Not enough space warning is thrown if disk where Unity Hub is installed has not enough space for new Unity Editor (1160095)

  • IMGUI: Crash on block_remove when picking color for Sprite Renderer with pipette (1287675)

  • IMGUI: Editor hitches on Application.Message.MouseMove when using Mouse3 to move view in the window (1283157)

  • IMGUI: Fixed an issue where Editor slows down when ObjectSelector/ProjectBrowser has large number of objects. (1285342)
    This has already been backported to older releases and will not be mentioned in final notes.
    Fixed in 2021.1.0a7.

  • IMGUI: [Animation] Unable to rename Animator Parameter & Layer once it is created (1286614)

  • Linux: InputSystem's Mouse delta values do not change when the Cursor lockState is set to Locked (1248389)

  • Linux: Linux Editor crashes at "gtk_fixed_put" when opening a project (1288797)

  • MacOS: [Metal][Editor] Memory grows continuously until Editor crashes when importing 100k materials (1214197)

  • Mesh Renderer: Crash on SkinnedMeshRendererManager::RemoveRenderer(SkinnedMeshRenderer&) when exiting Play Mode (1292526)

  • Mobile: [Android] Video player unable to play video from Asset bundles (1287770)

  • Package: [Reflect] Standalone build fails with package errors if Unity Reflect is installed (1266377)

  • Particles: Limit the rendering cache size to avoid using lots of memory when using multiple cameras. (1270438)
    This has already been backported to older releases and will not be mentioned in final notes.
    Fixed in 2021.1.0a7.

  • Project Browser: Selecting an asset in the Project Browser also highlights a game object in the Hierarchy (1291713)

  • Scene/Game View: An error is thrown when maximizing the Scene/Game view after changing the Layout of windows and re-opening the project (1287233)

  • Scene/Game View: [Wild Crash] Editor crashes on mono_aot_get_cached_class_info when GizmoSetup has cached an outdated data (1259765)

  • Scripting: Crashes on mono_class_init when entering Play Mode after recompiling scripts (1262671)

  • Scripting: Infinite project load when PrecompiledAssemblyException is encountered with clean project (1277885)

  • Serialization: Unity crashes when saving something while being out of space (840183)

  • Shader System: [Shader] Editor gets blank on selecting "Use full Sampler precision by default" option in Shader precision model (1293568)

  • Shadows/Lights: Skybox lighting is not rendered after creating gameobjects in the new scene until the lighting is rebaked (1250293)

  • Terrain: CPU usage spikes in the Loading.LockPersistentManager when async loading/unloading Scenes with Terrain (1276854)

  • Terrain: Terrain Lit Opacity as Density option causes alpha'd areas on the 5th layer or greater to appear with artifacts (1283124)

  • Vulkan: Right-clicking panels turns them black when Vulkan is the selected Graphics API (1283290)

  • WebGL: [Audio] " Cannot create FMOD" Error when importing 3D Game Kit project on webGL (1293595)

  • WebGL: [Linux] WebGL build always fails and throws a FileNotFoundException (1268262)

  • Window Management: Display.displays.Length outputs wrong display count in Editor console (786492)

  • Window Management: [MacOS] Crash on -[ContainerWindowDelegate windowWillClose:] when closing "Unity Editor Update Check" window on a new project (1285668)

  • XR: [XR SDK][Oculus] EarlyUpdate.XRUpdate spikes inconsistently (1262597)

  • iOS: Crash on il2cpp::vm::LivenessState::AddProcessObject when using Social.LoadUsers and then changing scenes (1270230)

  • iOS: [UaaL] UnityFramework with 3rd party plugins triggers watchdog termination after launch (1262272)

New 2021.1.0a6 Entries since 2021.1.0a5

Fixes

  • 2D: Fixed dynamic batching for TilemapRenderer in Individual mode with SpriteRenderers when Sprites have secondary textures set. (1277223)
    This has already been backported to older releases and will not be mentioned in final notes.

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

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

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

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

  • Android: Disabled Optimized Frame Pacing on Android 4.4-5.1 to fix crash/freeze. (1268910)

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

  • Animation: Fixed a bug where changes to an entry transition wouldn't rebuild the state machine. (1282801)

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

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

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

  • Asset Import: Fixed issue with model rotated 90 degrees when upgrading project from version 2020.2.0a20 and below to 2020.2.0a21 and above. (1276677)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Asset Import: Fixed issue with OnAssignMaterialModel next methods not called even when the first one returns a null object. (1280978)
    This has already been backported to older releases and will not be mentioned in final notes.

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

  • Asset Pipeline: Added AssetPathToGUIDOptions enum to modify behavior of AssetPathToGUID. (1278834)
    This has already been backported to older releases and will not be mentioned in final notes.

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

  • DX12: Fixed Int shader properties (declared in the Properties block) not being set up correctly in ray tracing shader code. (1287762)
    This has already been backported to older releases and will not be mentioned in final notes.

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

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

  • Editor: Fixed an issue causing input handler to be set incorrectly when upgrading projects. (1287791)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Editor: Fixed bundle identifier can't be set in the generated Xcode project for iOS. (1284759)

  • Editor: Fixed crash on update in collab. (913690)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 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 organization refresh every tick. (1280142)

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

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

  • Editor: Fixed resize hover state. (1212854)

  • 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: Scripting defines list cut/copy/paste functionality improved. (1287729)
    This has already been backported to older releases and will not be mentioned in final notes.

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

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

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

  • GI: TextureImporter now chooses the ETC2 format instead of PVRTC for directional lightmaps by default when build target is iOS. (1235359)

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

  • Graphics: Corrected priority for the vfx assets. (1284439)

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

  • Graphics: Fixed case 1266922.

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

  • Graphics: Fixed frame debugger not showing correct keywords when stage-specific shader features are used. (1261620)

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

  • Graphics: Fixed NullReferenceException thrown cause by a missing Null check on Texture3DPreview::GetInfoString(). (1289610)
    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 progress bar showing incorrect project initialization sequence. (1284748)

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

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

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

  • Graphics: Shadows are not taken into account on any light type if object is not on Default Light Layer. (1289846)
    This has already been backported to older releases and will not be mentioned in final notes.

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

  • Graphics: [Stadia] Black screen when invalidating Vulkan swapchain on resume after app is suspended. (1270045)
    This has already been backported to older releases and will not be mentioned in final notes.

  • IL2CPP: Fixed an exception that could be throw if System.Data.DataCommonEventSource.ExitScope was called at runtime on a non-windows platform when managed code stripping is enabled. (1278839)

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

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

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

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

  • Physics: Ensure that changing a Rigidbody2D constraint on a prefab instance results in the change being indicated by a bold label in the inspector. (1265836)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Physics: Ensure that changing the Rigidbody2D mass distribution correctly adjusts the center of mass velocity. (1272075)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Physics: Ensure the 2D per-frame SimulationMode2D correctly runs the simulation after the Update script callback and not before it to match FixedUpdate script callback. (1274820)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Physics: Fixed an issue when filtering out bad 2D physics collision shapes produced by the internal shape tessellator where occasionally a good shape is filtered out. (1274172)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Physics: Fixed an occasional crash when destroying a PhysicsScene2D while destroying active contacts or collider-ignore-collision settings. (1268659)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Prefabs: Fixed regression preventing both required component and the dependent from both being removed from a prefab instance. (1277654)

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

  • Prefabs: Fixed using 'Clear Parent' menu item in Prefab Mode. (1288117)
    This is a change to a 2021.1.0a1 change, not seen in any released version, and will not be mentioned in final notes.

  • Prefabs: Improved error handling when loading broken prefab files. (1278298)

  • Profiler: Fixed an issue where FrameCount inside the ProfilerUserSettings would clamp to a 0 - 2000 frame range instead of 300 - 2000, thus causing the charts inside the ProfilerWindow to throw out of range exceptions. (1288878)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Profiler: Fixed CPU Recorder sampleBlockCount is unstable depending of thread scheduling. (1201319)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Profiler: Fixed gc allocation in unsafe version of Profiler.EmitFrameMetaData. (1281405)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Profiler: Fixed issue where entering PlayMode with the editor open would throw "GetInt is not allowed error". (1289794)
    This has already been backported to older releases and will not be mentioned in final notes.

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

  • Scene/Game View: Picking: Needed for PolyBrush PR : https://github.com/Unity-Technologies/polybrush/pull/144. (1271427)

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

  • Shaders: Fixed out of bounds access to static const arrays in generated GLSL code. (1276781)

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

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

  • Universal Windows Platform: Fixed an issue in D3D12 where disabling VSync didn't allow running at unlocked frame rate. (1289170)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Video: Crash with videos that have rotation metadata on Windows. (1268145)
    This has already been backported to older releases and will not be mentioned in final notes.

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

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

  • XR: Utilize volume up and down buttons on VR devices to confirm and proceed when Android dialog is not visible on VR devices instead of only restricting to click "Ok" button on screen. (1140155)
    This has already been backported to older releases and will not be mentioned in final notes.

API Changes

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

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

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

  • 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: Changed: ProgressBar was moved to UnityEngine.UIElements to support runtime.

Changes

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

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

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

Improvements

  • Build Pipeline: Upgraded udp package to 2.1.0.

  • Editor: Optimized mobile ASTC texture compression (about two times faster now).

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

  • Scene/Game View: Improved performance of selection outline and wireframe rendering in the Scene View. (1271634)

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

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.

Preview of Final 2021.1.0a6 Release Notes

Fixes

  • 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 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: Made com.unity.2d.sprite and com.unity.2d.tilemap discoverable in Package Manager.

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

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

  • 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: Disabled Optimized Frame Pacing on Android 4.4-5.1 to fix crash/freeze. (1268910)

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

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

  • 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 changes to an entry transition wouldn't rebuild the state machine. (1282801)

  • 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 when calling SamplePlayableGraph with Custom Playable. (1272325)

  • 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 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: Removed unsupported layerElement reference mode error logs. (1225010)

  • 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: Deleting an asset in use in import worker could cause an infinite refresh loop. (1263755)

  • 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 project Startup time being slow due to unmatched Custom Dependencies. (1276078)

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

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

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

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

  • 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 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: 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 create Sorting Layers with the different names. (1268131)

  • 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 'static' keyword gets clipped in the inspector header when a prefab instance is marked as static. (1166126)

  • 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 assembly reloading happened more than once when switching to the Unity Editor from another app or between Unity Editor windows. (1272211)

  • 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 Animation window keyframe Copy/Paste keyboard shortcuts not working before the main curve area has been clicked on. (1265480)

  • Editor: Fixed bundle identifier can't be set in the generated Xcode project for iOS. (1284759)

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

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

  • Editor: Fixed crash in GizmoUtilTests. (1274537)

  • 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 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 modal window becoming non-interactable when creating a child modal window. (1215161)

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

  • 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 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 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 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 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: 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: Lightmap visualization tonemapping now works on Editor start. (1279800)

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

  • Editor: Mouse dragging on macOS no longer degrades editor performance. (1281005)

  • 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: 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 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: 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 crash in Enlighten::CpuUpdateManager::UpdateGpuTexture when starting GI bake after baking previous scene with GPU progressive lightmapper. (1250819)

  • 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: Made indirect bounce intensity animatable. (1278770)

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

  • 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: TextureImporter now chooses the ETC2 format instead of PVRTC for directional lightmaps by default when build target is iOS. (1235359)

  • 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 SupportsRandomWriteOnRenderTextureFormat to query if a given RenderTextureFormat can be used when enabling the random write flag. (1266102)

  • 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 priority for the vfx assets. (1284439)

  • 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 when there is a change in antialiasing requirements when camera preview texture is visible a lot of console errors happen. (1176014)

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

  • 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 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 frame debugger not showing correct keywords when stage-specific shader features are used. (1261620)

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

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

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

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

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

  • Graphics: Fixed not throwing exception when creating unsupported Crunched Cubemap from script, Crunched Texture3D, CubemapArray, Texture2DArray and SparseTexture. (1278154)

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

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

  • Graphics: Fixed progress bar showing incorrect project initialization sequence. (1284748)

  • 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 targetTexture rendering black screen when changing it in OnPreRender(). (1274376)

  • 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 -&amp;gt; CalculateObliqueMatrix -&amp;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: 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: Restore all settings on LODGroup to defaults when Reset. (1254015)

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

  • 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: The Post-processing package has been updated to version 3.0.1.

  • Graphics: Update SRP packages to 10.1.0.

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

  • Graphics: Using Mesh Compression import setting on non-standard vertex data formats no longer crashes. (1267820)

  • 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: Correctly report the public key for assemblies where is exists.

  • IL2CPP: Fixed an exception that could be throw if System.Data.DataCommonEventSource.ExitScope was called at runtime on a non-windows platform when managed code stripping is enabled. (1278839)

  • 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: 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: Fixed application not rendering when using a very high Application.targetFrameRate.

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

  • 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 performance regression while running in Play mode inside the editor. (1271213)

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

  • 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: fix il2cpp stripping potentially making ReceiveContentLength not called on custom download handler. (1282106)

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

  • 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 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 new versions of a package doesn't show up after a refresh in In Project tab. (1281125)

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

  • 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 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 Physics Debug window section titles to be clickable for dropdown. (1261353)

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

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

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

  • Prefabs: Fixed Applying component or property takes current Animation Mode Preview or Recording values. (1077718)

  • 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 Prefab preview in Inspector doesn't update until reselected. (1056071)

  • Prefabs: Fixed regression preventing both required component and the dependent from both being removed from a prefab instance. (1277654)

  • Prefabs: Fixed that the Inspector preview window displays all LODs on a prefab simultaneously, stacked on top of one another. (1089143)

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

  • Prefabs: Improved error handling when loading broken prefab files. (1278298)

  • Prefabs: Opening Prefab from the prompt displayed when deleting 2nd level nested Prefab shows double rendering in Prefab Mode. (1277627)

  • 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 which caused RegisterNewMarkerCallback to be called multiple times with the same marker. (1158554)

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

  • 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 Profiler settings option to clarify what it does. (1240432)

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

  • 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: Fixes a race condition in the Shadow Casters stat observed as part of case 1265648, which can cause inconsistent collection of the stat. (1265648)

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

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

  • Scene/Game View: Picking: Needed for PolyBrush PR : https://github.com/Unity-Technologies/polybrush/pull/144. (1271427)

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

  • 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 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: Fixed issue with dynamic methods not being cleaned up on domain reload which would lead to corrupted data that would then cause this crash. (1273662)

  • Scripting: Fixed macOS Standalone player built for Apple silicon architecture crashing on startup with Mono scripting backend when running on macOS Big Sur Beta 6 or later. (1278359)

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

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

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

  • 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: 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 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: Fixed native metal shaders failing to import when using caching preprocessor. (1284963)

  • Shaders: Fixed options not being parsed for multi_compile_instancing when using caching preprocessor. (1285968)

  • Shaders: Fixed out of bounds access to static const arrays in generated GLSL code. (1276781)

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

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

  • 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: 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: When reparenting a element of the tree, all modification made by hand are reset to avoid strange behaviors. (1272795)

  • 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 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 selected UI element would not get the highlight state when hovered. (1274735)

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

  • 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: Enabled dynamic atlassing of sprites. Fixed tight sprite scale modes.

  • 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 panel color that was not being premultiplied before clearing the target texture background. (1277149)

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

  • 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 the ellipsis activated unpredictably with scaling factor other than 100%. (1268016)

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

  • 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: Added support for PVRTC and RG16 textures. Enable use of high-performance WebGL GPU powerPreference. (1187965)

  • 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 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: 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 UI animation stutter when Alt-Tabbing to and from the Editor. (1278085)

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

  • XR: [Lumin] Lumin builds no longer needlessly package pre-compiled managed DLLs into the final MPK. (1218580)

  • XR: [Lumin] Lumin builds now properly include source plugins when building the IL2CPP library. (1233875)

API Changes

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

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

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

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

  • 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 MeasureTextSize method for InputFields.

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

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.

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

  • 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: 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: Update verified packages for AR Foundation and related packages.

Improvements

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

  • 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: Update 2D template to use current verified version of 2D packages.

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

  • 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: 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: 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 ETC/ETC2/EAC texture compression (about two times faster now).

  • 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: Improved compression speed for ASTC textures.

  • Graphics: Optimized static batching process, e.g. entering play mode with 30k static batched objects in the editor is faster by two seconds.

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

  • Networking: Make UnityWebRequest objects properly show up in profiler. (1017004)

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

  • Scene/Game View: Improved performance of selection outline and wireframe rendering in the Scene View. (1271634)

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

  • 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 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(&quot;ENABLE_UNITY_COLLECTIONS_CHECKS&quot;)]. 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 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.

  • Graphics: Mesh sampling skinned & Index.

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

  • 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: Adds support of mixed values mode for UI Toolkit's implementation of the Property field.

  • UI Toolkit: Dynamic texture slots to reduce batch breaking.

  • UI Toolkit: Sprite support in UI Toolkit.

Changeset:
0722b711ea8f

Third Party Notices

For more information please see our Open Source Software Licenses FAQ on the Unity Support Portal

Мы используем cookie-файлы, чтобы вам было удобнее работать с нашим веб-сайтом. Подробнее об этом можно узнать на странице, посвященной политике использования cookie-файлов.

Согласен