Release notes

Known Issues in 2022.1.0a15

  • 2D: Reordering "Sorting Layers" list causes Sprites to reference different Layer names and ID (1376779)

  • AI: NavMesh Agent can not pass through passable area between carving NavMesh Obstacles (1346325)

  • Android: Sometimes text is not rendered when using OpengLES3 on a Xiaomi Redmi9A device. (1347186)

  • Bugreporter: Bug reporter upload of report fails consistently with non actionable error message (1358568)

  • DirectX12: Objects are not lighted in Game view when using SEGI system with Graphics API for Windows set to Direct3D12 (1375746)

  • Editor: Fixed DontSaveInEditor to work as intended on Prefab instances (1363573)
    Fixed in 2022.1.0a16.

  • GI: Fix performance regression in CPU Lightmapper. (1369204)
    First seen in 2022.1.0a5.
    Fixed in 2022.1.0a16.

  • HD RP: HDRP Template fills the Console with "Shader error...couldn't open include file" messages after building the project (1342989)

  • Hub: [HUB] Android tools are not expanded by default in the "Add Modules" window (1310236)

  • IL2CPP: System.Runtime.Serialization.Formatters.BinaryFormatter doesn't work when Project is build with IL2CPP Scripting Backend (1374185)

  • IMGUI: List Elements in the PropertyField disappear when the window is displayed on the second screen (1371078)

  • Inspector Framework: In Record and Preview mode, right clicking Scale does not bring up Animation related features (1365369)

  • Linux: Player settings and other options are locked after script compilation (1380015)

  • Linux: Linux Editor crashes at "RegisterRuntimeInitializeAndCleanup::ExecuteCleanup()" when quitting from "Enter Safe Mode" prompt (1374087)

  • Linux: Linux Editor crashes at "__assert_fail_base.cold" when opening a project (1375312)

  • MacOS: Editor instantly crashes due to Invalid parameter not satisfying: types != nil error while trying to Build (1377901)

  • MacOS: Animation Window no longer adds keys immediately (1375996)

  • MacOS: Editor freezes when Vsync is enabled and Game View window is resized on macOS (1375973)

  • MacOS: MacOS editor fails to load platform editor extensions (1322945)

  • MacOS: [OSX][Editor] DirectoryNotFoundException errors appear when a project is created inside a directory with unicode characters (1377915)

  • Native Window Management: [MacOS] Editor crashes after closing the splash screen (1380096)

  • Packman: Importing a project from the asset Store doesn't import packages, even if you chose yes at the dialogue (1377896)

  • Packman: User can't easily configure location of both UPM and Asset Store package local cache (1317232)

  • Particles: Fix exception on WebGL builds when pre-allocating Particle System memory for systems using infinite lifetimes. (1320919)
    Fixed in 2022.1.0a16.

  • Progressive Lightmapper: [GPU PLM] Crash in (nvopencl64) clGetPlatformInfo after enabling Auto Generate checkbox at the end of GI Bake (1379762)

  • Progressive Lightmapper: [GPU PLM] Fallback to CPU PLM in CL_INVALID_MEM_OBJECT after switching light color only and rebaking GI (1356714)

  • Progressive Lightmapper: [LightProbes] Probes lose their lighting data after entering Play mode when Baked and Realtime GI are enabled (1052045)

  • Scene Management: An error is thrown when merging changes made to a Prefab into a Nested Prefab with co-dependant components (1362574)

  • Scene Template: [Linux][HDRP] Editor crashes when opening HDRP Sample Scene Template Project (1381237)

  • Scene/Game View: Editor freezes when selecting GameObjects in a Scene that contains a lot of GameObjects and has gizmos enabled (1350835)

  • Scripting: Crash in CombineMeshFiltersForStaticBatching after switching active additively loaded scenes and entering Play mode (1377416)

  • Scripting: Only some assemblies fail to be loaded when assembly name does not match the file name (1345099)

  • Scripting: Unity does not execute code weavers when the project is opened for the first time (1350116)

  • ShaderGraph: UI shaders are not rendered in Game View from 2021.2.0b2 (1352225)

  • ShaderGraph: [General][AssetDB][URP] Adding URP to the project causes reimports of many assets and goes into infinite import loops (1374611)

  • Shadows/Lights: Scene is brighter in Standalone player if it was open in the Editor at build time (1375015)

  • Shuriken: [Particles] Inspector breaks and errors are thrown when the Material field is deleted from the Particle System (1379541)

  • Templates: "Cancelling DisplayDialog" errors are printed when opening "2D URP" Template project (1378201)

  • UI Builder: Changes in UI Builder are lost when editing a 2D sprite (1357086)

  • URP: Fix for rendering thumbnails. (1348209)
    This has already been backported to older releases and will not be mentioned in final notes.
    Fixed in 2022.1.0a16.

  • URP: Fixed an issue in where installing the Adaptive Performance package caused errors to the inspector UI (1368161)
    Fixed in 2022.1.0a16.

  • VFX Graph: Compilation error while using not exposed texture in ShaderGraph (1367167)
    This has already been backported to older releases and will not be mentioned in final notes.
    Fixed in 2022.1.0a16.

  • WebGL: Build fails to launch due to Runtime errors (1371445)

  • WebGL: Profiler does not autoconnect on WebGL builds (1360399)

  • XR SDK: Severe flickering in Unity 2020.3.21f1 with OpenXR on HL2 (1376203)

New 2022.1.0a15 Entries since 2022.1.0a13

Features

  • 2D: [com.unity.2d.animation]Added an asset upgrading tool, which can upgrade older Sprite Library Assets and Animation Clips to the latest version.

  • 2D: [com.unity.2d.psdimporter]Allow user to selectively indicate which layer to import from a Photoshop file using PSDImporter.

  • 2D: [com.unity.2d.psdimporter]Expose cetrain PSDImporter import settings as APIs.

  • 2D: [com.unity.2d.spriteshape]Add actionable console log when encounter vertex count limit exception on Sprite Shape.

  • 2D: [com.unity.2d.spriteshape]Added support for Global Grid Snapping for editing Sprite Shapes.

  • 2D: [com.unity.2d.spriteshape]Added user preferences for Controlpoint/Tangent/Spline color.

  • 2D: [com.unity.2d.spriteshape]Improved estimation of vertices required for geometry to minimize memory alloction.

  • Android: Adaptive Performance added Adaptive Decals.

  • Android: Adaptive Performance added Adaptive Layer Culling.

  • Android: Adaptive Performance added Adaptive Physics.

  • Android: Adaptive Performance added Custom Scaler.

  • Android: Adaptive Performance added Visual Scripting support.

  • Asset Pipeline: Added options for Accelerator corruption detection.

  • Asset Pipeline: Model imported from the ModelImporter using the DefaultMaterial will re-import correctly to use SRP default material when changing the active Render Pipeline.

  • Input: Input Manager's Physical Keys is enabled by default for new projects. This enables layout independent keycodes on all platforms.

  • Input System: Added support for PS5 DualSense controllers on Mac and Windows.

  • License: Sunset Legacy Licensing module.

  • Package: Added com.unity.scripting.python 4.0.0-pre.1 as a pre-release package.

  • Package: Public release of com.unity.profiling.systemmetrics.mali@1.0.0-pre.2
    Documentation available at https://docs.unity3d.com/Packages/com.unity.profiling.systemmetrics.mali@latest/index.html.

  • Package: Settings Manager 2.0.0.

  • Package: Splines 1.0.0.

  • Package Manager: Added warning for Unity package versions that have invalid signatures, or are unsigned and is sourced from local tarball or scoped registry.

  • Package Manager: Allow user to easily configure location of both UPM and Asset Store package local cache.

  • Package Manager: Multi-selection and bulk operations have been added to the UI.

  • Physics: Added a new batched ClosestPointCommand to calculate the closest point to a convex off the main thread.

  • Physics: Added Contact and Query visualization to the Physics Debug window.

  • Physics: Added the option to filter by Unity scene along with physics scene in the Physics Debugger.

  • Prefabs: Differentiate applicable from revertible overrides.

  • Profiler: FrameTimingManager platform reach and frame timing information expanded.

  • Scene/Game View: Improving the workflow using ToolContexts.

  • Shaders: Added #pragma dynamic_branch and #pragma dynamic_branch_localdirectives to declare dynamic branching keywords in shaders.

  • Timeline: Added an API to control Timeline Editor Window playback through script.

  • UI Toolkit: BoundsField, BoundsIntField, DoubleField, FloatField, Hash128Field, IntegerField, LongField, RectField, RectIntField, Vector2Field, Vector3Field, Vector4Field, Vector2IntField and Vector3IntField are now usable in Runtime.

  • Version Control: Added visual overview bar to the incoming changes tab
    Added progress dialog for the migration process
    Added Branches tab that shows a list of all branches in the repository
    Added option and dialog to create a child branch from selected branch.
    Added option to switch to another branch
    Added option and dialog to rename a branch
    Added option to delete a branch
    Added a preference to save if the window should open the Branches tab by default
    Added metrics for Plastic SCM installation window usage.

  • Video: Added support for Mac for advanced video encoding controls for H.264.

  • Visual Scripting: Preview Version 1 of the High Performance Interpreter is public in version 1.8.0-pre.1. This can be downloaded using the package manager after enabling experimental packages.

  • WebGL: Added texture compression format setting to WebGL's player settings.

  • WebGL: Added WebGL template for Progressive Web Apps.

  • WebGL: Removed mobile browser warning from builds.

Improvements

  • 2D: Added Preset Support to SpriteAtlas V2.

  • 2D: Sprite Frame module's pivot unit mode now persists after entering and exiting playmode.

  • 2D: [com.unity.2d.psdimporter]Allow support for .PSD files through user switching for PSDImporter.

  • Android: Editor log will contain more information about the location from where OnPostGenerateGradleAndroidProject are called.

  • Android: OBB loading performance improved and removed excessive asks for external storage read permission.

  • Asset Import: Improved performance of asset import particularly when importing large numbers of small files such as scripts.

  • Asset Pipeline: Various performance optimizations for projects with large numbers of assets.

  • Burst: Improved Inspector UI.

  • Editor: Added a new badge system for scene templates that allows for a visual categorization.

  • Editor: Added an option to improve enter playmode speed by skipping unnecessary scene backups.

  • Editor: Added support for Editor asynchronous load and upload of textures set up for mipmapped streaming.

  • Editor: Improved Dynamic Batching feedback in the Frame Debugger for the "Objects are rendered using different rendering functions." message.

  • Editor: Improved package retrieval process when loading editor window.

  • Editor: Improved performance of picking large objects in Scene View.

  • Editor: Improved performance of Scene View with many LODGroups selected.

  • Editor: Improved the scene template instantiation experience.

  • Editor: MacOS editor launch screen now has an integrated progress display (Windows & Linux coming later).

  • Editor: Opening a project without a "last opened scene" will open a scene template (if any) instead of the default scene.

  • Editor: Optimized prefab editing, will knock about 20% off the cost of changing a large prefab.

  • Editor: Revamped the type dropdown in the scene template project settings.

  • Graphics: Improved CPU performance of the main thread when using ray tracing effects. Simple effects (AO, Shadows, Path Tracing) that don't use too many builtin shader properties (e.g. unity_SHAr, unity_Lightmap, etc.) will be 15-30% faster.

  • Graphics: Improved CPU performance on the render thread when setting up resources for ray tracing hit groups.

  • Graphics: The previously existing S8_UInt format can now be used as a RenderTexture DepthStencil format.

  • Graphics: Updated and add missing tooltips for light and reflection probes.

  • Graphics: When using an AMD GPU, D24_UNorm_S8_UInt was reported as supported on some APIs which is incorrect, this has been resolved. Internally, the driver fell back to D32_S8 anyhow so the behavior does not change, but the user will have more clarity now.

  • IL2CPP: Added support for calling generic instances that were not found at conversion time.

  • Input System: Touch input is handled from USB secondary capacitive touch screens on Android.

  • License: License type remove from editor title and about window.

  • Package: Added com.unity.cinemachine 2.9.0-pre.1 as a pre-release.

  • Physics: Updated to PhysX 4.1.2, a minor bugfix release. Release notes are available here: https://github.com/NVIDIAGameWorks/PhysX/blob/4.1/physx/release_notes.html.

  • Scene/Game View: ESC key is exiting from the current custom tool and go back to the latest persistent tool.

  • Scene/Game View: Made Picking more responsive by enabling Async Shader Compilation of Picking Shaders.

  • Scene/Game View: EditorToolContext settings are now displayed in the Tool Settings Overlay.

  • Scripting: Make JsonUtility.FromJson[Overwrite] faster on inputs with long string-valued fields.

  • Scripting: Unity engine and editor managed code is now compiled with .net standard 2.1.

  • Search: Improved query builder UX and UI.

  • Serialization: Added more examples to the reference for dealing with Arrays with SerializedProperty.

  • Serialization: SerializedProperty.boxedValue property supports reading and writing entire Structs.

  • Shaders: Optimized parsing of #line directives, making import of large shaders with many #line / #include directives faster.

  • Visual Scripting: Eliminating domain reload cost for users when not using Visual Scripting.

API Changes

  • 2D: Added: SortingGroup.ignoreParentSortingGroup to allow a Sorting Group to ignore all parents and sort on a global level instead of being a child of the parent Sorting Group.

  • 2D: Added: Tilemap.tilemapPositionsChanged.

  • 2D: Changed: Made Tilemap.tilemapTileChanged available in Runtime.

  • Build Pipeline: Deprecated: BuildReport.files has been deprecated. Use BuildReport.GetFiles() instead.

  • Burst: Added: Added support for DOTS Runtime running / loading .Net Core assemblies.

  • Burst: Added: Added support for System.Span and System.ReadOnlySpan within Bursted code. These types are not allowed as entry-point arguments.

  • Editor: Added: Added pen support in the macOS and Windows Editor for old and new input systems. Adds access to pen position, twist, tilt, pressure, and pen status (e.g. button state). On Windows, adds an addition API for coalesced pen events. The missing events can be retrieved with Input.GetPenEvent(). The count of accumulated pen events is retrieved with Input.penEventCount, and the queue of coalesced events cleared with Input.ResetPenEvents().

  • Graphics: Added: Added a new GraphicsFormatUtility function: IsDepthStencilFormat. Returns true if the format is a depth or stencil format, returns false otherwise.

  • Graphics: Added: Added new depth/stencil format to GraphicsFormat: D16_UNorm_S8_UInt.

  • Graphics: Added: D16_UNorm_S8_UInt and S8_UInt can now be selected as depth/stencil formats inside the RenderTexture inspector.

  • Graphics: Changed: BatchRendererGroup API new design.

  • iOS: Removed: Removed the obsolete iOS Notification Services API. Please consider using the the "Mobile Notifications" package (available in the Unity package manager) which implements the iOS UserNotifications framework.

  • Physics: Added: Expose a variant of Physics.BakeMesh that accepts cooking options.

  • Profiler: Added: Expose FrameTimingManager::IsFeatureEnabled() to C#.

  • Scene/Game View: Added: Added ability to specify a default container and alignment for new Overlays.

  • Scene/Game View: Added: EditorToolContext.GetAdditionalTools(), enabling Tool Contexts to define additional default tools in the same category as Move, Rotate, Scale.

  • Scene/Game View: Added: Editor classes for EditorTool can now implement the ICreateToolbar interface to create horizontal and vertical styled Overlay toolbars in addition to panel layouts.

  • Serialization: Added: SerializedProperty.boxedValue property.

  • Shaders: Added: Added LocalKeyword.isDynamic API to tell which keywords are declared as dynamic branching keywords for this shader.

  • UI Toolkit: Added: Allow custom USS styles to reference any kind of asset (through UnityEngine.Object).

  • WebGL: Deprecated: For WebGL builds, the WebGL 1 API is no longer included in the Auto Graphics API option (the default). If you need to build for both WebGL 1 and WebGL 2, uncheck the Auto Graphics API and manually add WebGL 1 to the Graphics APIs list.

  • Windows: Added: UnityEngine.Windows.Input.ForwardRawInput now has a second overload that is usable without enabling unsafe code.

Changes

  • 2D: 2D Template now starts with Sprite Atlas v2 as default Sprite Packing method.

  • 2D: 2D URP Template now starts with Sprite Atlas v2 as default Sprite Packing method.

  • 2D: Changed Sprite Inspector to show border values in pixel unit.

  • 2D: Changed the information in the Sprite Editor Window's slicing tool to clarify the different slicing methods available.

  • 2D: Updated 2D Template to use new package format structure.

  • 2D: Updated 2D URP Template to use new package format structure.

  • 2D: [com.unity.2d.animation]Animation package Orientation function being replaced with a simpler version.

  • 2D: [com.unity.2d.animation]Sprite Library Asset are now named "New Sprite Library Asset.spriteLib" by default on creation.

  • 2D: [com.unity.2d.animation]SpriteResolver.SetCategoryAndLabel and SpriteResolver.ResolveSpriteToSpriteRenderer now returns a bool to signal if the methods managed to resolve the request or not.

  • 2D: [com.unity.2d.animation]Updated Toolbar and Visibility tab buttons' selection color.

  • 2D: [com.unity.2d.spriteshape]Fix case where Bounds can cause spriteshape not load in when running Player. (1368107)
    First seen in 2022.1.0a10.

  • 2D: [com.unity.2d.spriteshape]Fix crash when optimizing the geometry of the SpriteShape in certain cases. (1364012)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: [com.unity.2d.spriteshape]Moved Control point specific data from Inspector to a Scene Overlay Window.

  • 2D: [com.unity.2d.spriteshape]Remove dependency to path package.

  • 2D: [com.unity.2d.spriteshape][com.unity.2d.path]Package com.unity.2d.path marked for deprecation.

  • 2D: [com.unity.2d.tilemap.extras][GameObjectBrush] Add canChangePosition.

  • 2D: [com.unity.2d.tilemap.extras][RuleOverrideTile] Create instance Tile on override.

  • 2D: [com.unity.2d.tilemap.extras][RuleTileEditor] Add blank space to the end of the Rule list.

  • 2D: [com.unity.2d.tilemap.extras][RuleTileEditor] Add drag and drop rect for Sprites to create initial TilingRules.

  • 2D: [com.unity.2d.tilemap.extras][RuleTileEditor] Add field to change number of TilingRules.

  • 2D: [com.unity.2d.tilemap.extras][RuleTile] Add scripting documentation.

  • 2D: [com.unity.2d.tilemap.extras][TintBrush] Add k_ScaleFactor for better precision when painting on non-rectangular Tilemaps.

  • 2D: [com.unity.2d.tilemap.extras][TintBrush] Convert cell positions to world positions based on the Grid used.

  • Burst: Burst now generates a link.xml automatically to avoid issues with stripping causing missing symbols at runtime from static constructor usage.

  • Burst: Burst now waits for all threads to complete on shutdown, rather than performing a thread abort, as that could lead to a race condition with Dispose.

  • Burst: Changed the optimization pipeline to run the loop unroller exclusively after the loop vectorizer. This improves codegen in a lot of cases (mostly because the SLP vectorizer is unable to vectorize all the code that the loop unroller could have).

  • Burst: Improved iteration time by triggering Burst compilation immediately after .NET assemblies have been compiled.

  • Burst: Intrinsics: Neon vst1 APIs are now fully supported.

  • Burst: Made the cost of initializing Direct Call methods for execution 33x faster during domain reload.

  • Burst: Made the SharedStatic initialization cost during static constructor initialization time 13.3x faster.

  • Burst: Made fmod and floating-point modulus use a faster algorithm to improve performance.

  • Burst: Removed the player build BC1370 exception warnings as users only found them annoying.

  • Burst: Removed the Use Platform SDK Linker option from Burst AOT Settings for desktop platforms.

  • Burst: Updated the minimum Xcode required for Burst to compile for the Apple iOS/tvOS plaforms to 12.0.

  • Burst: Upgraded Burst to use LLVM Version 12.0.0 by default, bringing the latest optimization improvements from the LLVM project.

  • Burst: Upgraded the minimum supported PS4 SDK to 8.00.

  • Editor: Removing most Device Simulator devices from the editor. All devices can be added by installing the com.unity.device-simulator.devices package.

  • Editor: When performing incremental build (Android, Windows, OSX, WebGL, iOS), player assemblies will be placed now in Library/Bee folder rather than Library folder, and will persist until the next build.

  • Graphics: DX12 doesn't revert to worse texture detail anymore, when the GPU memory is running out.

  • Graphics: Mark OpenGL ES 2.0 as deprecated in Graphics API selection UI.

  • IL2CPP: Code generation option moved from build settings (EditorUserBuildSettings.il2CppCodeGeneration
    ) to player settings (PlayerSettings.SetIl2CppCodeGeneration/PlayerSettings.GetIl2CppCodeGeneration). This option is now per platform and persisted with the project.

  • Input System: When exceptions occur in user code inside of Input System callbacks, the exception message is now printed first and details about the callback second to avoid hiding exception details.

  • Package: Com.unity.live-capture 1.0.1 package to com.unity.live-capture 2.0.0-pre.3.

  • Package: Com.unity.purchasing has been updated to 4.1.0.

  • Package: Com.unity.purchasing has been updated to 4.1.1.

  • Package: Released com.unity.mathematics 1.2.4.

  • Package: Updated com.unity.cinemachine to 2.8.2.

  • Package: Updated com.unity.device-simulator.devices@1.0.0-pre.4.

  • Package: Updated com.unity.formats.alembic to 2.3.0-pre.3.

  • Package: Updated com.unity.recorder@3.0.2.

  • Package: Updated localization package to 1.0.4.

  • Package: Updated Sequences to 1.1.0-pre.1.

  • Package: Updated Subsystem Registration package version to 1.1.1.

  • Package Manager: Replaced the communication layer between Unity and the Unity Package Manager to connect using IPC instead of HTTP in order to solve a number of connectivity issues.

  • Prefabs: Removed disconnected state for Prefab instances.

  • Profiler: Updated Profile Analyzer package version to 1.1.1, which includes two bug fixes. Release notes available at https://docs.unity3d.com/Packages/com.unity.performance.profile-analyzer@latest/index.html?subfolder=/changelog/CHANGELOG.html.

  • Services: Added Services top menu for services discovery.

  • UI Toolkit: Asset types referenced from USS files are now enforced on a per-property basis and generates warnings instead of errors.

  • Version Control: Updated status bar notification icons
    Updated texts for workspace modes selection and checkin comment box.

  • XR: Marked com.unity.xr.arextensions package as deprecated.

  • XR: Marked com.unity.xr.facesubsystem package as deprecated.

  • XR: Renamed XR Tools Utilities package to XR Core Utilities package.

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

Fixes

  • 2D: Fixed a case where quads generated in the Skinning Editor would be created with the wrong size and position. (1361053)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: Fixed an issue where an error would show up when destroying a Sprite Skin component while deep profling. (1364910)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: Fixed an issue where copying mesh and bone data from a .psb containing a single sprite would throw an exception. (1351543)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: Fixed an issue where IK Solvers would not be updated when previewing an animation clip. (1354389)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: Fixed artifacts on images when flatten for PSDImporter.

  • 2D: Fixed case where colliders do not extend to the end of the sprite texture when Sprite Borders are enabled. (1348701)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: Fixed case where Edge and Polygon colliders have missing edges on certain open-ended shapes. (1362440)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: Fixed case where enabling Fill Tessellation and setting profile's fill offset to positive causes errors. (1363215)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: Fixed case where Sprite Shapes appear only when their pivot is revealed in the Scene view. (1356204)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: Fixed exception "PsdInvalidException: Unrecognized layer section type" when importing certain files.

  • 2D: Fixed render texture size error in the Skinning Editor. (1357552)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: Removed memory requirement check since we cannot properly determine if there will be enough memory to import the file in PSDImporter. (1338690)
    This has already been backported to older releases and will not be mentioned in final notes.

  • 2D: [com.unity.2d.animation]Fixed an issue where removing an edge in the Skinning editor would result in the mesh falling back to a quad. (1365831)

  • 2D: [com.unity.2d.animation]Fixed Sprite selection actions to now work with Undo.

  • 2D: [com.unity.2d.animation]Quads are now generated at correct positions after removing all vertices from Sprite meshes. (1366633)
    First seen in 2022.1.0a10.

  • 2D: [com.unity.2d.spriteshape]Fixed crash encountered when deleting vertices of sprite mesh in SkinningEditor. (1361541)
    First seen in 2022.1.0a7.

  • 2D: [RuleTile] Fixed error in RuleTileEditor when removing all Rules and adding a new Rule.

  • Android: Fixed asking for permission for location, webcam and external storage. (1363472)

  • Android: Fixed exporting Android Studio project to non-existing folder using Editor API. (1347960)

  • Android: Fixed leaked Java local reference when creating new Java object. (1366122)

  • Android: Fixed OBB deployment to Sasung Galaxy S21. (1365713)

  • Animation: Animator.GetBoneTransform() is now working with disabled gameobject/animator. Exception are throw if avatar is null or not a humanoid. (1351090)

  • Animation: Fixed an issue when creating a new animation curve with discrete int with the first key not being on frame 0. (1373924)
    First seen in 2022.1.0a12.

  • Animation: Fixed for potential crash when modifying an animation override controller which is in use during a state machine enter / exit behavior callback. (1346587)

  • Animation: Improved performance with generating animation bindings. (1353998)

  • Asset Bundles: Fixed an issue where moving an asset would not trigger an Asset Bundle rebuild. (1346529)

  • Asset Bundles: Fixed rare issue where AssetBundle.RecompressAssetBundleAsync would do a full recompress even if both the source and target AssetBundles are LZ4 compressed. (1293912)

  • Asset Import: BlendShapes value defaults to 0 when importing FBX model. (1359606)

  • Asset Import: Fixed photoshop .psb files being imported with wrong all-gray colors & transparency. (1374804)
    First seen in 2022.1.0a13.

  • Asset Import: Fixed RenderToCubeMap artifacts when used with a Physical Camera. (1370847)

  • Asset Pipeline: Fixed a performance regression where projects with large numbers of precompiled assemblies might experience slower import times. (1372980)
    First seen in 2022.1.0a11.

  • Asset Pipeline: Fixed an issue where a project containing a symbolic link could crash on startup on Windows. (1370389)

  • Asset Pipeline: Fixed import pipeline logged timings to be actual values instead of zeroes. (1376540)
    First seen in 2022.1.0a13.

  • Audio: Fixed a crash that would occur when removing a custom filter from a game object and then stopping the associated audio source. (1363271)

  • Audio: Fixed potential crash in dedicated server when using audio components. (1365720)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Build Pipeline: Prevent selection of ~/Desktop folder as build target. (1357782)

  • Build System: Fixed error "Cannot find mono image in MonoManager for assembly x" during assembly reload when calling ContentBuildInterface:GetPlayerObjectIdentifiersInAsset.

  • Burst: Arrows were rendered even though they were not within the current view.

  • Burst: Burst will now handle projects special characters in their project-name.

  • Burst: Crash in burst module initialization if multiple modules are compiled and then linked in a different order.

  • Burst: Detects if the simulator is the target of a player build for iOS/tvOS and disables burst, as at present this configuration is not supported by burst.

  • Burst: Fixed a bug where a player build that had multiple assemblies that had structs declared with the same name and same contents but different [BurstCompile] methods in them, would wrongly only pick a single struct to Burst-compile.

  • Burst: Fixed a bug whereby sometimes some LLVM intrinsics could be incorrectly marked as unused causing invalid codegen with calls to math.acos.

  • Burst: Fixed a bug with sqrt_ps for 128-bit types where it would crash the compiler.

  • Burst: Fixed a crash that could occur when loading legacy Burst AOT settings and then entering play mode.

  • Burst: Fixed an issue where dsym folders would be not be copied across to the DoNotShip folder when building a multi architecture build for mac os.

  • Burst: Fixed bug that could lead to "Failed to resolve method with name hash X and signature hash Y" compiler error.

  • Burst: Fixed bug that could lead to incorrect compiler errors for calls to GetHashCode from a generic type.

  • Burst: Fixed compiler error that occurred when calling BurstCompiler.CompileFunctionPointer with a delegate type that was decorated with a custom attribute.

  • Burst: Fixed issue that could cause bcl.exe to fail with an exit code of 1 but not output any compilation errors.

  • Burst: Fixed our platform documentation to accurately reflect the current supported platforms with Burst.

  • Burst: Fixed that implicitly casting a scalar half to a vector type would cause the compiler to crash.

  • Burst: Fixed the "could not find path tempburstlibs" error message popping up when building for Android and Burst is disabled.

  • Burst: Fixed the [bug @tertle found](https://forum.unity.com/threads/burst-error-bc0102-unexpected-internal-compiler-error.1173977/) when loading a vector from a struct pointer that is marked as in.

  • Burst: Incorrect conversions between signed and unsigned vector types.

  • Burst: Inspector menu buttons were seen as available, even though they were not supported, when viewing i.e. .NET IL code.

  • Burst: Linker errors on macOS due to long command lines, swapped to using filelists for inputs.

  • Burst: Linking would fail on non-Windows platforms if the project folder contained a single-quote.

  • Burst: Made it save the actual line numbers for code blocks in _blockLine even when the block is below the view.

  • Burst: Missing output messages from some tools when a failure occurred.

  • Burst: Removed the starting newline character when copying, and when rendering plain assembly kind.

  • Burst: Stack overflow caused by placement of alloca under certain function transforms.

  • Burst: Static constructor cyclic checks also included method calls when this is not necessary and fails on burst runtime logging code.

  • Burst: Static constructor sorting didn't account for dependencies within calls' IL.

  • Burst: The cache for pdbs was becoming stale. This caused issues with wrong source information being shown in the inspector, and potentially wrong debug information being generated for bursted code in editor sessions.

  • Burst: ArgumentOutOfRangeException due to _renderBlockStart and _renderBlockEnd not being probably initialized when all blocks were above the scroll position.

  • Burst: [SkipLocalsInit] now correctly doesn't zero-initialize variables in a function (previously it only avoided zero-initialization of stackalloc created variables).

  • Editor: Added BOM SJSON parsing support. (1373091)

  • Editor: Ensure RootEditor does not prevent from dropping in scene view. (1373165)

  • Editor: Fixed a bug which prevented the access token to be refreshed after it expired. This issue required the user to close and reopen the editor every time the access token expired to get it refreshed.

  • Editor: Fixed a console break when selecting a console message. (1369098)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Editor: Fixed a crash on Apple silicon devices when using crunch compression. (1344991)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Editor: Fixed Drag and drop into Scene View blinking on mac os. (1371396)
    First seen in 2022.1.0a10.

  • Editor: Fixed dropping prefab in scene view on Linux. (1367613)
    First seen in 2022.1.0a10.

  • Editor: Fixed dropping prefab on scene view with Linux (duplicate). (1372585)
    First seen in 2022.1.0a10.

  • Editor: Fixed Editor crash when using -quit command line argument on MacOS. (1362461)

  • Editor: Fixed editor crashes when exiting and keeping a tutorial project.

  • Editor: Fixed Editor Mode Parser throws errors for wrong tokens. (1372885)
    First seen in 2022.1.0a12.

  • Editor: Fixed editor window leak on window close. (1372919)

  • Editor: Fixed GameObjectChangeTracker initialization issue causing it to trigger assertion failure errors. (1376716)

  • Editor: Fixed handling of special hotkey characters in the Open Recent Scene sub-menu. (1364651)

  • Editor: Fixed hang when scrolling with a trackpad or Apple Magic Mouse 2. (1378390)
    First seen in 2022.1.0a15.

  • Editor: Fixed Mask Field not being wide enough for long layer names. (1366623)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Editor: Fixed OpenGL context error messages when entering or exiting play mode. (1338849)

  • Editor: Fixed PackageManager memory leak when continuously opening the window. (1362559)

  • Editor: Fixed PropertyField methods not including ReorderableList children by default. (1336112)

  • Editor: Fixed the issue when an older user layout was loaded in the Editor and resulted in InvalidCastException. (1347313)

  • Editor: Fixed touchcount not resetting when exit playmode with a finger down. (1258785)

  • Editor: Fixed Unity Package Manager diagnostic tool failing to run when started via the launch script.

  • Editor: Inspector does not show prefab overrides anymore if the prefab asset is missing. (1369171)

  • Editor: Prefab instances no longer lose their modifications after a scene template instantiation.

  • Editor: Prevented missing segments in the Bundle Identifier for Apple platforms by replacing invalid characters with hyphens (similar to Xcode's behaviour). (1352216)

  • Editor: Recent Mac Metal editor change delayed frame updates by 1, affecting selection feedback - this is now fixed. (1374546)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Editor: Recent Mac Metal editor change delayed frame updates by 1, affecting undo/redo update time - this is now fixed. (1374538)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Editor: Reduced time processing mesh static batches when loading scenes additively. (1143037)

  • Editor: When performing an incremental build, Unity will clean intermediate build folders, if it detects that previous build was done with a different bee backend. (1371602)
    This has already been backported to older releases and will not be mentioned in final notes.

  • GI: Baking with progressive updates ON or OFF with the GPULM always gives the same result. (1352923)

  • GI: Fixed bug where lighting information on renderers would occasionally be scrambled or lost when saving a scene. (1359018)

  • GI: Fixed unexpected fallbacks from the GPULM to the CPULM when changing filtering settings during a bake. (1364204)

  • GI: GI: Fixed issues with overlapping lights using shadowmask and wide spot angles. (1367864)

  • Graphics: Added missing GraphicsBuffer versions of DrawProceduralIndirect script APIs. (1372936)

  • Graphics: Fixed copying between ARGB regular texture and RT on Vulkan. (1371407)

  • Graphics: Fixed D3D12 validation error on render target and pipeline state sample count mismatch. (1371812)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Graphics: Fixed failing CopyTexture in Editor when build target is a mobile platform and the source texture is a normal map or lightmap. (1365807)

  • Graphics: Fixed Graphics.CopyTexture behavior when the specified region is not aligned with compression block size. (1366297)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Graphics: Fixed high CPU/GPU utilization when occlusion window is open. (1341977)

  • Graphics: Fixed high memory usage in Vulkan backend when using many different textures per texture property of a shader. (1372610)

  • Graphics: Fixed high memory usage when running Unity in batch mode and importing a high number of assets. (1337474)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Graphics: Fixed leaving uncleared screen after changing aspect ratio. (1367899)

  • Graphics: Fixed possible out-of-memory when minimizing a Player that uses Vulkan on Windows. (1372535)

  • Graphics: Fixed R8_UInt incorrectly reporting support for the StencilSampling FormatUsage on Metal.

  • Graphics: Fixed rendering of the Humanoid Avatar on the animation preview when recovering the state of the inspector, only when SRP was in use. (1350461)
    First seen in 2022.1.0a2.

  • Graphics: Fixed sporadic crash in Vulkan backend when GraphicsJobs are enabled. (1358610)
    First seen in 2022.1.0a1.

  • Graphics: Fixed use of invalid swapchain handle with AMD GPUs on Windows. (1372538)

  • Graphics: Graphics.RenderMeshPrimitives now works with reflection probes. (1335208)

  • Graphics: Unexpected "Missing vertex input" with code generated mesh on metal. (1356563)
    First seen in 2022.1.0.

  • Graphics: Unity Editor does not crash when PreviewRenderUtility.BeginPreview() is not properly followed by EndPreview(). (1338040)

  • IL2CPP: Corrected an error during code conversion for an abstract method that provides an interface method implementation in an abstract base class. (1361812)
    This has already been backported to older releases and will not be mentioned in final notes.

  • IL2CPP: Fixed exported Android project failure. (1373278)

  • IMGUI: Added rounding to get pixels to align better when the scale is not 1 to 1. (1309132)

  • Input: Fixed InputSystem.QueueStateEvent throwing exceptions when called from non-main thread. (1348778)

  • Input: Fixed Windows editor and Windows player being frozen during startup when new input system is enabled and a USB device with 65535 / 0xffff usages is connected to the computer. (1373945)

  • Input: Recent Mac Metal editor change delayed frame updates by 1, affecting keyboard input lag - this is now fixed. (1375664)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Input System: Any unhandled exception in InputManager.OnUpdate failing latter updates with InvalidOperationException: Already have an event buffer set! Was OnUpdate() called recursively?. Instead the system will try to handle the exception and recover into a working state.

  • Input System: Fixed "Default constructor not found for type UnityEngine.InputSystem.iOS.LowLevel.iOSStepCounter" any other potential exceptions due to classes, methods, fields and properties being stripped when managed stripping setting set to medium or high. (1368761)

  • Input System: Fixed a performance issue on entering/exiting play-mode where HID device capabilities JSON could be parsed multiple times for a single device. (1362733)

  • Input System: Fixed a problem where explicitly switching to the already active control scheme and device set for PlayerInput would cancel event callbacks for no reason when the control scheme switch would have no practical effect. This fix detects and skips device unpairing and re-pairing if the switch is detected to not be a change to scheme or devices. (1342297)

  • Input System: Fixed a problem where only using runtimes that are not XR supported causes a compile error. This fix adds back in ENABLE_VR checks to prevent this issue.

  • Input System: Fixed an issue that broke the VirtualMouseInput component in the editor. (1367553)

  • Input System: Fixed an issue where InvalidOperationException is thrown if an input for an action with multiple interactions is held while disconnecting the device. (1354098)

  • Input System: Fixed an issue where resetting an action via InputAction.Reset() while being in disabled state would prevent the action from being enabled again. (1370732)

  • Input System: Fixed current being null for sensors (Accelerometer.current, others). (1371204)

  • Input System: Fixed input action for Android gamepad's right stick will be correctly invoked when only the Y-axis is changing. (1308637)

  • Input System: Fixed action.ReadValue and others returning invalid data when used from FixedUpdate or early update when running in play mode in the editor. (1368559)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Input System: Generic gamepad short display button names where incorrectly mapped on Switch (A instead of B, etc).

  • Input System: Improved the user experience when creating single vs multi-touch touchscreen bindings in the Input Action Asset editor by making both options visible in the input action dropdown menu. Now it's not neccessary to be aware of the touch\*/press path binding syntax. (1357664)

  • iOS: Enabled ProMotion on ios15 and new devices (iphone13 family). (1374612)

  • iOS: Fixed crash when setting orientation in Awake under some circumstances. (1371559)

  • iOS: Fixed extra frame not being rendered on iOS when "Render Extra Frame on Pause" is enabled in iOS player settings. (1362184)

  • iOS: Fixed value of Screen.safeArea retrieved during initialization of packages. (1288515)

  • License: Fixed a bug on Windows where the operating system was not detected properly
    License: Fixed a bug where duplicate configurations would not allow Licensing Client to start properly
    License: Fixed a bug where remote configuration was not getting downloaded
    License: Ensuring ULF license directory exists on MacOS and Linux
    License: Improve performance for updating local configuration on Linux.

  • Linux: Editor: Fix GLX context creation when using nvidia prime render offloading.

  • Linux: Key presses are now consistent with the "Use Physical Key" option in Input Manager settings. (1330732)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Mono: Fixed crash that would occur when a generic field was in a struct during burst compilation. (1345245)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Mono: Fixed issue where System dlls were being treated as if they were plugin dlls which would cause them to get incorrectly removed from the build. (1373389)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Mono: Fixed Superluminal symbol integration. (1373568)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Package: Fixed a usability issue where in some cases searcher would suggest one collapsed category of results that user would have to manually expand anyway, now searcher auto-expands the single suggested category
    Fixed searcher bug that caused incorrect search results with non whitespaced queries for nodes with spaces in their name and for subgraphs [1359158]
    Fixed bug that causes search results to not be visible sometimes in the searcher window [1366061]
    Fixed bug that causes exceptions to be thrown when using the up/down arrow keys with search list focused [1358016]
    Fixed bug that causes some searcher items to be irreversibly collapsed due to expand icon disappearing on collapsing those items [1366074]. (1358016, 1359158, 1366061, 1366074)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Package: Fixed compilation error CS0103 when imported together with Tutorial Framework 2.0.0 package.

  • Package Manager: Added Sample Descriptions to the Package Details UI.

  • Package Manager: Added tooltip on unlock icon. (1375779)

  • Package Manager: Confusing package type in the inspector must be removed. (1298092)

  • Package Manager: Embedded packages are not shown as installed in the Package Manager. (1352772)

  • Package Manager: Features labeled as released should not contain pre-release packages. (1344818)

  • Package Manager: Fixed Test_Serializable_Objects_SurviveDomainReload test. (1306124)

  • Package Manager: Fixed the issue where assets don't refresh properly when user signs out and sign back in. (1376327)

  • Package Manager: Fixed the issue where delayCall delegate's Invocation List size doubles when the Package Manager is docked and the delayCall is Invoked. (1336406)

  • Package Manager: Fixed the issue where OAuth errors are not logged in the console. (1376308)

  • Package Manager: Implement asset's Re-Download button to fix issue when using multiple Unity versions and have one asset version cached. (1371056)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Package Manager: Removed extra fetch calls after Package Manager resolve. Should fix some Package Manager unit test instabilities.

  • Package Manager: Removed special character in users initials to be in sync with Hub and Asset store. (1377478)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Particles: Added "enabled" script API to the ParticleSystemForceField, to turn a force field on/off. (1366533)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Particles: Fixed errors when viewing a Force Field Preset inspector whilst entering Playmode. (1318951)

  • Particles: Fixed right-click context menu for Renderer module Inspector. (1372195)

  • Physics: Fixed a race condition which could ultimately cause random crashes inside cloth, due to data cleanup overlapping with cloth simulation. (1275123)

  • Physics: Fixed ClosesetPointCommand throwing an assert when executing jobs. (1377908)

  • Physics: Improved stability of Rigidbody2D XY constraints when X or Y constraint are used independent of each other. (1373134)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Physics: Stop PhysicsShapeGroup2D producing GC waste when adding new physics shapes even when physics shape capacity wasn't reached. (1377116)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Prefabs: GameObjects added to a prefab instance, which are added after the prefab's children, will remain after the prefab's children even after new children are added to the prefab. (1095995, 1127653, 1180518)

  • Prefabs: M_RootOrder is no longer used to determine the sibling order of non-root objects. (1271887)

  • Prefabs: Prefab restructuring rule has been relaxed. It is now possible to add a game object to a prefab instance and position the added objects between the prefabs objects.
    Objects added to the end of the child list, will now remain at the end, even if children are added to tge prefab. (1152758)

  • Prefabs: Reverting prefab overrides results in "Dangling components have unfulfilled dependencies" error. (1156260)

  • Profiler: Fixed Asset Loading profiler module not sorting correctly. (1369190)

  • Profiler: Fixed error on Metal which caused "Assertion failed on expression: 'gpuFrequency != 0'" assert in Editor. (1368520)

  • Profiler: Fixed Frame Timing Manager GPU time stops working on Android after switching app to background. (1375843)

  • Profiler: Fixed invalid Main Thread time in Frame Timing Manager on WebGL. (1377253)

  • Profiler: Periodic update of counter values now display correctly in Profiler charts. (1373263)

  • Project Browser: Fixed asset importing when drag and dropping assets from the Explorer to the Project Window is blocked. (1374816)
    First seen in 2022.1.0a13.

  • Project Browser: Fixed empty folder icon in Project Browser is smaller on a 4k display. (1375981)

  • Project Browser: Shader subassets thumbnails are not displayed. (1372478)

  • Scene/Game View: Fixed 2D toggle not correctly positioned when starting a new 2D project (URP). (1368728)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Scene/Game View: Fixed a case where gizmo enabled state could potentially get out of sync with Inspector foldout state. (1331034)

  • Scene/Game View: Fixed deprecates current Handles.FreeMoveHandle signatures and introduces new ones that do not take a Quaternion rotation parameter. (1370210)

  • Scene/Game View: Fixed gizmos not rendering in scenes that are loaded during play mode from user code. (1327723)

  • Scene/Game View: Fixed GridSize value when using a linked field. (1369312)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Scene/Game View: Fixed Handles not rendering in the Scene View. (1374532)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Scene/Game View: Fixed manipulation tools override buttons duplicating and global tool button. (1376979)
    First seen in 2022.1.0a14.

  • Scene/Game View: Fixed MonoBehaviour icons not rendering in Scene View when selected. (1293266)

  • Scene/Game View: Fixed Tools Overlay not respecting EditorTool.IsAvailable() value. (1373145)

  • Scene/Game View: Fixed Tools Overlay showing invalid tools for the active context. (1373147)

  • Search: Fixed fail to drag subasset from search window to ObjectField. (1374002)

  • Search: Fixed New table view columns should be based on the selected search group. (1371705)

  • Search: Fixed NullReferenceException after switching Description column format to Performance metric. (1364701)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Search: Fixed possible null reference exception in Search. (1372840)

  • Search: Fixed search picker fails to filter sprite assets. (1371778)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Serialization: Avoid out-of-memory crash when corrupt meta file contains a certain sequence of characters. (1332514)

  • Serialization: Fixed NullReferenceException is thrown when a MonoBehaviour script that was attached to a GameObject is deleted. (1355905)

  • Serialization: Fixed wrong values get copied when copying long values in the Inspector. (1372674)

  • Services: Fixed usymtool sometimes failing to process symbol files correctly. (1375841)

  • Shaders: Fixed an issue with Editor using some default data until a shader is imported or compiled. (1369645)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Shaders: Fixed multi_compile_particles to work together with built-in lighting variants. Requires shader re-import. (1346626)

  • Terrain: [Static Analysis] Defect 672727 in Modules/Terrain/Public/PaintContext.cs. (1367368)

  • Timeline: Fixed an issue where Timeline preview would be interrupted when a scene was saved. (1360485)

  • uGUI: Fixed the ScrollRect content position upon reloading a scene when either one or both of the horizontal and vertical properties are not applied. (1088655)

  • UI Toolkit: Added support for using a numeric value for enum fields in uxml.
    Added support for using a flags enum in uxml (multiple flags may now be set by joining them with a comma).
    Added support for flags enum in the UI Builder for UxmlEnumAttributeDescription.
    Fixed an issue in the UI Builder where using an invalid enum value in uxml would break the attribute section of the inspector.
    Fixed an issue where the uxml importer and the UI Builder would parse an enum differently, leading to valid cases being reported as errors and invalid cases reported as working.
    Fixed an issue where the EnumField would not update the display text when setting an invalid value (the actual value would be changed, but the display text would not). (1375227)

  • UI Toolkit: Fixed 3 cases of inconsistencies on binding data to UI Toolkit fields. (1353710)

  • UI Toolkit: Fixed an issue where DropdownField's menu would have an offset in runtime under certain hierarchies. (1345802)

  • UI Toolkit: Fixed an issue where MinMaxSlider's value would be wrongly clamped when loaded from uxml.
    Fixed an issue where constructing a MinMaxSlider with valid values would throw an exception. (1368242)

  • UI Toolkit: Fixed an issue where the theme style sheet icon would not be shown when creating the asset. (1365364)

  • UI Toolkit: Fixed an issue where the Open With IDE context menu was trying to open the uxml in the builder instead of opening it in the IDE. (1368373)

  • UI Toolkit: Fixed button click happening when mouse is released from behind an element that's drawn in front of the button but within its boundaries. (1360188)

  • UI Toolkit: Fixed duplicate mouse enter and leave events on composite root elements during the AtTarget propagation phase. (1367771)

  • UI Toolkit: Fixed event callbacks sometimes triggered on removed elements after their panel is already set to null. (1363527)

  • UI Toolkit: Fixed failing DoubleField round-trip conversion when value is set to double.MinValue or double.MaxValue, resulting in the DoubleField text being "0". (1367534)

  • UI Toolkit: Fixed PropertyField problem when SerializedProperty has invalid enum index set. (1360996)

  • UI Toolkit: Fixed ScrollView's scroll type persistance in the builder and elastic mode will not act like unrestricted mode in editor. (1362816)

  • UI Toolkit: Fixed Test [Instability][trunk] StyleSheetPaneTests.SelectorRenameWithEmptyStringRevertsToOriginalText (UI Builder). (1355533)

  • UI Toolkit: Fixed transitions sometimes not animating after the first transition. (1367510)
    First seen in 2022.1.0a8.

  • UI Toolkit: Fixed UI Toolkit Debugger picking elements for Runtime UI on Mac. (1365998)

  • UI Toolkit: Fixed world transform updated value sometimes not taken into account by an element's bounding box calculations immediately after setting an element's transform.position, leading to wrong element under mouse during event propagation. (1371120)
    First seen in 2022.1.0a12.

  • UI Toolkit: Removed duplicated internal functionality to resolve style variables. (1374879)

  • UI Toolkit: Users using a culture which does not have '.' as its decimal separator can now input decimal values in the UI Builder when the field allows doing so. (1354172)

  • Universal Windows Platform: Fixed build time scaling non-linearly based on the number of build output files. (1374725)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Universal Windows Platform: Fixed generated Visual Studio project when building to Universal Windows Platform with Visual Studio 2022. (1378086)

  • Universal Windows Platform: Fixed incorrect WSATestCertificate error message after moving project's folder. (1361792)

  • Universal Windows Platform: Fixed issue where UWP UnityWebRequests were not properly working with https. (1375004)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Universal Windows Platform: Fixed Screen.dpi returning 0. (1376703)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Universal Windows Platform: Fixed touch events causing incorrect UI behavior when using Windows touch Simulator. (1371807)

  • Universal Windows Platform: Fixed TouchScreenKeyboard.active returning true when the keyboard isn't visible. (1141591)

  • Version Control: Fixed inverted text for the force checkout option
    Fixed typing capital O in checkin comment would open the selected item
    Fixed loading indicator not centered on Plastic SCM installation window
    Fixed installing Plastic SCM would sign out user from the plugin
    Removed extra refresh button on Gluon's Incoming Changes tab
    Fixed loading indicator not centered on Plastic SCM installation window
    Fixed missing Plastic SCM window option when user is not signed in on Unity Hub
    Removed meta file warning message for the deleted Beta folder
    Fixed Plastic SCM menu missing from Project view context menu.

  • VFX Graph: Particles Simulation doesn't behave has expected on paused effect. (1355385)

  • Video: Fixed a crash caused by importing, reimporting or transcoding a video file in the Editor (Mac Only). (1330537)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Video: Fixed getting buffer overflow warning when increasing playback speed on the VideoPlayer. (1325295)

  • Visual Scripting: AOT prebuild works properly when building a project in batchmode.

  • Visual Scripting: No more il2cpp crash caused by infinite recursion when generating AotStubs.

  • Visual Scripting: No more jitter on fuzzy finder.

  • Visual Scripting: No more missing icons when the "Transition End Arrow" is on.

  • Visual Scripting: No more missing textures after switching platform.

  • Visual Scripting: Restoring the public icon set api.

  • Visual Scripting: Variable duplication working properly.

  • Visual Scripting: Welcome Screen opens the proper graph.

  • WebGL: Added workarounds for various Safari Web Audio bugs playing back compressed and looping audio clips. Fixed a regression in Unity audio backend that could cause an incorrect audio volume to be set for < 1 second duration at audio playback start time. (1360344)

  • WebGL: Fixed a crash in webgl publishing when doing multiple builds with the same project could sometime cause code from an older build to be mixed in with the new build, causing a crash on startup. (1371445)
    This has already been backported to older releases and will not be mentioned in final notes.

  • WebGL: Fixed AudioSource.loop property when using AudioSource.PlayScheduled() and AudioSource.PlayDelayed(). (1337312)

  • Windows: Added a way to forward raw input messages to Unity with the UnityEngine.Windows.Input.ForwardRawInput API. (1368835)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Windows: Fixed development builds not working on machines that don't have VC++ runtime installed. (1367532)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Windows: Fixed old input system missing some mouse movement events when new input system is enabled. (1368808)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Windows: Fixed Windows player not start on machines that don't have Visual C++ runtime installed. (1373476)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Windows: Progress dialogs no longer get cut off if launched from a window with a different DPI setting. (1349737)

  • Windows: SystemInfo.operatingSystem now recognizes Windows 11. (1372750)

  • XR: Added APIS to XR Management for the checking and creating of settings. (1369638)
    This has already been backported to older releases and will not be mentioned in final notes.

  • XR: Fixed bug with XR management settings being incorrectly loaded during batchmode. (1357482)
    This has already been backported to older releases and will not be mentioned in final notes.

  • XR: Fixed for XRBeginFrame event add to frame debugger even if VR isn't enabled. (1374542)

  • XR: Fixed XR plugin interface depth issue. (1376203)

  • XR: Removed disable of showHologram support for HoloLens devices. (1375195)
    This has already been backported to older releases and will not be mentioned in final notes.

  • XR: Updated the verified AR Foundation related packages to 5.0.0-pre.5. Please see the AR Foundation package changelog for details.

  • XR: Updated XR Interaction Toolkit to 1.0.0-pre.6.

  • XR: Updated XR Interaction Toolkit to 2.0.0-pre.1.

  • XR: [OpenXR] Fix all cameras stop rendering when VR headset is off.

Preview of Final 2022.1.0a15 Release Notes

Features

  • 2D: Added Sortpoint for SpriteShapeRenderer that determines the position for sorting.

  • 2D: Added support for Color channel in SpriteShape so usage of Vertex Colors is possible in SpriteShape.

  • 2D: [com.unity.2d.animation]Added an asset upgrading tool, which can upgrade older Sprite Library Assets and Animation Clips to the latest version.

  • 2D: [com.unity.2d.psdimporter]Allow user to selectively indicate which layer to import from a Photoshop file using PSDImporter.

  • 2D: [com.unity.2d.psdimporter]Expose cetrain PSDImporter import settings as APIs.

  • 2D: [com.unity.2d.spriteshape]Add actionable console log when encounter vertex count limit exception on Sprite Shape.

  • 2D: [com.unity.2d.spriteshape]Added support for Global Grid Snapping for editing Sprite Shapes.

  • 2D: [com.unity.2d.spriteshape]Added user preferences for Controlpoint/Tangent/Spline color.

  • 2D: [com.unity.2d.spriteshape]Improved estimation of vertices required for geometry to minimize memory alloction.

  • Android: Adaptive Performance added Adaptive Decals.

  • Android: Adaptive Performance added Adaptive Layer Culling.

  • Android: Adaptive Performance added Adaptive Physics.

  • Android: Adaptive Performance added Custom Scaler.

  • Android: Adaptive Performance added Visual Scripting support.

  • Android: Users can include custom asset packs into the build, by adding assets to the directory ending with '.androidpack'.

  • Android: When building Android App Bundle with Split App Binary enabled, Unity will create asset packs.

  • Animation: Added DiscreteEvaluation attribute that allows allows a property to be evaluated as a discrete value during animation playback where the values in between key frames will not be interpolated nor will the value be blended between clips.

  • Asset Import: Preset Editors now supports CustomEditor made with UIToolkit for the Preset Object.

  • Asset Pipeline: Added options for Accelerator corruption detection.

  • Asset Pipeline: Model imported from the ModelImporter using the DefaultMaterial will re-import correctly to use SRP default material when changing the active Render Pipeline.

  • Editor: Added granular context capabilities to ShortcutManager.

  • Editor: Added new menu entry under Help to display Third Party Notices for the Unity Package Manager.

  • Editor: Device Simulator now allows switching between different screens for devices with multiple screens.

  • Graphics: Added a new Texture Mode called Static to the LineRenderer, TrailRenderer and ParticleSystem Trails.

  • Graphics: Added a new Texture Scale option to the LineRenderer, TrailRenderer, and ParticleSystem Trails.

  • Graphics: Added MSAA depth resolve Vulkan support.

  • Graphics: Added RayTracingAccelerationStructure.ClearInstances C# API.

  • Input: Input Manager's Physical Keys is enabled by default for new projects. This enables layout independent keycodes on all platforms.

  • Input System: Added support for PS5 DualSense controllers on Mac and Windows.

  • License: Added error analytics for licensing module.

  • License: Sunset Legacy Licensing module.

  • Mobile: Adaptive view distance scaler - A new scaler was added to change the Camera.main view distance automatically.

  • Mobile: Boost mode - Boost CPU and GPU for short periods of time.

  • Mobile: Cluster info - Request cluster info to have details which and how many cores are available on the device.

  • Mobile: Feature API - Check which Adaptive Performance feature is available on the current platform.

  • Mobile: Profiler Integration - Profile Adaptive Performance easily from the Unity Profiler.

  • Mobile: Scaler profiles - Easily define and change Adaptive Performance Scalers with predefined profiles.

  • Mobile: Startup Boost mode - Enables boost mode during engine startup.

  • Mono: Enabled Brotli compression for Windows with the Mono runtime.

  • Package: Ability for clients of searcher window to filter and prioritize search results as they need.

  • Package: Added com.unity.scripting.python 4.0.0-pre.1 as a pre-release package.

  • Package: Public release of com.unity.profiling.systemmetrics.mali@1.0.0-pre.2
    Documentation available at https://docs.unity3d.com/Packages/com.unity.profiling.systemmetrics.mali@latest/index.html.

  • Package: Settings Manager 2.0.0.

  • Package: Splines 1.0.0.

  • Package Manager: Added documentation links to feature's included packages when it's customized or manually modified.

  • Package Manager: Added warning for Unity package versions that have invalid signatures, or are unsigned and is sourced from local tarball or scoped registry.

  • Package Manager: Allow user to easily configure location of both UPM and Asset Store package local cache.

  • Package Manager: Improved ways to check for Update Available in the Package Manager window.

  • Package Manager: Multi-selection and bulk operations have been added to the UI.

  • Package Manager: See an error message when I don't have the proper rights to use an entitled package.

  • Package Manager: User will be able to see the packages' supported platforms once this is implemented in the backend.

  • Package Manager: We want to see the E icon in the package item when the license is Granted or Not granted in a closed network.

  • Package Manager: When dismissing the experimental packages in use button, button won't reappear in the project the button was dismissed.

  • Package Manager: When importing a package from the Asset Store, the import window will now display the project settings separately from the rest of the package content.

  • Physics: Added a new batched ClosestPointCommand to calculate the closest point to a convex off the main thread.

  • Physics: Added Contact and Query visualization to the Physics Debug window.

  • Physics: Added highlights for physics layers when hovering over them in the Physics settings inter-collision matrix.

  • Physics: Added the ability to generate Delaunay meshes for specific 2D Colliders. This option will generally produce simpler meshes with fewer primitive physics shapes for better overall performance. Added "PolygonCollider2D.useDelaunayMesh", "TilemapCollider2D.useDelaunayMesh" & "CompositeCollider2D.useDelaunayMesh".

  • Physics: Added the option to filter by Unity scene along with physics scene in the Physics Debugger.

  • Prefabs: Differentiate applicable from revertible overrides.

  • Profiler: FrameTimingManager platform reach and frame timing information expanded.

  • Scene/Game View: Improving the workflow using ToolContexts : https://jira.unity3d.com/browse/STO-2291.

  • Search: Added query builder to expression search queries using a set of user facing blocks.

  • Services: Cloud Diagnostics will now show C# line numbers in exception stack traces when using IL2CPP.

  • Shaders: Added an option to use strict shader variant matching in the player.

  • Shaders: Added #pragma dynamic_branch and #pragma dynamic_branch_localdirectives to declare dynamic branching keywords in shaders.

  • Shaders: Opt-out from using the Caching preprocessor is no longer available.

  • Shaders: Ray tracing shaders now use the Caching preprocessor.

  • Timeline: Added an API to control Timeline Editor Window playback through script.

  • UI Toolkit: Added UI Toolkit implementation for property drawers.

  • UI Toolkit: BoundsField, BoundsIntField, DoubleField, FloatField, Hash128Field, IntegerField, LongField, RectField, RectIntField, Vector2Field, Vector3Field, Vector4Field, Vector2IntField and Vector3IntField are now usable in Runtime.

  • Undo System: Explorable undo history UI.

  • Version Control: - Plastic: Added support for inviting other members. This option is available from the gear / settings icon.

    • Plastic: Added support for signing in with Cloud Edition. This is available during the onboarding screen if you have never signed in.
    • Plastic: Added support for turning off Plastic in their project. This option removes the Plastic metadata from your directory. This option is available under Assets > Plastic SCM > Turn off Plastic SCM
    • Plastic: Added notification on the Plastic SCM tab title to indicate incoming changes. Users will no longer need to have the Plastic SCM window visible to know there are incoming changes.
    • Plastic: Auto configuration of SSO
    • Plastic: Added date column in incoming changes.
  • Version Control: Added auto sign in when logged into Unity account.

  • Version Control: Added horizontal scroll bar to Changesets list for easier viewing
    Added auto-login for SSO credentials handler
    Added metrics for changeset tab usage
    Added metrics for checkin actions
    Added new Undo icon
    Added missing API documentation
    Added ability to modify assets without checkout
    Added ability to allow empty checkin messages
    Added empty checking message localization
    Added Plastic toolbar button to Unity editor
    Added notification icon for incoming changes to Plastic toolbar button.

  • Version Control: Added visual overview bar to the incoming changes tab
    Added progress dialog for the migration process
    Added Branches tab that shows a list of all branches in the repository
    Added option and dialog to create a child branch from selected branch.
    Added option to switch to another branch
    Added option and dialog to rename a branch
    Added option to delete a branch
    Added a preference to save if the window should open the Branches tab by default
    Added metrics for Plastic SCM installation window usage.

  • Version Control: Workspace migration from Collab to Plastic which can be done with or without Plastic installed
    Added notification status icons
    Added light and dark mode versions of avatar icon.

  • VFX Graph: New criteria to sort the particles of an output context:

    • By Distance (previously, the only option)
    • Youngest in front
    • Oldest in front
    • By Depth
    • Custom.
  • Video: Added support for Mac for advanced video encoding controls for H.264.

  • Visual Scripting: Preview Version 1 of the High Performance Interpreter is public in version 1.8.0-pre.1. This can be downloaded using the package manager after enabling experimental packages.

  • WebGL: Added texture compression format setting to WebGL's player settings.

  • WebGL: Added WebGL template for Progressive Web Apps.

  • WebGL: Mobile keyboard support for WebGL for entering text in UI input fields.

  • WebGL: Removed mobile browser warning from builds.

Improvements

  • 2D: Added Preset Support to SpriteAtlas V2.

  • 2D: Added support for Build Only SpritePacking in SpriteAtlas V2.

  • 2D: Cache internal reflection to speed up Sprite editing data access.

  • 2D: Improved Console log to display all affected Sprites.

  • 2D: Improved performance of RuleTile caching.

  • 2D: Sprite Dynamic Batching Vertex Limit is now configurable through PlayerSettings.

  • 2D: Sprite Frame module's pivot unit mode now persists after entering and exiting playmode.

  • 2D: Sprite outline shape calculation is faster now (Sprite.Create, or importing sprite textures), especially for large textures.

  • 2D: SpriteAtlas Cache max Size should be Project Settings instead of Preferences.

  • 2D: Updated 2D URP template starting folder structure for better clarification of usage.

  • 2D: Updated Skinning Editor tooltips text.

  • 2D: [com.unity.2d.psdimporter]Allow support for .PSD files through user switching for PSDImporter.

  • Android: Added boot-config/command-line switch "platform-android-cpucapacity-threshold" that can be used to specify which CPU cores are treated as big cores. The cpu capacity is a value in the range between 0 and 1024. A capacity value of 870 yields the same behavior as before the fix for case 1349057.

  • Android: Added support for HDR display output.

  • Android: Builds will fail early and with a human readable error message, when Unity project is located in path with Non ASCII characters. Android Tools like clang don't work correctly when operating in paths with non ascii characters and the error is not very clear, thus Unity will provide a better error message. (1340631)

  • Android: Bump Android Logcat package to 1.2.3.

  • Android: Editor log will contain more information about the location from where OnPostGenerateGradleAndroidProject are called.

  • Android: Improved VideoPlayer performance on Android when using Vulkan on devices that support VK_ANDROID_external_memory_android_hardware_buffer.

  • Android: Improved WebCamTexture when using Vulkan on Android devices that support VK_ANDROID_external_memory_android_hardware_buffer.

  • Android: Native Input Backend will send less Move Events to the input system package. It will ignore Move Events which position didn't change from previous event. This should improve performance when touching screen with multiple fingers.

  • Android: OBB loading performance improved and removed excessive asks for external storage read permission.

  • Asset Import: Improved performance of asset import particularly when importing large numbers of small files such as scripts.

  • Asset Pipeline: Clarified the behaviour of Resources.Load() in the Scripting API documentation.

  • Asset Pipeline: Do not assert on race when receiving import worker results for a deleted asset.

  • Asset Pipeline: Improved upload and download path.

  • Asset Pipeline: New diagnostic setting to enable writing of asset database events to Logs/AssetDatabase.log. This log file can assist when troubleshooting asset importing.

  • Asset Pipeline: Reduced import overhead for small files by 65%.

  • Asset Pipeline: Various performance optimisations for projects with large numbers of assets.

  • Audio: DSPGraph: Changed mixer thread scripting runtime attachment assertion to a warning, to better reflect the intent of the message.

  • Audio: Import now supports multiprocess.

  • Build Pipeline: Made copying of assemblies part of the incremental player to save time on subsequent builds.

  • Build Pipeline: Make error messages about microphone or camera usage more visible.

  • Build Pipeline: On platforms using incremental player builds, data builds will now be skipped if data has not changed, even for non-development builds.

  • Build Pipeline: Reference documentation improvements in area of Build Pipeline.

  • Burst: Improved Inspector UI.

  • Core: Job Debugger performance was improved.

  • Documentation: Added proper example for PhysicsScene.Simulate.

  • Documentation: Expanded TextAsset documentation. (1341180)

  • Documentation: Improved Scripting API docs page for RayTracingAccelerationStructure. Added See Also section.

  • Editor: (Dynamic Hints) If the target window of a Dynamic Hint is available but unfocused, it becomes focused before the Dynamic Hint is shown.

  • Editor: Added a new badge system for scene templates that allows for a visual categorization.

  • Editor: Added an option to improve enter playmode speed by skipping unnecessary scene backups.

  • Editor: Added GameObject pings in the Hierarchy window to more errors, when clicking on console messages.

  • Editor: Added support for Editor asynchronous load and upload of textures set up for mipmapped streaming.

  • Editor: EditorStyles.iconButton is now public so custom editor windows can implement help, settings and other icon buttons.

  • Editor: Greatly reduced time taken up by static batching when entering playmode or making a build.

  • Editor: Improved Dynamic Batching feedback in the Frame Debugger for the "Objects are rendered using different rendering functions." message.

  • Editor: Improved Editor responsiveness when a large number of textures are selected in the Project Browser.

  • Editor: Improved mac editor process guard in order to catch all types of exceptions and early handle cases where the ADB process might have already shut down.

  • Editor: Improved package retrieval process when loading editor window.

  • Editor: Improved performance of AssetDatabase.GetAllLabels.

  • Editor: Improved performance of picking large objects in Scene View.

  • Editor: Improved performance of Scene View with many LODGroups selected.

  • Editor: Improved performance of scrolling the scene hierarchy with large numbers of game objects when some objects are hidden or unpickable.

  • Editor: Improved performance when creating a new asset (especially in a large project).

  • Editor: Improved scene saving performance. (1185953)

  • Editor: Improved the scene template instantiation experience.

  • Editor: MacOS editor launch screen now has an integrated progress display (Windows & Linux coming later).

  • Editor: MacOS now has an Editor launch screen too.

  • Editor: Make rotation angles editable individually when multiple GameObjects are selected. (1298482)

  • Editor: Normal Map textures now have a new "Flip Green Channel" import setting (useful for textures that were baked in 3dsmax/Unreal/Source/CryEngine convention). All textures got a Swizzle advanced import setting, for arbitrary color channel remapping/flipping.

  • Editor: Now Console window shows a clear message if no search result found.

  • Editor: Now shaders will have SHADER_API_(DESKTOP|MOBILE) define set according to the target build platform.

  • Editor: Opening a project without a "last opened scene" will open a scene template (if any) instead of the default scene.

  • Editor: Optimized AddComponent menu for projects with large amount of scripts.

  • Editor: Optimized calculating the size of Undo operations, making many changes to GameObjects should now be cheaper to add to the Undo system.

  • Editor: Optimized GameObjectInspector.CalculatePrefabStatus which could result up to a 3X speedup for complex prefabs.

  • Editor: Optimized Inspector.InitOrRebuild - shaves several seconds when working with large selections in large scene.

  • Editor: Optimized prefab editing, will knock about 20% off the cost of changing a large prefab.

  • Editor: Optimized SavePrefab_Internal, cutting time in this code for a large prefab from 20 seconds to 20 milliseconds.

  • Editor: Optimized StripPrefabObjectsWhichAreNotUsed, representing up to a 28% speedup for large scenes.

  • Editor: Project opening can now be cancelled while loading.

  • Editor: Reduced overhead of property editor when changing objects in the editor with an inspector window open.

  • Editor: Reduced time to enter playmode.

  • Editor: Refactored the Background task window for better performance and support multiple nested levels of progress.

  • Editor: Revamped the type dropdown in the scene template project settings.

  • Editor: The IMGUI TreeView control now has support for rendering hover effect on row items as well as rendering row contents greyed out based on the GUI.enabled flag.

  • Editor: UnityEvent callbacks can be reordered.

  • Editor: Updated the Unity logo in anticipation of the brand identity refresh scheduled for October 5th.

  • Editor: When a prefab is larger than 8MB, show a static preview image to save the time of loading animations etc.

  • GI: Bake performance section shows "Infinity mrays/sec" when baking the first lightmap on macOS.

  • GI: Expose number of Enlighten worker threads to the command line. Example: Use enlighten-job-worker-count 16 to force 16 threads for Enlighten.

  • GI: Maximum environment sample is 2048, as no quality improvements could be seen beyond that threshold.

  • GI: Moved indirect resolution to realtime GI area.

  • GI: Multiple Importance Sampling naming was misleading.

  • GI: Performance improvement when mesh renderers do not have their light probe property set to 'none' and there are no light probes in the scene. (1310218)

  • GI: Sample counts for the lightmapper are now rounded to the closest power of two in the UI.

  • GI: The Radeon denoiser will now use fp16 during progressive updates to conserve memory when supported hardware is available (AMD Radeon Vega and later GPUs).

  • GI: UI change consolidating min bounces and max bounces into single row.

  • Graphics: - MaterialEditor - Remove context menu for "Double Sided Global Illumination".

    • MaterialEditor - Make colour picker consistent with core editor.
    • MaterialEditor - Remove context menu for "Enable GPU Instancing". (1340650)
  • Graphics: Added a warning when a texture has no mip maps and exceeds device texture size limits to inform a default texture will be used instead.

  • Graphics: Added an error when DrawTexture() is used with Virtual Texturing.

  • Graphics: Added an usage example of RayTracingAccelerationStructure.CullInstances function in Scripting API docs.

  • Graphics: Bind last frame's vertex buffer of Skinned Mesh Renderers to ray tracing shaders in order to support motion vector calculation.

  • Graphics: Changed the Gear Icon for a Burger Menu for the Asset Settings Providers.

  • Graphics: Changing the version of a TexturePostProcessor script now only reimports the affected texture shapes.

  • Graphics: Clarified the warning message shown when setting msaa texture as a camera target texture.

  • Graphics: Exposed SystemInfo.supportsIndirectArgumentsBuffer to check if the indirect arguments buffer is supported.

  • Graphics: Improved CPU performance of the main thread when using ray tracing effects.

  • Graphics: Improved CPU performance of the main thread when using ray tracing effects. Simple effects (AO, Shadows, Path Tracing) that don't use too many builtin shader properties (e.g. unity_SHAr, unity_Lightmap, etc.) will be 15-30% faster.

  • Graphics: Improved CPU performance on the render thread when setting up resources for ray tracing hit groups.

  • Graphics: Improved DX12 constant binding performance.

  • Graphics: Improved error messages in the Console Window when building a RayTracingAccelerationStructure and using invalid Mesh data.

  • Graphics: LightProbe Group UX improvements

    • Change the size of the edit button.
    • Show Wireframe is never disabled.
    • Remove ringing is never disabled.
  • Graphics: LineRenderer and TrailRenderer gain support for Sprite Masks.

  • Graphics: Optimized GfxDeviceD3D12.SetRayTracingInstanceShaders performance on the render thread (almost 2x faster).

  • Graphics: Reduced main thread hitching caused by Shader loading.

  • Graphics: Refactor VFX graph update to run VisualEffect updates in different threads.

  • Graphics: Set name of Vulkan VkRenderPass objects when using external debugging tool.

  • Graphics: Support linear color space in LineRenderer, TrailRenderer and ParticleSystem trails. (1339154)

  • Graphics: The previously existing S8_UInt format can now be used as a RenderTexture DepthStencil format.

  • Graphics: Translate HLSL printf to debugPrintfEXT that is implemented in Vulkan validation layers and RenderDoc.

  • Graphics: Updated and add missing tooltips for light and reflection probes.

  • Graphics: Upgraded astc encoder to latest bugfix release of version 2.5.

  • Graphics: When using an AMD GPU, D24_UNorm_S8_UInt was reported as supported on some APIs which is incorrect, this has been resolved. Internally, the driver fell back to D32_S8 anyhow so the behavior does not change, but the user will have more clarity now.

  • HDRP: Fixed the FreeCamera and SimpleCameraController mouse rotation unusable at low framerate.

  • HDRP: Minor UX improvements on Quality Settings Panel.

  • IL2CPP: Added full support for System.Reflection.MemberInfo.GetCustomAttributesData.

  • IL2CPP: Added support for calling generic instances that were not found at conversion time.

  • IL2CPP: Fixed issue that could cause finally blocks to run more than once.

  • IL2CPP: Fixed possible deadlock on player shutdown.

  • IL2CPP: Improved Span Indexer performance. Added an intrinsic for Span get_Item/indexer to improve performance when accessing a large number of Span items.

  • IL2CPP: Improved the performance of invoking delegates.

  • IL2CPP: Reduced executable size by reducing generic metadata output.

  • Input System: Touch input is handled from USB secondary capacitive touch screens on Android.

  • License: License type remove from editor title and about window.

  • Linux: Default texture compression for EmbeddedLinux is now configurable from the player settings.

  • macOS: Minimum supported macOS version can now be set.

  • Mono: Removed extra uneeded library from editor build.

  • Networking: Optimized player loop callback on server builds.

  • Networking: Player loop callback was optimized for server builds.

  • Networking: Player loop callback was optimized for server builds.

  • Package: - Support of Editor Play mode (Uses IAP products defined locally; UDP methods are stubbed: Purchase and Consume will always be successful; Editor console outputs)

    • New Purchase() callback status: onPurchasePending
    • Scripting API documentation update
    • Inclusion of an Implementation Guide that uses the In-Editor Tutorial framework (in Unity Editor 2019.4 and above)
    • Information architecture changes to comply with the centralization of Services in the Package Manager
    • Misc bugfixes and optimization.
  • Package: Added com.unity.cinemachine 2.9.0-pre.1 as a pre-release.

  • Package: Updated Addressables to 1.18.13.

  • Package: Updated Addressables to 1.18.15.

  • Package: Updated Addressables to 1.18.9 and SBP to 1.19.0.

  • Package: Updated com.unity.formats.alembic@2.2.0.

  • Package: Upgraded FBX Exporter and FBX SDK to 4.1.1.

  • Package: Upgraded udp to 2.2.2.

  • Package Manager: Added Package Name as a selectable label to Package Details in Package Manager Window.

  • Package Manager: Improved the wording on the warning message when a user is using a different version of a package than the recommended version.

  • Package Manager: Include Sign In hint in startup error dialog when Package Manager resolution fails due to missing authentication information.

  • Package Manager: Log package entitlement check failures in Unity editor console.

  • Package Manager: Package manager toolbar is now always kept active during refresh operations.

  • Package Manager: Small tweaks to Package Manager scripting reference documentation.

  • Package Manager: Terrain Tools package is now included in the Worldbuilding 3D feature set.

  • Particles: Added a ping back to Hierarchy view Game Object, when selecting relevant Particle System profile markers.

  • Particles: Moved Particle System Prewarming to worker threads.

  • Particles: Particle Systems can now choose whether the Gravity Modifier applies 2D or 3D Physics System gravity.

  • Physics: Changed "Collider2D.GetShapeHash()" so that it calculates the hash incrementally rather than when entirely when it is called. This results in the time take being constant rather than scaling as the number of physics shapes increases.

  • Physics: Improved the Physics Visualiser layout and moved the Rigidbody and Articulation Body Info panels to the Physics Visualiser.

  • Physics: Joint Inspector will display only 1 of connected body, depending on which one is set.

  • Physics: Optimise Rigidbody interpolation so that it doesn't require excess syncing of transforms internally, it is about 20% faster base line, but can be much faster if there were transform changes made from scripts.

  • Physics: Updated ArticulationBody.AddForce and other related method Scripting API documentation with information about current PhysX limitations.

  • Physics: Updated RaycastCommand's Scripting API to mention that it won't return more than one hit.

  • Physics: Updated the Collider.ClosestPoint Scripting API to mention that the input position will be returned if the Collider is disabled.

  • Physics: Updated to PhysX 4.1.2, a minor bugfix release. Release notes are available here: https://github.com/NVIDIAGameWorks/PhysX/blob/4.1/physx/release_notes.html.

  • Profiler: Added icons for File Access and Asset Loading Profiler Modules.

  • Profiler: Released com.unity.performance.profile-analyzer@1.1.0 with a series of fixed and improvements. More details at https://docs.unity3d.com/Packages/com.unity.performance.profile-analyzer@1.1/manual/whats-new.html.

  • Scene/Game View: Added shortcut keys to cycle between available tool contexts.

  • Scene/Game View: ESC key is exiting from the current custom tool and go back to the latest persistent tool.

  • Scene/Game View: Greatly reduced overhead of OnSceneGUI callback when multi-editing many objects.

  • Scene/Game View: Improved Gizmo rebuild performance.

  • Scene/Game View: Improved outline rendering performance in the editor.

  • Scene/Game View: Improved performance for Handles.DrawWireCube.

  • Scene/Game View: Improved performance of selecting many objects.

  • Scene/Game View: Made Picking more responsive by enabling Async Shader Compilation of Picking Shaders.

  • Scene/Game View: Reduced Gizmo rendering overhead in large scenes with many Gizmos.

  • Scene/Game View: EditorToolContext settings are now displayed in the Tool Settings Overlay.

  • Scripting: Added EditorApplication.projectWindowItemInstanceOnGUI that is similar to projectWindowItemOnGUI but can also be used to customize sub-assets. (1182858)

  • Scripting: Added GameObject link to Warning message: "SendMessage cannot be called during Awake, CheckConsistency, or OnValidate.".

  • Scripting: Added GameObject link to Warning message: "SendMessage cannot be called during Awake, CheckConsistency, or OnValidate.".

  • Scripting: Allow user code to build against .NET Standard 2.1 and .NET Framework 4.8.

  • Scripting: Display dialog that informs user that it is now safe to attach a managed debugger now displays the port that the debugger is waiting for a connection on.

  • Scripting: Improved AssemblyUpdater to not try to connect to VCS unless there assemblies under VCS that needs updating.

  • Scripting: Include Roslyn Analyzer diagnostics for "EnableDomainReloadTimings" diagnostic switch.

  • Scripting: Introduced a cache to speed up look up of ApiUpdater configurations.

  • Scripting: Make JsonUtility.FromJson[Overwrite] faster on inputs with long string-valued fields.

  • Scripting: Optimized searching for scripts when the assembly name is not supplied which can significantly improve performance entering PlayMode amongst other areas.

  • Scripting: Rename ".NET Standard" to ".NET Standard 2.1" in the Api Compatibility Level options to be more precise.

  • Scripting: Switched CSharpCompiler utility to use roslyn instead of legacy mcs compilation.

  • Scripting: The Managed Stripping Level for new projects when targeting the IL2CPP backend will be Minimal.

  • Scripting: Unity engine and editor managed code is now compiled with .net standard 2.1.

  • Search: Improved query builder UX and UI.

  • Serialization: Added more examples to the reference for dealing with Arrays with SerializedProperty.

  • Serialization: Added more reference documentation and examples for SerializedObject and SerializedProperty.

  • Serialization: Avoid unnecessary serialization when calling SerializedObject.ApplyModifiedProperties in the single target case.

  • Serialization: Improved performance of StreamedBinaryWrite in specific scenarios.

  • Serialization: Improved the use of SerializationCache.

  • Serialization: SerializedProperty.boxedValue property supports reading and writing entire Structs.

  • Shaders: Optimized parsing of #line directives, making import of large shaders with many #line / #include directives faster.

  • Shaders: Some GLSL reserved words are now usable in shaders. (937467)

  • UI Toolkit: Clarified the message displayed to the user when deleting a style sheet that is being used in the UI Builder. (1354492)

  • UI Toolkit: Fixed list view preview size in UI Builder. (1349018)

  • UI Toolkit: Fixed selectors quick sheet styling in UI Builder. (1352270)

  • UI Toolkit: Improved in-place editing of a Label to match the underlying style (UI Builder). (1354493)

  • UI Toolkit: Removed unnecessary calls to HandleEvent when no associated callbacks are present for the corresponding event.

  • UI Toolkit: TransitionEvents are now collapsed when relevant.

  • UI Toolkit: TransitionEvents reentrance is properly handled.

  • UI Toolkit: Using a Texture with invalid settings as a Cursor will now log a warning. (1340519)

  • Version Control: - Stability and performance improvements.

  • Version Control: Added Checkin and Update confirmation notification.

  • Version Control: Improved load time performance.

  • VFX Graph: Improved the following issues with the Bounds recording in the VFX Graph

    • System bounds are now always computed in local space, in order to avoid lossy transformations of AABB between spaces.
    • Effects containing Automatic systems are now forced to refresh every frame, so that the automatic systems can update their bounds even when off-screen.
    • The last known padding can now be accessed from C# through an internal binding.
  • Virtual Texturing: Tile requests are now returned via PopRequests more frequently.

  • Virtual Texturing: InvalidateRegion calls now generate new tile requests in their "importance" order. The importance is defined as a combination of the tile's screen space size and the the number of frames since the tile has been requested. This makes completing tile requests contribute more to the rendering result when InvalidateRegion is called continuously.

  • Visual Scripting: Eliminating domain reload cost for users when not using Visual Scripting.

  • WebGL: Enabled Play Mode tests for WebGL platform.

  • Windows: Alt + Enter now defaults to native resolution rather than the resolution that the window was in windowed mode. This makes the image more crisp and reduces the chance of letterboxing.

  • XR: Added SRP batcher support for late latching.

API Changes

  • 2D: Added: SortingGroup.ignoreParentSortingGroup to allow a Sorting Group to ignore all parents and sort on a global level instead of being a child of the parent Sorting Group.

  • 2D: Added: Tilemap.tilemapPositionsChanged.

  • 2D: Changed: Made Tilemap.tilemapTileChanged available in Runtime.

  • Android: Added: New APIs to manage fast-follow and on-demand delivered asset packs. The APIs wrap Google's PlayCore functionality.

  • Android: Changed: UnityPlayer Java class now explicitly requires Activity instead of Context in constructors.

  • Animation: Deprecated: Deprecated the Play function in the AnimationPlayableUtilities API to prevent potential issues when passing Timeline Playables into the function. (1279412)

  • Apple TV: Added: Identifier for 2nd generation Apple TV 4K.

  • Apple TV: Changed: Identifiers for Apple TV HD and first generation Apple TV 4K.

  • Asset Import: Added: ModelImporter setting to enable FBX relaxed checks. (1360524)

  • Build Pipeline: Deprecated: BuildReport.files has been deprecated. Use BuildReport.GetFiles() instead.

  • Build Pipeline: Deprecated: UnityLinkerBuildPipelineData.inputDirectory is obsolete, as we no longer take input assemblies for builds all from a single directory.

  • Burst: Added: Added support for DOTS Runtime running / loading .Net Core assemblies.

  • Burst: Added: Added support for System.Span and System.ReadOnlySpan within Bursted code. These types are not allowed as entry-point arguments.

  • Editor: Added: A method to be able to draw the cookie widget providing your own Property, GUIContent and LightType.

  • Editor: Added: Added pen support in the macOS and Windows Editor for old and new input systems. Adds access to pen position, twist, tilt, pressure, and pen status (e.g. button state). On Windows, adds an addition API for coalesced pen events. The missing events can be retrieved with Input.GetPenEvent(). The count of accumulated pen events is retrieved with Input.penEventCount, and the queue of coalesced events cleared with Input.ResetPenEvents().

  • GI: Added: Eliminate breaking change in LightingExplorerTab constructor by reintroducing the previous constructor. (1348261)

  • GI: Added: LightingSettings.lightmapCompression has been added and determines the quality of compression used for lightmaps.

  • GI: Deprecated: LightmapSettings.textureCompression has been deprecated in favor of LightingSettings.lightmapCompression.

  • Graphics: Added: A class for drawing shadow cascades UnityEditor.Rendering.ShadowCascadeGUI.DrawShadowCascades.

  • Graphics: Added: A field to the CullingParameters structure to allow for adjustment to the near clipping plane for shadow clipping - this is independent of the rendering camera near clipping plane.

  • Graphics: Added: A new API to replace the use cases of the ShadowAuto, DepthAuto and VideoAuto GraphicsFormat enum members (which will be deprecated in the future).

  • Graphics: Added: A new Handles.DrawOutline API that allows drawing an outline in the Scene View around specified Game Objects.

  • Graphics: Added: Added a new GraphicsFormatUtility function: IsDepthStencilFormat. Returns true if the format is a depth or stencil format, returns false otherwise.

  • Graphics: Added: Added new depth/stencil format to GraphicsFormat: D16_UNorm_S8_UInt.

  • Graphics: Added: Allowing Rendering Layer Names to not collide in UI. Includes a new API RenderPipelineAsset.prefixedRenderingLayerMaskNames to fetch a unique list of rendering layer mask names for UI needs.

  • Graphics: Added: AMD FidelityFX shaders which were originally in HDRP.

  • Graphics: Added: An option to change the visibilty of the Volumes Gizmos (Solid, Wireframe, Everything), available at Preferences > Core Render Pipeline.

  • Graphics: Added: API function inside DynamicResolutionHandler and new settings in GlobalDynamicResolutionSettings to control low res transparency thresholds. This should help visuals when the screen percentage is too low.

  • Graphics: Added: D16_UNorm_S8_UInt and S8_UInt can now be selected as depth/stencil formats inside the RenderTexture inspector.

  • Graphics: Added: Debug Panels Framework see IDebugDisplaySettingsQuery.

  • Graphics: Added: Exposed LockBufferForWrite and UnlockBufferAfterWrite for GraphicsBuffer (it only existed for ComputeBuffer before under the names Begin/EndWrite).
    Exposed GraphicsBufferHandle.

  • Graphics: Added: Helper for Volumes (Enable All Overrides, Disable All Overrides, Remove All Overrides).

  • Graphics: Added: IndentLevelScope (for VolumeComponentEditor child class only) to handle indentation of the field and the checkbox.

  • Graphics: Added: New API to customize the rtHandleProperties of a particular RTHandle. This is a temporary work around to assist with viewport setup of Custom post process when dealing with DLSS or TAAU.

  • Graphics: Added: New IVolumeDebugSettings interface and VolumeDebugSettings<T> class that stores the information for the Volumes Debug Panel.

  • Graphics: Added: New RayTracingAccelerationStructure.CullInstances Scripting API for populating acceleration structures.

  • Graphics: Added: OverridablePropertyScope (for VolumeComponentEditor child class only) to handle the Additional Property, the override checkbox and disable display and decorator attributes in one scope.

  • Graphics: Added: SystemInfo.computeSubGroupSize API, allows users to query the size of the compute thread group that supports efficient memory sharing on the GPU.

  • Graphics: Added: SystemInfo.maxTexture3DSize API, allows users to query the largest 3D Texture size that the graphics hardware supports.

  • Graphics: Added: SystemInfo.maxTextureArraySlices API, allows users to query the maximum number of slices in a Texture array that the graphics hardware supports.

  • Graphics: Added: SystemInfo.supportsMultisampleStencilResolve API.

  • Graphics: Added: UNITY_PREV_MATRIX_M and UNITY_PREV_MATRIX_I_M shader macros to support instanced motion vector rendering.

  • Graphics: Added: VolumeComponentMenuForRenderPipelineAttribute to specify a volume component only for certain RenderPipelines.

  • Graphics: Changed: BatchRendererGroup API new design.

  • Graphics: Changed: Fixed backwards compatibility issue introduced by #116845 (Allow the default specular reflection cubemap to be a RenderTexture (with dimensions CUBE)).

  • Graphics: Deprecated: ShadowAuto, DepthAuto and VideoAuto graphics formats and introduce a new alternative api. (See the Upgrade Guide for details.).

  • Graphics: Removed: Removed GraphicsFormatUtility.GetDepthStencilFormat(int) after being public for two alpha releases.

  • HDRP: Added: A built-in custom pass to draw object IDs.

  • HDRP: Added: A custom post process injection point AfterPostProcessBlurs executing after depth of field and motion blur.

  • HDRP: Added: A dialog box when you import a Material that has a diffusion profile to add the diffusion profile to global settings.

  • HDRP: Added: A minimum motion vector length to the motion vector debug view.

  • HDRP: Added: A property to control the fallback of the last bounce of a RTGI, RTR, RR ray to keep a previously existing side effect on user demand.

  • HDRP: Added: A rendering feature flag to disable LightProbeGroup editor when an alternative to standard probe is provided by the SRP.

  • HDRP: Added: Better support for LODs in the ray tracing acceleration structure.

  • HDRP: Added: Dependency to mathematics and burst, HDRP now will utilize this to improve on CPU cost. First implementation of burstified decal projector is here.

  • HDRP: Added: Info box when low resolution transparency is selected, but its not enabled in the HDRP settings. This will help new users find the correct knob in the HDRP Asset.

  • HDRP: Added: SG node to get the main directional light direction.

  • HDRP: Added: Shortcut to HDRP Wizard documentation.

  • HDRP: Added: Slider that controls how much the volumetric clouds erosion value affects the ambient occlusion term.

  • HDRP: Added: Slides to control the shape noise offset.

  • HDRP: Added: Support for internal plugin materials and HDSubTarget with their versioning system.

  • HDRP: Added: Support for the camera bridge in the graphics compositor.

  • HDRP: Added: Support of motion vector buffer in custom postprocess.

  • HDRP: Added: Three animation curves to control the density, erosion, and ambient occlusion in the custom submode of the simple controls.

  • HDRP: Added: Tooltips for content inside the Rendering Debugger window.

  • HDRP: Added: ValidateMaterial callbacks to ShaderGUI.

  • HDRP: Added: Volumetric clouds support for baked and realtime reflection probes.

  • HDRP: Added: Warning for when a light is not fitting in the cached shadow atlas and added option to set maximum resolution that would fit.

  • iOS: Added: Identifiers for all iPhone 13 models, 6th generation iPad Minis, 9th generation iPads.

  • iOS: Obsoleted: PlayerSettings.iOS.allowHTTPDownload replaced by cross platform setting PlayerSettings.insecureHttpOption.

  • iOS: Removed: Removed the obsolete iOS Notification Services API. Please consider using the the "Mobile Notifications" package (available in the Unity package manager) which implements the iOS UserNotifications framework.

  • Particles: Added: ParticleSystem.totalTime API, to return the playback time plus any start delay.

  • Physics: Added: All the physics batch queries can now run in physics scenes other than default (see an extra RaycastCommand constructor that has physics scene as the first argument for instance).

  • Physics: Added: Expose a variant of Physics.BakeMesh that accepts cooking options.

  • Physics: Added: Expose linear and angular velocity of both of the bodies in a contact modification pair (see ModifiableContactPair.bodyLinearVelocity for example).

  • Physics: Added: Exposed per-point collision impulse (see ContactPoint.impulse).

  • Physics: Added: Exposed the forces applied to the articulation body by the articulation drives.

  • Physics: Added: Exposed the Rigidbody.maxLinearVelocity property.

  • Physics: Added: Rigidbody.Move method for moving and rotating a kinematic Rigidbody at the same time.

  • Profiler: Added: Expose FrameTimingManager::IsFeatureEnabled() to C#.

  • Profiler: Added: StackedArea to ProfilerModuleChartType for displaying a stacked area chart with non-time-based units.

  • Scene/Game View: Added: Added ability to specify a default container and alignment for new Overlays.

  • Scene/Game View: Added: EditorToolContext.GetAdditionalTools(), enabling Tool Contexts to define additional default tools in the same category as Move, Rotate, Scale.

  • Scene/Game View: Added: GizmoUtility class for accessing gizmo and icon visibility per component type.

  • Scene/Game View: Added: ObjectFactory.PlaceGameObject, which provides a method for placing instantiated GameObjects in the scene with the same preferences that default GameObjects are created with.

  • Scene/Game View: Added: OverlayCanvas.Add, OverlayCanvas.Remove methods to create and display Overlay instances.

  • Scene/Game View: Added: SceneView.AddActiveViewOverlay and SceneView.RemoveActiveViewOverlay to add Overlay instances that automatically follow the active Scene View.

  • Scene/Game View: Added: Editor classes for EditorTool can now implement the ICreateToolbar interface to create horizontal and vertical styled Overlay toolbars in addition to panel layouts.

  • Scene/Game View: Obsoleted: Moved UnityEditor.Overlays.EditorToolbarDropdownToggle to UnityEditor.Toolbars.EditorToolbarDropdownToggle. (1346398)

  • Serialization: Added: SerializedProperty has a new read only property "contentHash" to better track changes to the SerializedProperty's data.

  • Serialization: Added: SerializedProperty.boxedValue property.

  • Serialization: Added: SerializedProperty.gradientValue to the public API.

  • Serialization: Added: SerializedProperty.numericType that exposes the precise type of a numeric property (for example float versus double).

  • Serialization: Added: UintValue and ulongValue to SerializedProperty API.

  • Services: Added: A new com.unity.services.core package that is used for common behaviour of Game Service packages.

  • Shadergraph: Added: A Tessellation Option to PositionNode settings, to provide access to the pre-displaced tessellated position.

  • Shadergraph: Added: A Sprite option to Main Preview, which is similar to Quad but does not allow rotation. Sprite is used as the default preview for URP Sprite shaders.

  • Shadergraph: Added: Control of anisotropic settings on inline Sampler state nodes in ShaderGraph.

  • Shadergraph: Added: Custom interpolator documentation.

  • Shadergraph: Added: Information about selecting and unselecting items to the Blackboard article.

  • Shadergraph: Added: Many node synonyms for the Create Node search so that it's easier to find nodes.

  • Shadergraph: Added: Selection highlight and picking shader passes for URP target.

  • Shadergraph: Added: ShaderGraph animated preview framerate throttle.

  • Shadergraph: Added: Visible errors for invalid stage capability connections to shader graph.

  • Shaders: Added: Added LocalKeyword.isDynamic API to tell which keywords are declared as dynamic branching keywords for this shader.

  • UI Toolkit: Added: Allow custom USS styles to reference any kind of asset (through UnityEngine.Object).

  • UI Toolkit: Added: Exposed ProgressBar.lowValue and ProgressBar.highValue.

  • UI Toolkit: Changed: DropdownField now derives from PopupField. BasePopupField, PopupField, EnumField are moved to UnityEngine. (1308473)

  • URP: Added: Depth Texture setting for Overlay Camera.

  • URP: Added: GetUniversalAdditionalLightData, a method that returns the additional data component for a given light or create one if it doesn't exist yet.

  • URP: Added: Help button on material editor to show the shader documentation page.

  • URP: Added: Lights 2D to the Light Explorer window.

  • URP: Added: Motion Vector render pass for URP.

  • URP: Added: Public api and updated docs for Light2D shape properties.

  • URP: Added: Render Settings Converter to the Render Pipeline Converter, this tool creates and assigns URP Assets based off rendering settings of a Builtin project.

  • URP: Added: Support for default sprite mask shaders for the 2D Renderer in URP.

  • URP: Added: Terrain grass shader alpha changed to always write 1 to alpha. Enabled alpha channel write mask.

  • URP: Added: Two new URP specific scene templates, Basic which has a camera and directional light, then Standard which has the addition of a global volume with basic post effects setup.

  • URP: Added: URP global setting for stripping off shader variants.

  • URP: Added: URP global setting for stripping post processing shader variants.

  • URP: Added: VFX: Fix light cookies integration.

  • URP: Added: XR: Added Late Latching support to reduce VR latency (Quest).

  • URP: Changed: Fixed incorrect shadow fade in deferred rendering mode.

  • VFX Graph: Added: An 'Is Inside' subgraph into VFX Graph additions package.

  • VFX Graph: Added: HDRP Decal output context.

  • VFX Graph: Added: Motion vectors enabled for particle strips.

  • VFX Graph: Added: Provide explicit access to spawnCount in graph.

  • VFX Graph: Added: Structured Graphics Buffer support as exposed type.

  • VFX Graph: Added: Support of direct link event to initialize context (which support several event within the same frame).

  • VFX Graph: Added: The VFX editor will now automatically attach to the current selection if the selected gameobject uses the currently edited VFX asset.

  • VFX Graph: Added: Two new buttons are available in the editor's tool bar. One will display a popup panel to handle attachement and the other to lock/unlock the current attachment.

  • WebGL: Deprecated: For WebGL builds, the WebGL 1 API is no longer included in the Auto Graphics API option (the default). If you need to build for both WebGL 1 and WebGL 2, uncheck the Auto Graphics API and manually add WebGL 1 to the Graphics APIs list.

  • Windows: Added: UnityEngine.Windows.Input.ForwardRawInput now has a second overload that is usable without enabling unsafe code.

  • XR: Added: Support for late latched previous view matrix for URP motion vectors.

Changes

  • 2D: 2D Template now starts with Sprite Atlas v2 as default Sprite Packing method.

  • 2D: 2D URP Template now starts with Sprite Atlas v2 as default Sprite Packing method.

  • 2D: Allow non-public fields with the SerializeField attribute as custom fields for RuleTile.

  • 2D: Changed some of PSDImporter settings to use checkboxes instead of drop down.

  • 2D: Changed Sprite Inspector to show border values in pixel unit.

  • 2D: Changed the information in the Sprite Editor Window's slicing tool to clarify the different slicing methods available.

  • 2D: Replace usage of Triangle.Net with in house tessellation solution.

  • 2D: Updated 2D Template to use new package format structure.

  • 2D: Updated 2D URP Template to use new package format structure.

  • 2D: [com.unity.2d.animation]Animation package Orientation function being replaced with a simpler version.

  • 2D: [com.unity.2d.animation]Sprite Library Asset are now named "New Sprite Library Asset.spriteLib" by default on creation.

  • 2D: [com.unity.2d.animation]SpriteResolver.SetCategoryAndLabel and SpriteResolver.ResolveSpriteToSpriteRenderer now returns a bool to signal if the methods managed to resolve the request or not.

  • 2D: [com.unity.2d.animation]Updated Toolbar and Visibility tab buttons' selection color.

  • 2D: [com.unity.2d.spriteshape]Moved Control point specific data from Inspector to a Scene Overlay Window.

  • 2D: [com.unity.2d.spriteshape]Remove dependency to path package.

  • 2D: [com.unity.2d.spriteshape][com.unity.2d.path]Package com.unity.2d.path marked for deprecation.

  • 2D: [com.unity.2d.tilemap.extras][GameObjectBrush] Add canChangePosition.

  • 2D: [com.unity.2d.tilemap.extras][RuleOverrideTile] Create instance Tile on override.

  • 2D: [com.unity.2d.tilemap.extras][RuleTileEditor] Add blank space to the end of the Rule list.

  • 2D: [com.unity.2d.tilemap.extras][RuleTileEditor] Add drag and drop rect for Sprites to create initial TilingRules.

  • 2D: [com.unity.2d.tilemap.extras][RuleTileEditor] Add field to change number of TilingRules.

  • 2D: [com.unity.2d.tilemap.extras][RuleTile] Add scripting documentation.

  • 2D: [com.unity.2d.tilemap.extras][TintBrush] Add k_ScaleFactor for better precision when painting on non-rectangular Tilemaps.

  • 2D: [com.unity.2d.tilemap.extras][TintBrush] Convert cell positions to world positions based on the Grid used.

  • Android: Allow Android Player to use Vulkan on GPUs that are currently unknown to Unity on Android 11 or newer.

  • Android: Android Gradle Plugin version upgraded from 3.6.0 to 4.0.1.

  • Android: Gradle version upgraded from 5.6.4 to 6.1.1.

  • Android: Pdb files in development builds will now be stored along with the main apk file or main asset pack.

  • Animation: Added a warning to the user in case a transition that is smaller than a fixed update with root motion and non looping clip is made. (1336151)

  • Animation: Updated Animation Rigging package to version 1.1.1.

  • Build Pipeline: Enabling or disabling modules will now cause a data rebuild in the incremental build pipeline.

  • Build Pipeline: It is no longer possible to build a player when a script reload is pending. (1325753)

  • Burst: Burst now generates a link.xml automatically to avoid issues with stripping causing missing symbols at runtime from static constructor usage.

  • Burst: Burst now waits for all threads to complete on shutdown, rather than performing a thread abort, as that could lead to a race condition with Dispose.

  • Burst: Changed the optimization pipeline to run the loop unroller exclusively after the loop vectorizer. This improves codegen in a lot of cases (mostly because the SLP vectorizer is unable to vectorize all the code that the loop unroller could have).

  • Burst: Improved iteration time by triggering Burst compilation immediately after .NET assemblies have been compiled.

  • Burst: Intrinsics: Neon vst1 APIs are now fully supported.

  • Burst: Made the cost of initializing Direct Call methods for execution 33x faster during domain reload.

  • Burst: Made the SharedStatic initialization cost during static constructor initialization time 13.3x faster.

  • Burst: Made fmod and floating-point modulus use a faster algorithm to improve performance.

  • Burst: Removed the player build BC1370 exception warnings as users only found them annoying.

  • Burst: Removed the Use Platform SDK Linker option from Burst AOT Settings for desktop platforms.

  • Burst: Updated the minimum Xcode required for Burst to compile for the Apple iOS/tvOS plaforms to 12.0.

  • Burst: Upgraded Burst to use LLVM Version 12.0.0 by default, bringing the latest optimization improvements from the LLVM project.

  • Burst: Upgraded the minimum supported PS4 SDK to 8.00.

  • Editor: Contextual shortcuts are now preferred over global ones and no longer cause conflicts in ShortcutManager.

  • Editor: EditorGUI.MaskField now uses the same dropdown UI style as the EditorGUI.LayerMaskField.

  • Editor: Excluded Mesh, Texture2D and Texture2dArray from Presets. (1325555)

  • Editor: Removing most Device Simulator devices from the editor. All devices can be added by installing the com.unity.device-simulator.devices package.

  • Editor: Script names will be displayed together with their namespaces in the Add Component search results. (1264749)

  • Editor: UI widget used for Light Cookies from the standard Property Field to the ObjectField that provides texture preview and asset directory search capabilities, across HDRP and built-in.

  • Editor: Updated com.unity.cinemachine to 2.8.0.

  • Editor: Use order_preserving_vector_set_hashed to store gameobjects, filtered and transform (same data structure as Selection.objects). This ensures assigning to the selection preserve order of the items. (915931)

  • Editor: When a Mask Field contains mixed values it will now show a list of the values in the label. The label will revert back to showing "Mixed..." when there is not enough space to show the list. (1266226)

  • Editor: When performing incremental build (Android, Windows, OSX, WebGL, iOS), player assemblies will be placed now in Library/Bee folder rather than Library folder, and will persist until the next build.

  • Graph Tool Foundation: Graph Tools Foundation edges drawing was changed from Bezier curves to Z-lines.

  • Graphics: Creating a RenderTexture with no depth bits specified will now fail instead of continuing with a warning. (1348764)

  • Graphics: Cubemap pixel access functions (GetPixel/GetPixels/GetPixels32/GetPixelData & SetPixel/SetPixels/SetPixels32/SetPixelData) now throw an ArgumentException when encountering an error.

  • Graphics: CubemapArray pixel access functions (GetPixel/GetPixels/GetPixels32/GetPixelData & SetPixel/SetPixels/SetPixels32/SetPixelData) now throw an ArgumentException when encountering an error.

  • Graphics: DX12 doesn't revert to worse texture detail anymore, when the GPU memory is running out.

  • Graphics: DynamicResolutionHandler.GetScaledSize function now clamps, and will never allow to return a size greater than its input.

  • Graphics: Improved IntegrateLDCharlie() to use uniform stratified sampling for faster convergence towards the ground truth.

  • Graphics: Improved the warning messages for Volumes and their Colliders.

  • Graphics: LensFlare (SRP) can be now disabled per element.

  • Graphics: LensFlare (SRP) tooltips now refer to meters.

  • Graphics: LensFlare Element editor now have Thumbnail preview.

  • Graphics: Mark OpenGL ES 2.0 as deprecated in Graphics API selection UI.

  • Graphics: Removed DYNAMIC_RESOLUTION snippet on lens flare common shader. Its not necessary any more on HDRP, which simplifies the shader.

  • Graphics: Serialize the Probe Volume asset as binary to improve footprint on disk and loading speed.

  • Graphics: Texture2DArray pixel access functions (GetPixel/GetPixels/GetPixels32/GetPixelData & SetPixel/SetPixels/SetPixels32/SetPixelData) now throw an ArgumentException when encountering an error.

  • Graphics: Texture3D pixel access functions (GetPixel/GetPixels/GetPixels32/GetPixelData & SetPixel/SetPixels/SetPixels32/SetPixelData) now throw an ArgumentException when encountering an error.

  • Graphics: Uniformize the names in ReflectionProbes along render pipelines.

  • Graphics: Updated icon for IES, LightAnchor and LensFlare.

  • Graphics: WebCamTexture pixel access functions (GetPixel/GetPixels/GetPixels32) now throw an ArgumentException when encountering an error. Calling these functions before the first frame update will throw an exception instead of returning blank data.

  • HDRP: Changed light reset to preserve type.

  • HDRP: Changed the Channel Mixer Volume Component UI.Showing all the channels.

  • HDRP: Changed the debug panel mip bias functions from public to internal.

  • HDRP: Changed the NVIDIA install button to the standard FixMeButton.

  • HDRP: Changed the storage format of volumetric clouds presets for easier editing.

  • HDRP: Display an info box and disable MSAA asset entry when ray tracing is enabled.

  • HDRP: Fixed minor readability issues in the ray tracing code.

  • HDRP: Hair uses GGX LTC for area light specular.

  • HDRP: Ignore hybrid duplicated reflection probes during light baking.

  • HDRP: Improved a bit the area cookie behavior for higher smoothness values to reduce artifacts.

  • HDRP: Improved sampling of overlapping point/area lights in path-traced volumetric scattering. (1358777)

  • HDRP: Improved the DynamicArray class by adding several utility APIs.

  • HDRP: Improved the fly through ghosting artifacts in the volumetric clouds.

  • HDRP: Improved to the RTGI denoising.

  • HDRP: Improved volumetric clouds (added new noise for erosion, reduced ghosting while flying through, altitude distortion, ghosting when changing from local to distant clouds, fix issue in wind distortion along the Z axis).

  • HDRP: Increased the minimal density of the volumetric clouds.

  • HDRP: Make LitTessellation and LayeredLitTessellation fallback on Lit and LayeredLit respectively in DXR.

  • HDRP: MaterialReimporter.ReimportAllMaterials and MaterialReimporter.ReimportAllHDShaderGraphs now batch the asset database changes to improve performance.

  • HDRP: Moved AMD FidelityFX shaders to core.

  • HDRP: Moved invariants outside of loop for a minor CPU speedup in the light loop code.

  • HDRP: Moved supportRuntimeDebugDisplay option from HDRPAsset to HDRPGlobalSettings.

  • HDRP: Path-traced volumetric scattering now takes fog color into account, adding scattered contribution on top of the non-scattered result (case 1346105, 1358783). (1346105, 1358783)

  • HDRP: Reduced the maximum distance per ray step of volumetric clouds.

  • HDRP: Removed Bilinear and Lanczos upscale filter.

  • HDRP: Removed redundant Show Inactive Objects and Isolate Selection checkboxes from the Emissive Materials tab of the Light Explorer.

  • HDRP: Renaming Decal Projector to HDRP Decal Projector.

  • HDRP: Replaced the context menu by a search window when adding custom pass.

  • HDRP: Restore old version of the RendererList structs/api for compatibility.

  • HDRP: Surface ReflectionTypeLoadExceptions in HDUtils.GetRenderPipelineMaterialList(). Without surfacing these exceptions, developers cannot act on any underlying reflection errors in the HDRP assembly.

  • HDRP: TAA jitter is disabled while using Frame Debugger now.

  • HDRP: The HDRP Render Graph now uses the new RendererList API for rendering and (optional) pass culling.

  • HDRP: Updated the recursive rendering documentation.

  • HDRP: Various improvements to the volumetric clouds.

  • HDRP: Visual Environment ambient mode is now set to Dynamic by default.

  • HDRP: When a ray hits the sky in the ray marching part of mixed ray tracing, it is considered a miss.

  • IL2CPP: Code generation option moved from build settings (EditorUserBuildSettings.il2CppCodeGeneration
    ) to player settings (PlayerSettings.SetIl2CppCodeGeneration/PlayerSettings.GetIl2CppCodeGeneration). This option is now per platform and persisted with the project.

  • Input System: Updated Input System package to 1.1.1 with many fixes and improvements.

  • Input System: When exceptions occur in user code inside of Input System callbacks, the exception message is now printed first and details about the callback second to avoid hiding exception details.

  • iOS: IOS 12 is now minimum supported iOS version.

  • Networking: UnityWebRequest by default is HTTPS only now. Plain text HTTP can be enabled in Player Settings.

  • Package: (Recorder) Prevent invalid GPU callback data from being written to a frame: this change skips the problematic frame and logs an error message.

  • Package: Added the Code Coverage package to the Engineering feature set.

  • Package: Com.unity.live-capture 1.0.1 package to com.unity.live-capture 2.0.0-pre.3.

  • Package: Com.unity.purchasing has been updated to 4.1.0.

  • Package: Com.unity.purchasing has been updated to 4.1.1.

  • Package: Com.unity.purchasing updated to 4.0.0. Please refer to the package changelog online here: https://docs.unity3d.com/Packages/com.unity.purchasing@4.0/changelog/CHANGELOG.html.

  • Package: ProBuilder 5.0.4.

  • Package: Released com.unity.mathematics 1.2.4.

  • Package: Released Localization package 1.0.3.

  • Package: Updated Addressables to 1.19.6.

  • Package: Updated Code Coverage package to v1.0.1. This version includes improvements and fixes.

  • Package: Updated Code Coverage package to v1.1.0. This version adds code coverage session events, path stripping, support for Test Framework v1.2 and other improvements and fixes.

  • Package: Updated com.unity.cinemachine to 2.8.1.

  • Package: Updated com.unity.cinemachine to 2.8.2.

  • Package: Updated com.unity.device-simulator.devices@1.0.0-pre.4.

  • Package: Updated com.unity.formats.alembic to 2.3.0-pre.3.

  • Package: Updated com.unity.formats.alembic@2.2.1.

  • Package: Updated com.unity.formats.alembic@2.2.2.

  • Package: Updated com.unity.formats.alembic@2.3.0-pre.1.

  • Package: Updated com.unity.recorder@3.0.2.

  • Package: Updated com.unity.recorder@4.0.0-pre.1.

  • Package: Updated FBX Exporter package to 4.1.0: https://docs.unity3d.com/Packages/com.unity.formats.fbx@4.1/manual/index.html.

  • Package: Updated localization package to 1.0.4.

  • Package: Updated nodejs ini package to fix vulnerability issue. (1345229)

  • Package: Updated package com.unity.live-capture 1.0.1-pre.465 package to com.unity.live-capture 1.0.1.

  • Package: Updated package com.unity.purchasing to 4.0.3. Please refer to the package changelog online here: https://docs.unity3d.com/Packages/com.unity.purchasing@4.0/changelog/CHANGELOG.html.

  • Package: Updated packages Addressables to 1.19.4 and SBP to 1.19.2.

  • Package: Updated Sequences (com.unity.sequences) to 1.0.0.

  • Package: Updated Sequences to 1.0.2.

  • Package: Updated Sequences to 1.0.3.

  • Package: Updated Sequences to 1.1.0-pre.1.

  • Package: Updated Subsystem Registration package version to 1.1.1.

  • Package: Updated Tutorial Authoring Tools to 1.0.0.

  • Package: Updated Tutorial Framework to 2.0.0.

  • Package: Visual Scripting

    • Removed unused Preferences
    • Renamed preference "Update Units Automatically" to "Update Nodes Automatically".
  • Package Manager: Changed error and warning box to look like the info box.

  • Package Manager: Replaced the communication layer between Unity and the Unity Package Manager to connect using IPC instead of HTTP in order to solve a number of connectivity issues.

  • Package Manager: The Git LFS cache enabled by setting the UPM_ENABLE_GIT_LFS_CACHE environment variable is now always located under the global cache root, even when the cache root location is customized.

  • Package Manager: We are no longer using SCSS files, only USS from now on.

  • Package Manager: We now cache whether each asset version is a full project or not after clicking Import on it for the first time.

  • Prefabs: Removed disconnected state for Prefab instances.

  • Profiler: Added UnityEngine.Object lifecycle tracing to the Unity Profiler.

  • Profiler: The command-line argument "-profiler-log-file" now not only sets profiler target file but also activates profiler. (1339129)

  • Profiler: Updated com.unity.profiling.core@1.0.0. The package enables advanced markup for Unity Profiler markers and counters. See more details at https://docs.unity3d.com/Packages/com.unity.profiling.core@1.0/manual/index.html.

  • Profiler: Updated Profile Analyzer package version to 1.1.1, which includes two bug fixes. Release notes available at https://docs.unity3d.com/Packages/com.unity.performance.profile-analyzer@latest/index.html?subfolder=/changelog/CHANGELOG.html.

  • Scene/Game View: Removed Component Tools Overlay, these tools are now available in the regular Tools Overlay.

  • Scene/Game View: Unavailable tools are now hidden rather than disabled in the Scene View Tools Overlay.

  • Search: Improved asset indexer performances and index size. (1343812)

  • Services: Added Services top menu for services discovery.

  • Shadergraph: Adjusted Blackboard article to clarify multi-select functionality.

  • Shadergraph: Changed "Create Node" action in ShaderGraph stack separator context menu to "Add Block Node" and added it to main stack context menu.

  • Shadergraph: Only ShaderGraph keywords count towards the shader permutation variant limit, SubGraph keywords do not.

  • Shadergraph: ShaderGraph SubGraphs will now report errors and warnings in a condensed single error.

  • Terrain: Updated the version of Terrain Tools included the Package Manager to 4.0.3. (Previously 4.0.0-pre.2).

  • Timeline: Updated Timeline package version to 1.6.1.

  • uGUI: Removed the HideFlags.HideAndDontSave on the mesh inside Graphics for it to get properly cleaned up on both managed and native side. (1319556)

  • uGUI: Updated the context menu order and grouped all non-TMP game objects and components under legacy.

  • UI Toolkit: Asset types referenced from USS files are now enforced on a per-property basis and generates warnings instead of errors.

  • UI Toolkit: Marked the com.unity.ui package, which is incompatible with 21.2 and above, as deprecated.

  • URP: 2D Lights now inherit from Light2DBase.

  • URP: Changed the default name when a new urp asset is created.

  • URP: MaterialReimporter.ReimportAllMaterials now batches the asset database changes to improve performance.

  • URP: Refactored some of the array resizing code around decal projector rendering to use the new APIs in render core.

  • URP: Removed experimental tile deferred code.

  • URP: Stripping shader variants per renderer features instead of combined renderer features.

  • URP: The behavior of setting a camera's Background Type to "Dont Care" has changed on mobile. Previously, "Dont Care" would behave identically to "Solid Color" on mobile. Now, "Dont Care" corresponds to the render target being filled with arbitrary data at the beginning of the frame, which may be faster in some situations. Note that there are no guarantees for the exact content of the render target, so projects should use "Dont care" only if they are guaranteed to render to, or otherwise write every pixel every frame.

  • URP: UniversalRendererData and ForwardRendererData GUIDs have been reversed so that users coming from 2019LTS, 2020LTS and 2021.1 have a smooth upgrade path. For 2021.2 Alpha/Beta users, you may encounter issues and are strongly recommended to start with a fresh library if initial upgrade fails.

  • URP: URP Asset Inspector - Advanced settings have been reordered under Show Additional Properties in each section.

  • URP: URP Asset Inspector - General section has been renamed to Rendering.

  • URP: URP will no longer render via an intermediate texture unless actively required by a Renderer Feature. See the upgrade guide for compatibility options and how assets are upgraded.

  • URP: VFX: New shadergraph support directly on Universal target.

  • URP: When MSAA is enabled and a depth texture is required, the opaque pass depth will be copied instead of scheduling a depth prepass.

  • Version Control: ### Changed

    • Updating license to better conform with expected customer usage.
    • Updated documentation file to meet standards.
    • Updated third-party usage.
    • No longer requires downloading of the full Plastic client. Basic features will work without additional installation. Features that require the full Plastic client will allow download and install as needed.
    • Usability improvements around checking in code
    • Improved update workspace tab UX
    • Plastic SCM context menu is now available even if the Plastic SCM window is closed.
  • Version Control: Migration tests
    Improved usage analytics around Editor and Plugin version
    Workspace Migration Adjustments.

  • Version Control: Removed the unneeded refresh button from History Tab
    Moved search bar to the top right global icon section in all tabs
    Updated capitalization of options in the Settings context menu
    Updated tab button styling to be consistent with Unity Editor conventions
    Status bar visible across all tabs
    Moved refresh button to the toolbar at the top right corner of the window
    Moved changesets time period selector to the right corner of the window
    Removed "Changes of changeset" header on the Changesets tab
    Moved number of selected items next to "Item" metadata title on the Pending Changes tab
    Improved refresh icon resolution
    Changed changesets detail to appear in vertical column
    Reduced default number of columns in changesets tab
    The number of changesets is no longer displayed in changesets tab
    Changed Launch branch explorer into an icon with tooltip
    Removed the hide changes button in changesets tab
    Moved incoming change prompt and button into a status bar
    Changed "Launch Plastic" to "Launch Plastic SCM" in options menu
    Wording change for plastic installation
    Updated file status icons.

  • Version Control: Simplified UI: decluttered UI.

  • Version Control: Updated status bar notification icons
    Updated texts for workspace modes selection and checkin comment box.

  • VFX Graph: Transform integrated to VFXTypes : Circle, ArcCircle, Sphere, ArcSphere, Torus, ArcTorus, Cone, ArcCone.

  • Virtual Texturing: Now PopRequests allows the destination list to have a different size than the texture stack's maxActiveRequests value.

  • XR: Marked com.unity.xr.arextensions package as deprecated.

  • XR: Marked com.unity.xr.facesubsystem package as deprecated.

  • XR: Renamed XR Tools Utilities package to XR Core Utilities package.

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

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

  • XR: Updated OpenXR Package to 1.2.8.

  • XR: Updated the verified AR Foundation related packages to 4.2.0-pre.12. Please see the AR Foundation package changelog for details.

  • XR: Updated XR Interaction Toolkit to 1.0.0-pre.5.

  • XR: Updated XR Legacy Input Helpers to 2.1.8.

Fixes

  • 2D: A non-descriptive error is thrown when building with a Texture that has it's rectangle out of bounds. (1300130)

  • 2D: Activated Tile Palette Tool is now deactivated when Tool is removed from Default Tools. (1342201)

  • 2D: Atlas Cache is inconsistent after disabling Sprite Packer and deleting atlases outside Unity Editor. (1335900)

  • 2D: Fixed artifacts on images when flatten for PSDImporter.

  • 2D: Fixed editor crash when calling SpriteAtlasUtility.PackAtlases. (1353609)

  • 2D: Fixed exception "PsdInvalidException: Unrecognized layer section type" when importing certain files.

  • 2D: Fixed exception when adding a new Rule when no Rule is selected.

  • 2D: Fixed issue where a scriptedTile without LockTransform set but has a transform matrix in GetTileData is dropped onto the Tile Palette, the Tile on the Tile Palette does not match the transform matrix as defined in GetTileData. (1341938)

  • 2D: Fixed Sprite Editor Window does not show texture preview with the correct filtering mode. (1350446)

  • 2D: Fixed Sprite Editor Window to be disabled when readonly assets are selected. (1343237)

  • 2D: Fixed Sprite Frame module inspector size jitters in certain occasions.

  • 2D: Fixed Tile Palette window incorrectly preventing selection in Scene View when Tilemap Tools are inactive. (1365564)

  • 2D: Fixed upgrade issue when atlas v1 to v2 causes objects in folders to become ungrouped. (1354054)

  • 2D: Secondary Texture AssetImporter reference error when using same texture as Main Texture in Sprite Editor. (1331542)

  • 2D: Validate and refresh Tilemap when loaded from a separate scene. (1344979)

  • 2D: [com.unity.2d.animation]Fixed an issue where removing an edge in the Skinning editor would result in the mesh falling back to a quad. (1365831)

  • 2D: [com.unity.2d.animation]Fixed Sprite selection actions to now work with Undo.

  • 2D: [RuleTile] Fixed error in RuleTileEditor when removing all Rules and adding a new Rule.

  • AI: Fixed crashes from building the NavMesh from meshes without valid vertex data. (1315584)

  • AI: Fixed how the NavMesh is computed in some situations where multiple ledges in the environment form a steep slope (e.g. computing NavMesh on a narrow stair which has hand rails). (1074084)

  • Android: Compass.headingAccuracy will report one of predefined values giving some indication on accuracy. (1304067)

  • Android: Fixed asking for permission for location, webcam and external storage. (1363472)

  • Android: Fixed baking reflectionprobes with Vulkan Editor and build target Android. (1344866)

  • Android: Fixed exporting Android Studio project to non-existing folder using Editor API. (1347960)

  • Android: Fixed leaked Java local reference when creating new Java object. (1366122)

  • Android: Fixed OBB deployment to Sasung Galaxy S21. (1365713)

  • Android: Fixed performance regression when using MSAA backbuffer with Vulkan. (1351579)

  • Android: Gradle template placeholder DIR_UNITYPROJECT works again. (1346794)

  • Android: Il2cpp resources will be extracted during player launch only when needed, for ex., changes in scripts. Previously they would be extracted each time you make a new build from Unity.

  • Android: In the new input system, the search, call, endcall, camera, focus, and headsethook keys were all mapped to various function keys. These mappings are not helpful on any current platforms, and in the case of the search key, this mapping is wrong on Chrome OS keyboards which have separate search and F2 keys. (1343608)

  • Android: Removed 'Experimental' tag from Split APK by architectures, since this feature was stable for years, we simply forgot to remove 'Experimental' tag. (1364276)

  • Android: Stylus input is now treated as a touch rather than mouse in the older input system. (1246579)

  • Android: Toggling Build App Bundle in the Build Player Window will now prompt for a save location rather than attempting to use the last build location which would have been the incorrect type of package. (1329922)

  • Animation: Animation Clip Preview Window's component stripping strips away all required components but the last batch. (1306349)

  • Animation: Animator.GetBoneTransform() is now working with disabled gameobject/animator. Exception are throw if avatar is null or not a humanoid. (1351090)

  • Animation: Fixed an issue where large int would lose precision in the animation clip. (1278866)

  • Animation: Fixed an issue where the animation blend would not occur when interrupting an empty state transition. (1204145)

  • Animation: Fixed Animation component not releasing shader property blocks when disabled. (1293179)

  • Animation: Fixed Animation window property selection from displaying duplicate Components when one Component type derives from another. (1248925)

  • Animation: Fixed error message spam "BlendTreeWorkspace is NULL" when saving the scene when an animation preview is active. (1343833)

  • Animation: Fixed for potential crash when modifying an animation override controller which is in use during a state machine enter / exit behavior callback. (1346587)

  • Animation: Fixed GameObject flying when Root Motion is enabled and the Animation is using Motion Time parameter. Root motion will now be disabled when using Motion Time parameter. (1334739)

  • Animation: Fixed grid in Animator window to always correctly cover the entire graph area. (1337632)

  • Animation: Fixed HumanPoseHandler to no longer crash when calling the SetHumanPose function with a destroyed Root Transform. (1351876)

  • Animation: Fixed keyframing of the "Active" property in constraint components. (1317876)

  • Animation: Fixed UndoPropertyModification currentValue returning null when changing Material's properties in the Inspector while keyframing. (1343018)

  • Animation: GameObject is not animated when the Animator Component is enabled during Play Mode and Culling Mode is set to "Cull Completely". (1263490)

  • Animation: Improved performance with generating animation bindings. (1353998)

  • Animation: StateMachine callbacks (OnStateEnter(), OnStateUpdate() and OnStateExit()) where called twice when a playable was bound to an animator with a state machine. They are now called only once, as expected. (1299849)

  • Animation: Updated sort method for animation clips in animation window using alphanum/natural sort. (1261365)

  • Animation: [Avatar] AvatarBuilder.BuildHumanAvatar sets NaN positions with some avatars. (1200354)

  • Apple TV: Fixed Game Center's dashboard opening instead of achievements screen when using UnityEngnine.Social.ShowAchievementsUI(). (1341949)

  • Asset Bundles: - Improved performance of AssetBundle.UnloadAsync.

    • Added new API to block on the main thread until an async AssetBundle unload completes.
  • Asset Bundles: Fixed an issue where moving an asset would not trigger an Asset Bundle rebuild. (1346529)

  • Asset Bundles: Fixed rare issue where AssetBundle.RecompressAssetBundleAsync would do a full recompress even if both the source and target AssetBundles are LZ4 compressed. (1293912)

  • Asset Import: BlendShape normals are recalculated when a meshes normals are set to 'calculate', and the blendshape normals are set to 'import'. (1363962)

  • Asset Import: BlendShapes value defaults to 0 when importing FBX model. (1359606)

  • Asset Import: Changing texture shape no longer causes NullReferenceExceptions. (1355120)

  • Asset Import: Default Presets are applied correctly to ScriptableObjects created using the CreateAssetMenu. (1343776)

  • Asset Import: Fixed for Failing Importer Performance Tests on Linux. (1364226)

  • Asset Import: Fixed RenderToCubeMap artifacts when used with a Physical Camera. (1370847)

  • Asset Import: Large SpeedTree imports. (1364523)

  • Asset Import: PanelSettingAssets is displayed with its UIToolkit CustomEditor as expected. (1330718)

  • Asset Pipeline: Added Editor Preference to make Bump Map check optional. (1345444)

  • Asset Pipeline: AssetModificationProcessor.OnWillDeleteAsset is called when deleting an orphaned meta file. (1326312)

  • Asset Pipeline: Blender and Maya files now import at the correct scale. (1320649)

  • Asset Pipeline: Call to AssetDatabase.ForceReserializeAssets() throws exception, if being called from callback, while scene is also being modified. It is recommended to call AssetDatabase.ForceReserializeAssets() from menu item style entry point. (1089842)

  • Asset Pipeline: Calling CreateAsset twice on the same location with the same asset didn't update ProjectBrowser. (1345123)

  • Asset Pipeline: Calling CreateAsset with a path that is an existing folder now generates an error. (1344954)

  • Asset Pipeline: Fixed an infinite import loop that could occur on case-sensitive file systems if similarly named meta files were encountered. (1345905)

  • Asset Pipeline: Fixed an issue where a project containing a symbolic link could crash on startup on Windows. (1370389)

  • Asset Pipeline: Fixed an issue where Importer/Rig Update button does not update. (1324031)

  • Asset Pipeline: Fixed an issue where it was possible invalid and unusable Presets without any errors. The Preset constructor now throws an exception when doing so. (1348271)

  • Asset Pipeline: Fixed an issue where Model Importer Rig Tab Update button doesn't work properly with multi-selection. (1330281)

  • Asset Pipeline: Fixed an issue where NullReferenceException is thrown when assigning a duplicated Avatar to an Animation Source. (1274098)

  • Asset Pipeline: Fixed an issue where the Model Importer Rig Tab's Avatar Source doesn't refresh. (1330278)

  • Asset Pipeline: Fixed an issue where Unity could crash when attempting to repair a scene containing multiple components with missing GameObjects while opening it. (1347557)

  • Asset Pipeline: Fixed an issue where user fields in assets containing 'guid' could cause incorrect asset dependencies to be shown. (1363953)

  • Asset Pipeline: Fixed crash when opening project with asset that a broken reference to mono script. (1351825)

  • Asset Pipeline: Fixed race condition triggering an assert when downloading from cache server and not refreshing.

  • Asset Pipeline: Improved quality of imported JPEG textures. (1345890)

  • Asset Pipeline: Reloading Arrays are kept in Sync. (1327830)

  • Asset Pipeline: Tags can now be deleted from the TagManager Presets. (1317709)

  • Audio: Fixed a crash that would occur when removing a custom filter from a game object and then stopping the associated audio source. (1363271)

  • Audio: Fixed calculation of channel audibility such that a signal which is branched off via send/receive effects in a mixer group and fully attenuated after the branching correctly retain the audibility contributed by the send-receive connection. (1309971)

  • Audio: Fixed crash caused by leaking memory allocators caused by built-in audio device suspension in the editor. (1351004)

  • Audio: Fixed performance impact on SaveAndReimport when AudioMixer window is shown. (1327645)

  • Audio: Fixed rare access violation crash in audio update of main thread. (1352816)

  • Audio: For complex send-receive configurations branching the signals between two mixer groups an order-dependent buffering delay was introduced that caused flange-like effects. The correct evaluation order of all effects is now enforced to prevent this. (1309970)

  • Build Pipeline: Errors from catastrophically failing incremental build pipeline steps are now clearer.

  • Build Pipeline: Fixed a bug where data builds would unnecessarily rerun in incremental player builds if the project contained editor resources.

  • Build Pipeline: Fixed a bug where UnityLinker would unnecessarily rerun without changes in incremental player builds.

  • Build Pipeline: Fixed a potential file name issue on windows in incremental player builds.

  • Build Pipeline: Prevent selection of ~/Desktop folder as build target. (1357782)

  • Build Pipeline: The build subtarget is now adjusted to kStandaloneBuildSubtargetServer when BuildPipeline.BuildPlayer is called with the deprecated option BuildOptions.EnableHeadlessMode set to true so the scripted build pipeline remains backward compatible until the option is effectively removed. (1354146)

  • Build System: Fixed error "Cannot find mono image in MonoManager for assembly x" during assembly reload when calling ContentBuildInterface:GetPlayerObjectIdentifiersInAsset.

  • Burst: Arrows were rendered even though they were not within the current view.

  • Burst: Burst will now handle projects special characters in their project-name.

  • Burst: Crash in burst module initialization if multiple modules are compiled and then linked in a different order.

  • Burst: Detects if the simulator is the target of a player build for iOS/tvOS and disables burst, as at present this configuration is not supported by burst.

  • Burst: Fixed a bug where a player build that had multiple assemblies that had structs declared with the same name and same contents but different [BurstCompile] methods in them, would wrongly only pick a single struct to Burst-compile.

  • Burst: Fixed a bug whereby sometimes some LLVM intrinsics could be incorrectly marked as unused causing invalid codegen with calls to math.acos.

  • Burst: Fixed a bug with sqrt_ps for 128-bit types where it would crash the compiler.

  • Burst: Fixed a crash that could occur when loading legacy Burst AOT settings and then entering play mode.

  • Burst: Fixed an issue where Debug.LogError logs from Bursted code would be treated as compiler errors. (1354070)

  • Burst: Fixed an issue where dsym folders would be not be copied across to the DoNotShip folder when building a multi architecture build for mac os.

  • Burst: Fixed bug that could lead to "Failed to resolve method with name hash X and signature hash Y" compiler error.

  • Burst: Fixed bug that could lead to incorrect compiler errors for calls to GetHashCode from a generic type.

  • Burst: Fixed compiler error that occurred when calling BurstCompiler.CompileFunctionPointer with a delegate type that was decorated with a custom attribute.

  • Burst: Fixed issue that could cause bcl.exe to fail with an exit code of 1 but not output any compilation errors.

  • Burst: Fixed our platform documentation to accurately reflect the current supported platforms with Burst.

  • Burst: Fixed that implicitly casting a scalar half to a vector type would cause the compiler to crash.

  • Burst: Fixed the "could not find path tempburstlibs" error message popping up when building for Android and Burst is disabled.

  • Burst: Fixed the [bug @tertle found](https://forum.unity.com/threads/burst-error-bc0102-unexpected-internal-compiler-error.1173977/) when loading a vector from a struct pointer that is marked as in.

  • Burst: Incorrect conversions between signed and unsigned vector types.

  • Burst: Inspector menu buttons were seen as available, even though they were not supported, when viewing i.e. .NET IL code.

  • Burst: Linker errors on macOS due to long command lines, swapped to using filelists for inputs.

  • Burst: Linking would fail on non-Windows platforms if the project folder contained a single-quote.

  • Burst: Made it save the actual line numbers for code blocks in _blockLine even when the block is below the view.

  • Burst: Missing output messages from some tools when a failure occurred.

  • Burst: Removed the starting newline character when copying, and when rendering plain assembly kind.

  • Burst: Stack overflow caused by placement of alloca under certain function transforms.

  • Burst: Static constructor cyclic checks also included method calls when this is not necessary and fails on burst runtime logging code.

  • Burst: Static constructor sorting didn't account for dependencies within calls' IL.

  • Burst: The cache for pdbs was becoming stale. This caused issues with wrong source information being shown in the inspector, and potentially wrong debug information being generated for bursted code in editor sessions.

  • Burst: ArgumentOutOfRangeException due to _renderBlockStart and _renderBlockEnd not being probably initialized when all blocks were above the scroll position.

  • Burst: [SkipLocalsInit] now correctly doesn't zero-initialize variables in a function (previously it only avoided zero-initialization of stackalloc created variables).

  • Core: Fixed bug where shadows disappear in the frustum corners from false positives in the shadow culling. (1153151)

  • Core: Fixed bug with shadow fade where the shadows will be culled with a hard line across the fade and also stretches the fade beyond the projected shadow.

  • Core: Fixed incorrect handling of C#'s readonly keyword in the JobsDebugger. (1367166)

  • Documentation: Fixed incorrect measurement units for ArticulationDrive.forceLimit.

  • DX12: Fixed crash copying block compressed textures. (1360034)

  • Editor: (Dynamic Hints) Fixed: NullReferenceException when a prefab with a missing script is hovered in the ProjectBrowser.

  • Editor: Added additional diacritics support to the Linux Editor for multi-key characters. (1344560)

  • Editor: Added BOM SJSON parsing support. (1373091)

  • Editor: Added information entry when player data is rebuilt with Development checkbox off, the message will be 'Rebuilding Data files because BuildOptions.Development is not set.'. (1364982)

  • Editor: Added pen delta calculation for the new input system. (1168556)

  • Editor: Added progress scopes for shader compilation and scene opening. (1331846)

  • Editor: Advanced Drop-down now calculates the initially needed size correctly, avoiding scrollbars if the size fits into view or the defined max size of the window. (1335631)

  • Editor: Allow DragAndDrop custom handler to override Drop on the scene view. (1351057)

  • Editor: Calling Screen.SetResolution with width/height 0, 0 in Device Simulator will now reset resolution to the default one. (1367882)

  • Editor: Copy Path property' in transform inspector now returns the correct property when constrain proportions are disabled. (1365045)

  • Editor: Do not show Beta users thank you link if the build is not final. (1363606)

  • Editor: Ensure current Settings Provider gets Activated if NotifySettingsProvider change is called. (1343598)

  • Editor: Ensure no SearchReportWindow are created when using old OverlayPresets.asset. (1368837)

  • Editor: Ensure RootEditor does not prevent from dropping in scene view. (1373165)

  • Editor: Ensured compact mode works fine with Asset store provider. (1357617)

  • Editor: Ensured that when creating a new scene through the scene template mechanism the EditorSceneManager.newScene event has the proper arguments and all the defaults objects are properly created according to the type of builtin template. (1347256)

  • Editor: Ensured the tips section doesn't wordwrap as this cause resizing problem at scaling 125%. (1345630)

  • Editor: Enums in the inspector can now be sorted in alphabetical order by using [InspectorOrder] attribute.

  • Editor: Fixed a bug regarding repeat command for integration tests (DSTP-562).

  • Editor: Fixed a bug which prevented the access token to be refreshed after it expired. This issue required the user to close and reopen the editor every time the access token expired to get it refreshed.

  • Editor: Fixed Advanced Dropdown (Add Component Menu) to allow mouse interactions in the search text field. (1352677)

  • Editor: Fixed an issue to set correct EnumFlagsFields for sbyte, byte, short and ushort. (1337072)

  • Editor: Fixed an issue where console errors are thrown when terrain inspector is shrunk. (1305724)

  • Editor: Fixed an issue where the cursor would flicker between different cursors near resize panes. (1333668)

  • Editor: Fixed ArgumentOutOfRangeException when interacting with Scene Hierarchy window after exiting playmode. (1351981)

  • Editor: Fixed assert throwing when instantiating a new scene from a modal window. (1355520)

  • Editor: Fixed build and run menu and its shortcut still working when build and run is disabled by Editor extension. (1345699)

  • Editor: Fixed can't resize the Inspector window when a script is attached to a GameObject and Sirenix Odin Inspector plugin is installed. (1359807)

  • Editor: Fixed Console Window log hyperlinks cursor hovering.

  • Editor: Fixed crash when entering Play Mode if a ScriptableObject Resource is loaded and unloaded while being displayed in the Inspector. (1359247)

  • Editor: Fixed editor crash when accessing properties on canvas in some cases. (1340354)

  • Editor: Fixed Editor crash when using -quit command line argument on MacOS. (1362461)

  • Editor: Fixed editor crash while processing static batching meshes during enter playmode. (1370676)

  • Editor: Fixed editor crashes when exiting and keeping a tutorial project.

  • Editor: Fixed editor freezes for a moment when moved from one screen to another with different resolution scale. (1322959)

  • Editor: Fixed editor window leak on window close. (1372919)

  • Editor: Fixed elements overlap one another in the Inspector window when using MinAttributes and resizing the Inspector window. (1363190)

  • Editor: Fixed empty reason on passed tests results xml (DSTR-63).

  • Editor: Fixed EnumMaskField showing "Mixed.." when the value was non-zero but none of the actual flags were set.

  • Editor: Fixed EnumMaskField showing the label "Mixed.." when all flags were set but the mask value was not set to the everything value. This will now also handle cases where obsolete enum values were present in the enum but not set or displayed.

  • Editor: Fixed error messages overflowing on new versions of macOS. (1312314)

  • Editor: Fixed errors being thrown from the RenderTexture editor after selecting the Tex2DArray dimension. (1287189)

  • Editor: Fixed floating window behavior for mac editor fullscreen so that windows remain on the desktop when the editor enters or exits fullscreen on a second monitor. (1321315)

  • Editor: Fixed for Scroll bars scrolling up and down when holding down the left mouse button on the left edge of the scroll bar area. (1347294)

  • Editor: Fixed game view maximizing instead of tab being switched when clicking on a tab docked in the same window as the Game View window while in playmode in the Linux Editor. (1350901)

  • Editor: Fixed GameObjectChangeTracker initialization issue causing it to trigger assertion failure errors. (1376716)

  • Editor: Fixed glitching when resizing editor windows with a popup open in the Windows editor. (1333410)

  • Editor: Fixed GUIClip errors are shown after deleting all objects from multiple loaded Scenes in the Hierarchy. (1363623)

  • Editor: Fixed handling of special hotkey characters in the Open Recent Scene sub-menu. (1364651)

  • Editor: Fixed incorrect OnApplicationPause pauseStatus after losing focus on macOS. (1344918)

  • Editor: Fixed incorrect primitive counts for meshes with multiple sub meshes in the LOD Inspector. (1349756)

  • Editor: Fixed issue when . suffix was applied to BuildTargets without extension.

  • Editor: Fixed issue where Console Log is selected but no info is shown when selecting a log, entering and exiting Play Mode. (1341773)

  • Editor: Fixed Linux Editor not reporting scroll values with new input system. (1354498)

  • Editor: Fixed Mac Editor crash that happened in multi-scene builds that were using BuildOptions.DetailedBuildReport.

  • Editor: Fixed missing labels for properties. (1332116)

  • Editor: Fixed modal progress window stuck on top of other applications on macOS. (1358626)

  • Editor: Fixed OpenGL context error messages when entering or exiting play mode. (1338849)

  • Editor: Fixed PackageManager memory leak when continuously opening the window. (1362559)

  • Editor: Fixed Project Browser ping effect is misaligned in grid view. (1367601)

  • Editor: Fixed PropertyField methods not including ReorderableList children by default. (1336112)

  • Editor: Fixed Repeat and Retry attribute for UnityTest in PlayMode (DSTR-237).

  • Editor: Fixed repeat functionality for native test runner(DSTP-668).

  • Editor: Fixed scene template instantiate when no cloneable dependency. (1354371)

  • Editor: Fixed so that dialogs displayed with EditorUtility.DisplayDialog open in front of other windows in the macOS Editor. (1350447)

  • Editor: Fixed the issue when an older user layout was loaded in the Editor and resulted in InvalidCastException. (1347313)

  • Editor: Fixed the platform string. A proper platform string is now returned for server platforms (windows, linux and OSX). (1360107)

  • Editor: Fixed tooltips staying open in the macOS editor when space changes or a window is minimized. Also fixes "ghost" tooltips in dual monitor set-up with multiple spaces. (1295787)

  • Editor: Fixed touchcount not resetting when exit playmode with a finger down. (1258785)

  • Editor: Fixed Transform Component update with HideFlags.DontSave objects. (1091293)

  • Editor: Fixed unicode input in Windows Editor modal windows so that non-Latin characters can be entered. (1297206)

  • Editor: Fixed Unity Package Manager diagnostic tool failing to run when started via the launch script.

  • Editor: Inspector correctly refreshes after adding the CanEditMultipleObjects attibute to an inspector. (1348788)

  • Editor: Inspector does not show prefab overrides anymore if the prefab asset is missing. (1369171)

  • Editor: Installing Linux mono and IL2CPP support on mac will no longer keep only the most recently installed of the two. (1331946)

  • Editor: New parent is now placed properly if default parent is set. (1324389)

  • Editor: On macOS, fixed an issue where clicking on the game view in play mode would cause unexpected mouse delta data. (1343436)

  • Editor: Prefab instances no longer lose their modifications after a scene template instantiation.

  • Editor: Prevent context menus near the edge of the screen from popping far away from the context-click on macOS. (1339181)

  • Editor: Prevented missing segments in the Bundle Identifier for Apple platforms by replacing invalid characters with hyphens (similar to Xcode's behaviour). (1352216)

  • Editor: Properly restore Settings Window splitter position when domain reload happens. (1359479)

  • Editor: Reduced the autocomplete popup width and trimmed the search item label to support long search terms. (1348672)

  • Editor: Reduced time processing mesh static batches when loading scenes additively. (1143037)

  • Editor: Shader search window will now display results based on whether the search string matches any part of the full Shader path. (1334043)

  • Editor: Unified the il2cpp default order for managed stripping levels in the Player Settings drop-down menu to the one of Mono (Minimal > Low > Medium > High).

  • Editor: Updating EditorScript behavior in SceneView based on Inspector visibility. (1340534)

  • Editor: Values of UnityEngine.Device.Screen.width/height are now consistent when using Device Simulator and don't change during different events. (1335981)

  • GI: Avoid falling back to CPU Lightmapper in scenes with only black direct lights. (1356606)

  • GI: Baking with progressive updates ON or OFF with the GPULM always gives the same result. (1352923)

  • GI: Black light probes after duplicating baked geometry during the bake with CPU Lightmapper. (1332156)

  • GI: Exposed API for environmentMIS property in LightingSettings. (1338804)

  • GI: Fixed a small offset in GPULM light cookie textures. (1333945)

  • GI: Fixed an issue where it was possible to set the value of maxBounces to less than that of minBounces when setting these values via the API. (1350279)

  • GI: Fixed an issue where setting baked light probe coefficients to an empty array causes a crash. (1342068)

  • GI: Fixed an issue where switching a texture importer to Lightmap type would change the appearance of the texture preview when in Linear color space. (1352673)

  • GI: Fixed bug where lighting information on renderers would occasionally be scrambled or lost when saving a scene. (1359018)

  • GI: Fixed case where the Enlighten Realtime GI charting visualization would not work. (1353283)

  • GI: Fixed crash when baking 4K lightmap with maximum AA setting. (1318800)

  • GI: Fixed denoising issues with OIDN and OptiX denoisers on GPULM when using different values for direct lighting sample count and indirect lighting sample count. (1337396)

  • GI: Fixed issue where error messages from baking cannot be cleared when clearing lighting from the lighting panel. (1323367)

  • GI: Fixed issue where lightmaps would be lost when loading a scene additively when the main scene uses realtime GI and is baked with auto mode. (1346566)

  • GI: Fixed issue with GPU Lightmapper falling back to CPU Lightmapper upon a rebake. (1356714)

  • GI: Fixed issue with the Lightmap Exposure value getting lost when entering and exiting Playmode. (1362687)

  • GI: Fixed light reset, remove any cookie that might be attached to the light. (1335363)

  • GI: Fixed NullReferenceException when viewing the reflection probe inspector while a custom editor for Cubemap exists. (1341400)

  • GI: Fixed realtime GI assertion errors from terrain lighting caused by mesh in scene with broken UV2s. (1348485)

  • GI: Fixed regression where the GPU Lightmapper hangs when exporting training data in a scene with no active lights. (1350077)

  • GI: Fixed unexpected fallbacks from the GPULM to the CPULM when changing filtering settings during a bake. (1364204)

  • GI: GI: Fixed issues with overlapping lights using shadowmask and wide spot angles. (1367864)

  • GI: Normalized normals in the meshes is now passed to the progressive lightmappers. (1356670)

  • Graphics: Added missing GraphicsBuffer versions of DrawProceduralIndirect script APIs. (1372936)

  • Graphics: Added rendering layer support to instanced terrain details. (1334605)

  • Graphics: Attempting to draw with disposed argument buffer with DrawProceduralNow functions now issues an error to the log instead of a crash. (1356448)

  • Graphics: Crunch compression properly handles uncompressed formats (even if not 32-bit RGBA) without flipping color channels or getting data corruption. (1340715)

  • Graphics: EditorUtility.Compress to crunch fails without crashing when providing invalid texture sizes. (1331258)

  • Graphics: Enabled Depth Sharing in Vulkan.

  • Graphics: Enabled support for dynamic resolution when using Vulkan on Windows and Linux. (1337161)

  • Graphics: Encoding R8, R16, RFloat and RHalf to EXR now encodes to a grayscale image. (1343287)

  • Graphics: Fixed 16bpc to 8bpc quantizing bug in the texture importer for type Sprite. (1303552)

  • Graphics: Fixed a case where resource fence was decreased instead of increased. (1359177)

  • Graphics: Fixed a crash on Vulkan/Metal when trying to preview non-Float or non-UNorm format RenderTextures. (1332920)

  • Graphics: Fixed a critical issue on android devices & lens flares. Accidentally creating a 16 bit texture was causing gpus not supporting them to fail.

  • Graphics: Fixed a large, visible stretch ratio in a LensFlare Image thumbnail.

  • Graphics: Fixed alignment in Volume Components.

  • Graphics: Fixed an error message logged by RenderTexture assets suggesting an incorrect/confusing fallback format when attempting to use an incompatible color format while "Enable Compatible Format" was turned off. Additionally, the RenderTexture.graphicsFormat getter no longer logs errors/warnings. (1353831)

  • Graphics: Fixed an incorrect preprocessor define causing ImageConversion.EncodeArrayToTGA (and overloads) to always fail. (1340467)

  • Graphics: Fixed an issue where preview objects were being drawn in an unexpected layer. They are now drawn using layer 0 (Default) instead of layer 1 (TransparentFX). (1361557)

  • Graphics: Fixed an issue where Texture.CreateExternalTexture was not detecting the native texture format on DirectX12. (1343696)

  • Graphics: Fixed an issue where Texture2D.UpdateExternalTexture did not work on vulkan. (1355632)

  • Graphics: Fixed an issue where TexturesD3D11Base::RegisterNativeTexture ignored format from UnityEngine.Cubemap.CreateExternalTexture when creating the SRV. (1281016)

  • Graphics: Fixed artifacts when calling ReflectionProbe.BlendCubemap(). (1360030)

  • Graphics: Fixed black pixel issue in AMD FidelityFX RCAS implementation.

  • Graphics: Fixed black RenderTarget/CustomRenderTarget thumbnails when changing Color/Depth formats. (1340733)

  • Graphics: Fixed copying between ARGB regular texture and RT on Vulkan. (1371407)

  • Graphics: Fixed corrupt mipmap calculations during RG32 and RGB48 texture importing. (1340126)

  • Graphics: Fixed crash when creating a RenderTexture with dimensions exceeding the capabilities of the current graphics device. (1313675)

  • Graphics: Fixed cropped thumbnail for Image with non-uniform scale and rotation.

  • Graphics: Fixed decompressing BC4 and BC5 to RGBA initializing alpha to 0 instead of 1, for example, when using GetPixels(). (1341470)

  • Graphics: Fixed failing CopyTexture in Editor when build target is a mobile platform and the source texture is a normal map or lightmap. (1365807)

  • Graphics: Fixed GLSL shader compilation error on some OpenGL drivers when using SV_RenderTargetArrayIndex with tessellation shaders. (1261150)

  • Graphics: Fixed high CPU/GPU utilization when occlusion window is open. (1341977)

  • Graphics: Fixed high memory usage in Vulkan backend when using many different textures per texture property of a shader. (1372610)

  • Graphics: Fixed IES Importer related to new API on core.

  • Graphics: Fixed incorrect rendering result when HDR rendering support is disabled in GraphicsSettings but HDR output is enabled in PlayerSettings. (1363703)

  • Graphics: Fixed incorrect rendering when having object with negative scale. (1280030)

  • Graphics: Fixed issue with resolution change when using renderFrameInterval. (1355972)

  • Graphics: Fixed leaving uncleared screen after changing aspect ratio. (1367899)

  • Graphics: Fixed leftover memory when switching scenes when using Vulkan. (1293458)

  • Graphics: Fixed Lens Flare 'radialScreenAttenuationCurve invisible'.

  • Graphics: Fixed Lens Flare rotation for Curve Distribution.

  • Graphics: Fixed Lens Flare Thumbnails.

  • Graphics: Fixed library function SurfaceGradientFromTriplanarProjection to match the mapping convention used in SampleUVMappingNormalInternal.hlsl and fix its description.

  • Graphics: Fixed LightAnchor too much error message, became a HelpBox on the Inspector.

  • Graphics: Fixed Mac Metal player so red edges no longer appear when dragging resizable windows. (1298578)

  • Graphics: Fixed memory leak when changing SRP pipeline settings, and having the player in pause mode.

  • Graphics: Fixed memory leak when using Vulkan GraphicsJobs. (1333454)

  • Graphics: Fixed Mesh.AddBlendShapeFrame not properly updating mesh layout to be compatible with GPU blend shapes. (1312251)

  • Graphics: Fixed overlay camera stacking is not working on MacOS when using OpenGLCore with MSAA. (1250331)

  • Graphics: Fixed possible out-of-memory when minimizing a Player that uses Vulkan on Windows. (1372535)

  • Graphics: Fixed potential for LineRenderer.BakeMesh and TrailRenderer.BakeMesh to fail with invalid AABB error messages. (1349946)

  • Graphics: Fixed ProBuilder mesh's texture disappearing after enabling Path Tracing. This happened when the vertex color channel was not set. (1348821)

  • Graphics: Fixed R8_UInt incorrectly reporting support for the StencilSampling FormatUsage on Metal & Switch.

  • Graphics: Fixed realtime GI when using OpenGL. (1339133)

  • Graphics: Fixed RenderTexture with randomWrite (UAV) that has dynamic resolution enabled with Vulkan. (1366269)

  • Graphics: Fixed reported out-of-memory error on Scarlett devices when trying to create 96bpp textures.

  • Graphics: Fixed scene being made dirty when creating a new RenderTexture asset. (1331120)

  • Graphics: Fixed small inconsistencies between the various ImageConvertion.EncodeArrayToEXR (and overload) functions. (1340476)

  • Graphics: Fixed SRP batcher initialization when modifiying a Shader Graph with multiple SRP as a targets. (1307728)

  • Graphics: Fixed texture size calculation for PVRTC formats. (1351248)

  • Graphics: Fixed Undo from script refreshing thumbnail.

  • Graphics: Fixed use of invalid swapchain handle with AMD GPUs on Windows. (1372538)

  • Graphics: Fixed Volume Gizmo size when rescaling parent GameObject.

  • Graphics: Fixed Vulkan validation error when creating a 3D RenderTexture with mip maps. (1367999)

  • Graphics: Fixed Vulkan validation error when using dynamic resolution with Vulkan on some drivers. (1367535)

  • Graphics: Fixed Vulkan validation error when using texelFetch with images that don't support linear filtering. (1367541)

  • Graphics: GrabIntoRenderTexture uses invalid viewport with UTR on D3D11 when formats not compatible. (1325579)

  • Graphics: Graphics.RenderMeshPrimitives now works with reflection probes. (1335208)

  • Graphics: Help boxes with fix buttons do not crop the label.

  • Graphics: LODGroup.lastLODBillboard is now exposed to C# API. (1325954)

  • Graphics: Mesh.SetVertexBufferParams prints a warning if input mesh layout has skinning data but is not compatible with Unity in how vertex streams are laid out. (1320869)

  • Graphics: Metal editor on OSX now uses CVDisplayLink to time frame presents; this fixes the unstable frame rate on some Macs in Play Mode. (1297470)

  • Graphics: Methods with DrawGizmo appear can now be disabled by the AnnotationManager. (1354816)

  • Graphics: Mipchains with external Texture3D no longer cause a crash in Vulkan. (1344019)

  • Graphics: Removed URP and HDRP templates. They are now dynamic templates.

  • Graphics: Reset asset now works on RenderTexture and CustomRenderTexture assets. (1285064)

  • Graphics: StoreAndResolve actions are now overridden by Resolve actions if needed on Metal.

  • Graphics: SUCCEEDED(hr) error is thrown when the project's Shadows Filtering Quality is set to High or Very High. (1340115)

  • Graphics: Unity Editor does not crash when PreviewRenderUtility.BeginPreview() is not properly followed by EndPreview(). (1338040)

  • Graphics: Unwrapping.GenerateSecondaryUVSet now returns a bool value indicating success or failure. (1289982)

  • Graphics: VFX Graph: Use main camera fallback if any expression requires the main camera, not only camera buffers. (1367413)

  • Graphics: Virtual Texturing fallback texture sampling code correctly honors the enableGlobalMipBias when virtual texturing is disabled.

  • Graphics: Vulkan no longer uses a secondary command buffer for a single clear call. We also no longer attempt to execute empty command buffers. (1333723)

  • Graphics: When adding Overrides to the Volume Profile, only show Volume Components from the current Pipeline.

  • Graphics: Workaround for immediate vertices getting split up. (1353549)

  • Graphics: [DX12] Fixed a crash when TexturesD3D12::RegisterNativeTexture was called with resource that has *_TYPELESS format. (1343602)

  • Graphics: [FrameDebugger] Fix incorrect ColorMask shown. (1360825)

  • Graphics: [Vulkan] Fixed an issue where the texture memory in Memory Profiler Module was not updated when profiling a Vulkan build. (1320962)

  • HDRP: Added support for negative wind speed parameter.

  • HDRP: Added Undo Support for HDRP Global Settings asset assignation.

  • HDRP: Fixed a compilation issue for AxF carpaints on Vulkan.

  • HDRP: Fixed a divide-by-zero warning for anisotropic shaders (Fabric, Lit).

  • HDRP: Fixed a lack of syncronization between the camera and the planar camera for volumetric cloud animation data.

  • HDRP: Fixed a memory leak related to not disposing of the RTAS at the end HDRP's lifecycle.

  • HDRP: Fixed a null ref exception when adding a new environment to the Look Dev library.

  • HDRP: Fixed a null ref exception when no opaque objects are rendered.

  • HDRP: Fixed a nullref when binding a RTHandle allocated from a RenderTextureIdentifier with CoreUtils.SetRenderTarget.

  • HDRP: Fixed a warning to Rendering Debugger Runtime UI when debug shaders are stripped.

  • HDRP: Fixed a warning when enabling tile/cluster debug.

  • HDRP: Fixed access to main directional light from script.

  • HDRP: Fixed Additional Velocity for Alembic not taking correctly into account vertex animation.

  • HDRP: Fixed ambient occlusion strenght incorrectly using GTAOMultiBounce.

  • HDRP: Fixed an incompatibility between MSAA and Volumetric Clouds.

  • HDRP: Fixed an inconsistency between perf mode and quality mode for material simplification in RTGI.

  • HDRP: Fixed an inconsistency between perf mode and quality mode for sky lighting.

  • HDRP: Fixed an issue that made camera motion vectors unavailable in custom passes.

  • HDRP: Fixed an issue that made Custom Pass buffers inaccessible in ShaderGraph.

  • HDRP: Fixed an issue where disabled reflection probes were still sent into the the ray tracing light cluster.

  • HDRP: Fixed an issue with reflection probe normalization via APV when no probes are in scene.

  • HDRP: Fixed an issue with resolution dependence for physically based depth of field.

  • HDRP: Fixed an issue with surface gradient based normal blending for decals (volume gradients weren't converted to SG before resolving in some cases).

  • HDRP: Fixed an issue with TAA causing objects not to render at extremely high far flip plane values.

  • HDRP: Fixed artifacts in volumetric cloud shadows.

  • HDRP: Fixed assert failure when enabling the probe volume system for the first time.

  • HDRP: Fixed bad feedback loop occuring when auto exposure adaptation time was too small.

  • HDRP: Fixed cases in which object and camera motion vectors would cancel out, but didn't.

  • HDRP: Fixed conflicting runtime debug menu command with an option to disable runtime debug window hotkey.

  • HDRP: Fixed contact shadow debug views not displaying correctly upon resizing of view.

  • HDRP: Fixed CPU performance of decal projectors, by a factor of %100 (walltime) on HDRP PS4, by burstifying decal projectors CPU processing.

  • HDRP: Fixed CPU performance on DLSS, avoiding to recreate state whenever a target can fall into the safe min/max resolution specified by the system.

  • HDRP: Fixed crash on SubSurfaceScattering Editor when the selected pipeline is not HDRP.

  • HDRP: Fixed custom pass volume not executed in scene view because of the volume culling mask.

  • HDRP: Fixed custom pass workflow for single camera effects.

  • HDRP: Fixed custom post process name not displayed correctly in GPU markers.

  • HDRP: Fixed custom post process template not working with Blit method.

  • HDRP: Fixed CustomPassUtils.Copy function not working on depth buffers.

  • HDRP: Fixed diffusion profile being reset to default on SpeedTree8 materials with subsurface scattering enabled during import.

  • HDRP: Fixed diffusion profile displayed in the inspector.

  • HDRP: Fixed disabled menu item for volume additional properties.

  • HDRP: Fixed double camera preview.

  • HDRP: Fixed edge bleeding when rendering volumetric clouds.

  • HDRP: Fixed EmissiveLighting Debug Light mode not managing correctly emissive for unlit.

  • HDRP: Fixed enabling a lensflare in playmode.

  • HDRP: Fixed error when disabling opaque objects on a camera with MSAA.

  • HDRP: Fixed error with motion blur and small render targets.

  • HDRP: Fixed exposure issues with volumetric clouds on planar reflection.

  • HDRP: Fixed fabric IBL (Charlie) pre-convolution performance and accuracy (uses 1000x less samples and is closer match with the ground truth).

  • HDRP: Fixed failures on platforms that do not support ray tracing due to an engine behavior change.

  • HDRP: Fixed for allowing to change dynamic resolution upscale filter via script.

  • HDRP: Fixed for discrepancies in intensity and saturation between screen space refraction and probe refraction.

  • HDRP: Fixed for wrong cached area light initialization.

  • HDRP: Fixed gbuffer depth debug mode for materials not rendered during the prepass.

  • HDRP: Fixed ghosting issues if the exposure changed too much (RTGI).

  • HDRP: Fixed HDRP's ShaderGraphVersion migration management which was broken.

  • HDRP: Fixed impossibility to release the cursor in the template.

  • HDRP: Fixed incorrect RTHandle scale in DoF when TAA is enabled.

  • HDRP: Fixed invalid pass index 1 in DrawProcedural error.

  • HDRP: Fixed issue with a compute dispatch being with 0 threads on extremely small resolutions.

  • HDRP: Fixed issue with change in lens model (perfect or imperfect) wouldn't be taken into account unless the HDRP asset was rebuilt.

  • HDRP: Fixed issue with depth slope scale depth bias when a material uses depth offset.

  • HDRP: Fixed issue with fading in SSR applying fade factor twice, resulting in darkening of the image in the transition areas.

  • HDRP: Fixed issue with hierarchy object filtering.

  • HDRP: Fixed issue with on-demand directional shadow maps looking broken when a reflection probe is updated at the same time.

  • HDRP: Fixed issue with vertex color defaulting to 0.0 when not defined, in ray/path tracing.

  • HDRP: Fixed lens flare not rendering correctly with TAAU or DLSS.

  • HDRP: Fixed material inspector that allowed setting intensity to an infinite value.

  • HDRP: Fixed memory leak with XR combined occlusion meshes.

  • HDRP: Fixed misc TAA issue: Slightly improved TAA flickering, Reduced ringing of TAA sharpening, tweak TAA High quality central color filtering.

  • HDRP: Fixed missing API documentation for LTC area light code.

  • HDRP: Fixed missing global wind parameters in the visual environment.

  • HDRP: Fixed motion vector for custom meshes loaded from compute buffer in shader graph (like Hair).

  • HDRP: Fixed nullref when enabling fullscreen passthrough in HDRP Camera.

  • HDRP: Fixed object outline flickering with TAA.

  • HDRP: Fixed off by 1 error when calculating the depth pyramid texture size when DRS is on.

  • HDRP: Fixed override camera rendering custom pass API aspect ratio issue when rendering to a render texture.

  • HDRP: Fixed parameter ranges in HDRP Asset settings.

  • HDRP: Fixed Pixel Displacement that could be set on tessellation shader while it's not supported.

  • HDRP: Fixed possible QNANS during first frame of SSGI, caused by uninitialized first frame data.

  • HDRP: Fixed Probe volume debug exposure compensation to match the Lighting debug one.

  • HDRP: Fixed Realtime lightmap not working correctly in player with various lit shader.

  • HDRP: Fixed regression in the ambient probe intensity for volumetric clouds.

  • HDRP: Fixed regression in the clouds presets.

  • HDRP: Fixed remapping of depth pyramid debug view.

  • HDRP: Fixed remove of the Additional Camera Data when removing the Camera Component.

  • HDRP: Fixed remove of the Additional Light Data when removing the Light Component.

  • HDRP: Fixed Render Graph Debug UI not refreshing correctly in the Rendering Debugger.

  • HDRP: Fixed rendering of objects just after the TAA pass (before post process injection point).

  • HDRP: Fixed rounding issue when accessing the color buffer in the DoF shader.

  • HDRP: Fixed sceneview debug mode rendering.

  • HDRP: Fixed Shader advanced options for lit shaders.

  • HDRP: Fixed shadow sampling artifact when using the spot light shadow option 'custom spot angle'.

  • HDRP: Fixed shadowmask editable when not supported.

  • HDRP: Fixed some aliasing ussues with the volumetric clouds.

  • HDRP: Fixed some depth comparison instabilities with volumetric clouds.

  • HDRP: Fixed some of the extreme ghosting in DLSS by using a bit mask to bias the color of particles. VFX tagged as Exclude from TAA will be on this pass.

  • HDRP: Fixed sorting for mesh decals.

  • HDRP: Fixed specular anti aliasing for layeredlit shader.

  • HDRP: Fixed specular occlusion sharpness and over darkening at grazing angles.

  • HDRP: Fixed support for instanced motion vector rendering.

  • HDRP: Fixed support for light/shadow dimmers (volumetric or not) in path tracing.

  • HDRP: Fixed support of directional light coloring from physical sky in path tracing.

  • HDRP: Fixed support of Distortion with MSAA.

  • HDRP: Fixed support of multi-editing on custom pass volumes.

  • HDRP: Fixed TAA upsampling algorithm, now work properly.

  • HDRP: Fixed TAA upsampling algorithm, now work properly.

  • HDRP: Fixed tessellation displacement with planar mapping.

  • HDRP: Fixed texture fields for volume parameters accepting textures with wrong dimensions.

  • HDRP: Fixed the APV UI loosing focus when the helpbox about baking appears in the probe volume.

  • HDRP: Fixed the clouds missing in the ambient probe and in the static and dynamic sky.

  • HDRP: Fixed the emissive being overriden by ray traced sub-surface scattering.

  • HDRP: Fixed the incorrect value written to the VT feedback buffer when VT is not used.

  • HDRP: Fixed the performance of the volumetric clouds in non-local mode when large occluders are on screen.

  • HDRP: Fixed the possibility to hide custom pass from the create menu with the HideInInspector attribute.

  • HDRP: Fixed the RTAO debug view being broken.

  • HDRP: Fixed the sun leaking from behind fully opaque clouds.

  • HDRP: Fixed the volume not being assigned on some scene templates.

  • HDRP: Fixed the volumetric clouds cloud map not being centered over the world origin.

  • HDRP: Fixed the way we are handling emissive for SSGI/RTGI/Mixed and APV and remove ForceForwardEmissive code.

  • HDRP: Fixed tiled artifacts in refraction at borders between two reflection probes.

  • HDRP: Fixed undo on light anchor.

  • HDRP: Fixed Vertex Color Mode documentation for layered lit shader.

  • HDRP: Fixed VFX flag "Exclude From TAA" not working for some particle types.

  • HDRP: Fixed VfX lit particle AOV output color space.

  • HDRP: Fixed volume interpolation issue with ScalableSettingLevelParameter.

  • HDRP: Fixed Volumetric Clouds not updated when using RenderTexture as input for cloud maps.

  • HDRP: Fixed volumetric fog in planar reflections.

  • HDRP: Fixed warning "Releasing render texture that is set to be RenderTexture.active!" on pipeline disposal / hdrp live editing.

  • HDRP: Fixed white flash when camera is reset and SSR Accumulation mode is on.

  • HDRP: Fixed white flashes when history is reset due to changes on type of upsampler.

  • HDRP: Fixed wobbling/tearing-like artifacts with SSAO.

  • HDRP: Fixed wrong LUT initialization in Wireframe mode.

  • HDRP: Fixed wrong ordering in FrameSettings (Normalize Reflection Probes).

  • HDRP: HDRP Wizard can still be opened from Windows > Rendering, if the project is not using a Render Pipeline.

  • HDRP: Indentation of the HDRenderPipelineAsset inspector UI for quality.

  • HDRP: Prevent user from spamming and corrupting installation of nvidia package.

  • HDRP: Reduced the number shader variants for the volumetric clouds.

  • HDRP: Significantly improved performance of APV probe debug.

  • HDRP: The HDRP Wizard is only opened when a SRP in use is of type HDRenderPipeline.

  • HDRP: When the HDProjectSettings was being loaded on some cases the load of the ScriptableObject was calling the method Reset from the HDProjectSettings, simply rename the method to avoid an error log from the loading.

  • IL2CPP: Fixed exported Android project failure. (1373278)

  • IMGUI: Added rounding to get pixels to align better when the scale is not 1 to 1. (1309132)

  • IMGUI: Fixed an issue where FoldoutHeader group does not show error when they are nested. (1344968)

  • IMGUI: Fixed an issue where the gradient color fields gets dark in Playmode. (803349)

  • IMGUI: Fixed GameObject and Folder icons become pixelated when Quality Levels are deleted and Texture Quality is set to Eight Res. (1249745)

  • IMGUI: Fixed incorrect calculation of Handles when drawn in the Editor Window. (1338039)

  • IMGUI: Fixed Lighting window label is clipped when there is plenty space. (1342233)

  • IMGUI: Fixed memory leak when continuously calling Repaint inside OnGUI after GUI.Window. (1347653)

  • IMGUI: Fixed the Preview window does not open when Ctrl+Clicked on object field icon. (1353928)

  • IMGUI: When reordering an item in a ReorderableList, keep the expanded state of the item and its children. (1335323)

  • Input: Fixed InputSystem.QueueStateEvent throwing exceptions when called from non-main thread. (1348778)

  • Input: Fixed Windows editor and Windows player being frozen during startup when new input system is enabled and a USB device with 65535 / 0xffff usages is connected to the computer. (1373945)

  • Input System: Any unhandled exception in InputManager.OnUpdate failing latter updates with InvalidOperationException: Already have an event buffer set! Was OnUpdate() called recursively?. Instead the system will try to handle the exception and recover into a working state.

  • Input System: Fixed "Default constructor not found for type UnityEngine.InputSystem.iOS.LowLevel.iOSStepCounter" any other potential exceptions due to classes, methods, fields and properties being stripped when managed stripping setting set to medium or high. (1368761)

  • Input System: Fixed a performance issue on entering/exiting play-mode where HID device capabilities JSON could be parsed multiple times for a single device. (1362733)

  • Input System: Fixed a problem where explicitly switching to the already active control scheme and device set for PlayerInput would cancel event callbacks for no reason when the control scheme switch would have no practical effect. This fix detects and skips device unpairing and re-pairing if the switch is detected to not be a change to scheme or devices. (1342297)

  • Input System: Fixed a problem where only using runtimes that are not XR supported causes a compile error. This fix adds back in ENABLE_VR checks to prevent this issue.

  • Input System: Fixed an issue that broke the VirtualMouseInput component in the editor. (1367553)

  • Input System: Fixed an issue where InvalidOperationException is thrown if an input for an action with multiple interactions is held while disconnecting the device. (1354098)

  • Input System: Fixed an issue where resetting an action via InputAction.Reset() while being in disabled state would prevent the action from being enabled again. (1370732)

  • Input System: Fixed current being null for sensors (Accelerometer.current, others). (1371204)

  • Input System: Fixed input action for Android gamepad's right stick will be correctly invoked when only the Y-axis is changing. (1308637)

  • Input System: Generic gamepad short display button names where incorrectly mapped on Switch (A instead of B, etc).

  • Input System: Improved the user experience when creating single vs multi-touch touchscreen bindings in the Input Action Asset editor by making both options visible in the input action dropdown menu. Now it's not neccessary to be aware of the touch\*/press path binding syntax. (1357664)

  • Installer: Removed unnecessary data from templates installed by the editor installer, making Unity installs smaller by over 800MB.

  • iOS: Enabled ProMotion on ios15 and new devices (iphone13 family). (1374612)

  • iOS: Fixed a crash when the iPhone 12 family were forced to portrait upside down. (1357577)

  • iOS: Fixed crash when setting orientation in Awake under some circumstances. (1371559)

  • iOS: Fixed extra frame not being rendered on iOS when "Render Extra Frame on Pause" is enabled in iOS player settings. (1362184)

  • iOS: Fixed graphics memory not being freed on unity unload. (1348481)

  • iOS: Fixed value of Screen.safeArea retrieved during initialization of packages. (1288515)

  • iOS: Metal: fixed disabling stencil completely in case of Comparison Function being Disabled, as the "write only" is perfectly valid stencil state (case 1345523). (1345523)

  • iOS: UnityWebRequest: Fixed upload with automatic authorization. (1341009)

  • Kernel: Fixed an issue where Boot.config was not written when there was no data in the file.

  • Kernel: Registering undo operations that don't affect the scene will no longer mark the scene as dirty. (1306519)

  • License: Fixed a bug on Windows where the operating system was not detected properly
    License: Fixed a bug where duplicate configurations would not allow Licensing Client to start properly
    License: Fixed a bug where remote configuration was not getting downloaded
    License: Ensuring ULF license directory exists on MacOS and Linux
    License: Improve performance for updating local configuration on Linux.

  • License: Fixed Licensing Client signature check in the Editor.

  • Linux: Editor: Fix GLX context creation when using nvidia prime render offloading.

  • Linux: Fixed an issue where the Assets menu might be disabled after using the right-click context menu.

  • Linux: Fixed not being able to drag undocked window tabs across monitor boundaries. (1333992)

  • Linux: Fixed undocking editor windows from causing the entire main window to scroll on Linux. (1359135)

  • Linux: Fixed versioned Linux libraries are ignored by the Editor when they are imported. (1345105)

  • Linux: Like on Windows, mouse movement will now wrap around the screen edges for certain GUI elements that rely on mouse deltas (i.e. Rotate tool). (1156952)

  • Linux: Prevent crash when closing the standalone profiler on Linux. (1343811)

  • Linux: Removed Ctrl+Q as a shortcut to close the Linux editor. (1367175)

  • macOS: Fixed InputFields share composition string on macOS builds when using IME. (1345917)

  • macOS: Fixed invalid generated xcode projects when the product name has non-ascii characters. (1347730)

  • macOS: Fixed mouse delta values are generated after mouse click while the cursor is motionless. (1194673)

  • macOS: Maintain previous window position when reopening player on MacOS. (1333806)

  • Mobile: Updated the Xcode version used to build the PhysX libraries in order to fix the "Ignoring invalid debug info" warnings when archiving a Unity project in Xcode. (1233645)

  • Multiplayer: Marked uNET HLAPI as deprecated.

  • N/A (internal): Fixed build for embeddedlinnux
    Port fixes from 2020.3 for embedded linux to trunk.

  • N/A (internal): Fixed exception caused by EmbeddedLinuxPreProcessor, by only executing checks when EmbeddedLinux platform is selected
    Fixes the removal of unneeded EmbeddedLinux support files (e.g. unstripped debug symbols), to minimize the resulting archive size.

  • N/A (internal): Re-enabled ShaderImporterTest ImportShader_FromEmbeddedPackage_WithInclude_InRelativeDirectory_IsImported. (1278035)

  • N/A (internal): Test no longer rely on ordering of merging prefabs when loading a scene. (1349135)

  • Networking: Fixed crash when a dedicated server tries to load an audio clip on startup. (1354359)

  • Package: (Recorder) Do not perform the color space conversion from linear to sRGB for RenderTextures that are already sRGB.

  • Package: (Recorder) Ensure that the color space conversion from sRGB to linear is performed when required for EXR files.

  • Package: (Recorder) Fixed an exception that occurred when sending a RenderTexture to a Recorder before creating this RenderTexture.

  • Package: (Recorder) Fixed issues with the Recorder samples about synchronizing multiple recordings and resetting the Game view resolution.

  • Package: Fixed bug that causes searcher window to be offset too far when accounting for host window boundaries.

  • Package: Fixed compilation error CS0103 when imported together with Tutorial Framework 2.0.0 package.

  • Package: [Recorder] Fix vertically flipped outputs on OpenGL hardware.

  • Package: [Recorder] Perform the appropriate color space conversion for Texture Sampling sources when required.

  • Package: [Visual Scripting] Fixed an issue where uncaught exceptions were thrown in Debug builds of the Windows editor. Fixed custom units not appearing in the finder.

  • Package Manager: Added a limit to the description for Asset store packages in the editor. (1346719)

  • Package Manager: Added info box informing users that an Asset is hidden when viewing it in My Assets.

  • Package Manager: Added Sample Descriptions to the Package Details UI.

  • Package Manager: Added tooltip on unlock icon. (1375779)

  • Package Manager: An info icon will warn users when the package version they are using is not recommended for their Unity version.

  • Package Manager: Asset Store package release details are not cleaned-up. (1354850)

  • Package Manager: Confusing package type in the inspector must be removed. (1298092)

  • Package Manager: Dependency packages are no longer missing from the Feature dependencies list. (1341060)

  • Package Manager: Dragging and dropping Assets in projects that reference the package that they are part of (i.e. most projects that are used to test packages within Unity) will now move the Assets instead of copying them.

  • Package Manager: Embedded packages are not shown as installed in the Package Manager. (1352772)

  • Package Manager: Errors are now automatically refreshed once packages are updated to fix the issue. (1342141)

  • Package Manager: Export package window does not update with new content. (1337283)

  • Package Manager: Features labeled as released should not contain pre-release packages. (1344818)

  • Package Manager: Fixed bug where having a package which can't be found shows it as a Unity Technologies package available in the Unity Registry. (1348573)

  • Package Manager: Fixed issue where package actions remain disabled if installing a package and going to play mode right after. (1341873)

  • Package Manager: Fixed issue where Package Manager GIT URL entry does not strip leading/trailing spaces. (1322420)

  • Package Manager: Fixed issue where Package Manager UI goes all black for a brief moment after an UPM resolve operation,. (1365389)

  • Package Manager: Fixed Test_Serializable_Objects_SurviveDomainReload test. (1306124)

  • Package Manager: Fixed the issue where assets don't refresh properly when user signs out and sign back in. (1376327)

  • Package Manager: Fixed the issue where copy paste keyboard shortcut does not work in the search box on My Assets tab. (1357462)

  • Package Manager: Fixed the issue where delayCall delegate's Invocation List size doubles when the Package Manager is docked and the delayCall is Invoked. (1336406)

  • Package Manager: Fixed the issue where OAuth errors are not logged in the console. (1376308)

  • Package Manager: Fixed the issue where the search bar in the Package Manager window gets out of focus frequently when user type slowly. (1348902)

  • Package Manager: Null Exception thrown when an Asset had an update available is fixed. (1357085)

  • Package Manager: Package installed checkmark hardly noticeable in Light theme. (1348248)

  • Package Manager: Package Manager window takes a while to load initially. (1350368)

  • Package Manager: Packages in error no longer disappear from list on resolve. (1343734)

  • Package Manager: Refreshed package version list when enabling pre-release packages in use or when updating package version.

  • Package Manager: Removed 'Recommended' label from packages in scoped registries. Users will now see 'Latest update' on the latest version for those packages instead.

  • Package Manager: Removed extra fetch calls after Package Manager resolve. Should fix some Package Manager unit test instabilities.

  • Package Manager: Removed update button to the Unity Registry version of a package if this package is embedded or locally installed. (1354198)

  • Package Manager: The list of Samples in Package Details is expanded by default.

  • Particles: A warning will now be shown when attempting to assign a ParticleSystem as a sub-emitter when it is not a child and is part of a Prefab hierarchy. (1306311)

  • Particles: Added sub-frame emission precision for Bursts. (1352736)

  • Particles: Fixed crashes if accessing specific properties in uninitialized Collision and Trigger modules from script.

  • Particles: Fixed cycles and frame over time to work together correctly in the Texture Sheet Animation module. (1338814)

  • Particles: Fixed errors when viewing a Force Field Preset inspector whilst entering Playmode. (1318951)

  • Particles: Fixed right-click context menu for Renderer module Inspector. (1372195)

  • Physics: Anchored prismatic limit handles in screen space to avoid them occluding small Articulation Body links.

  • Physics: Character controller will no longer snap downwards when hitting a step wall that is just outside of the step offset reach. (1256900)

  • Physics: Clamped the Articulation body drive lower and upper limits to each other. (1310004)

  • Physics: Enabled loading the baked physx meshes from disk while running in Editor (before this change an expensive bake operation was required). (1104237)

  • Physics: Fixed a crash that happened when resetting the mass properties of a disabled articulation body. (1346489)

  • Physics: Fixed a race condition which could ultimately cause random crashes inside cloth, due to data cleanup overlapping with cloth simulation. (1275123)

  • Physics: Fixed a rare crash when setting Improved Patch Friction for materials. (1355518)

  • Physics: Fixed ArticulationBody.SetJointPositions and similar setter using List.Capacity instead of List.Count to determine the element count and throwing errors because of that. (1347970)

  • Physics: Fixed capsule overlaps missing low resolution heightmaps. (1263649)

  • Physics: Fixed ClosesetPointCommand throwing an assert when executing jobs. (1377908)

  • Physics: Fixed Hinge Joint ignoring break force and break torque after using useSpring or useMotor. (1364352)

  • Physics: Fixed Hinge Joints not breaking after calling useSpring or useMotor on the Joint. (1361452)

  • Physics: Fixed invalid Collider parameters causing crashes in PhysX. (1340746)

  • Physics: Fixed Reset not resetting connected bodies in Joint Inspector.

  • Physics: Fixed undefined behaviour when calling Physics.OverlapCapsule over Terrain holes.

  • Physics: Unity will no longer crash when multiple overlapping rigidbodies are creating over 65 thousand interaction elements. (1328426)

  • Player: Fixed the player outputing "CreateDirectory '' failed: The system cannot find the path specified." error to stdout when using "-logfile" command line parameter with a relative path. (1343466)

  • Prefabs: "Prefab Import Error: Assertion failed on expression: 'm_InstanceID != InstanceID_None'" caused by dangling pointers in broken scenes. (1340955)

  • Prefabs: Catch and handle exception if creating a prefab from Asset Menu fails. (1333618)

  • Prefabs: Fixed an issue where all descendants on the Prefab Variant would get destroyed after adding the 'Rect Transform' component to the Prefab root. (1340595)

  • Prefabs: Fixed Base Prefab is referenced in Unity Event when making specific revert on Prefab Variant. (1287926)

  • Prefabs: Fixed broken scene paths in EditorBuildSettings. (1035848)

  • Prefabs: Fixed empty error logs when importing Trees. (1354333)

  • Prefabs: Fixed exception appears while Prefab Asset replaced by its child. (1055879)

  • Prefabs: Fixed missing required component causing import loop and log spamming. (1319932)

  • Prefabs: Fixed Prefab mode saving too many objects if there are missing nested prefabs. (1339328)

  • Prefabs: Fixed Rect tool is enabled for root Prefab in Context mode. Now it behaves similar to the other Transform tools. (1367665)

  • Prefabs: Fixed Revert option is not available when right-clicking on the component's 'Enable' checkmark. (1364181)

  • Prefabs: Fixed so Prefab Mode have a 'Discard Changes' option like Scenes do in the Hierarchy. (1369841)

  • Prefabs: Fixed that HideFlags are not preserved on dynamically created GameObjects from legacy Prefabs when opened in Prefab Mode. (1151418)

  • Prefabs: Fixed undo across Prefab Mode : Child GameObject turned into a prefab on completely unpacking the root prefab. (1150192)

  • Prefabs: GameObjects added to a prefab instance, which are added after the prefab's children, will remain after the prefab's children even after new children are added to the prefab. (1095995, 1127653, 1180518)

  • Prefabs: Improved performance when entering Prefab Mode in Context for large instances with many overrides. (1370904)

  • Prefabs: Make PrefabUtility.GetOriginalSourceRootWhereGameObjectIsAdded() public API. (1367291)

  • Prefabs: M_RootOrder is no longer used to determine the sibling order of non-root objects. (1271887)

  • Prefabs: Prefab errors are thrown deleting Prefab instance after making prefab variant and another instance. (1365373)

  • Prefabs: Prefab restructuring rule has been relaxed. It is now possible to add a game object to a prefab instance and position the added objects between the prefabs objects.
    Objects added to the end of the child list, will now remain at the end, even if children are added to tge prefab. (1152758)

  • Prefabs: Prevent AddComponent to replace the transform object when called in a callback fired within SetParent. (1135408)

  • Prefabs: Reverting prefab overrides results in "Dangling components have unfulfilled dependencies" error. (1156260)

  • Prefabs: The prefab overrides window now has hover effect on items in the TreeView. Also, all items that doesn't have any overrides are now rendered greyed out in order for the items that have have overrides to stand out. (1365985)

  • Profiler: Fixed an issue where Mesh cpu data was counted twice. (1339862)

  • Profiler: Fixed Asset Loading profiler module not sorting correctly. (1369190)

  • Profiler: Fixed Command line diagnostic switch configurations are not passed on to Profiler (Standalone Process) started from the Editor. (1348776)

  • Profiler: Fixed error on Metal which caused "Assertion failed on expression: 'gpuFrequency != 0'" assert in Editor. (1368520)

  • Profiler: Fixed fade for non-current samples on Timeline view. (1350111)

  • Profiler: Fixed failing ProfilerRecorder test on Android. (1320036)

  • Profiler: Fixed Frame Timing Manager GPU time stops working on Android after switching app to background. (1375843)

  • Profiler: Fixed invalid Main Thread time in Frame Timing Manager on WebGL. (1377253)

  • Profiler: Fixed invalid time reported by ProlfierRecorder for Main Thread root marker. (1337020)

  • Profiler: Fixed issue where the CPU chart tooltips could be incorrectly calculated. (1341423)

  • Profiler: Fixed Mesh buffers debug markup availability on vulkan.

  • Profiler: Fixed native plugins API create category function to return a new category. (1338385)

  • Profiler: Fixed player name label width in Player Connection dropdown to accommodate long strings. Fixed player name reported in Console window on connection to be consistent with Player Connection dropdown. Values in columns will now truncate with elipses if they are too large too fit in the column. When a player is selected the dropdown will now close to mimic the old dropdown behaviour.

  • Profiler: Fixed ProfilerRecorder GPU capture on DirectX 12 always returns zeroes. (1345021)

  • Profiler: Periodic update of counter values now display correctly in Profiler charts. (1373263)

  • Profiler: Removed Gfx Used and Reserved Memory from counters available in release players. The underlying code in memory manager which counts the value is compiled out due to performance reasons and the counter value can not be set. (1339707)

  • Profiler: The profiler will no longer disconnect when the last connected IP is clicked on a second time. (1322548)

  • Profiler: Toolbar buttons will now no longer be hidden when the profiler window is made too small while undocked. (1365575)

  • Project Browser: Added support to drag and drop package root folders onto an ObjectField. (1335319)

  • Project Browser: Fixed an issue where sort order of assets in Project Browser is different from Asset picker. (1328148)

  • Project Browser: Fixed empty folder icon in Project Browser is smaller on a 4k display. (1375981)

  • Project Browser: Fixed text alignment in Delete assets dialog. (1296099)

  • Project Browser: Project Browser slider is correctly restored when clearing the search field after selecting a favorite filter. (1348825)

  • Project Browser: Shader subassets thumbnails are not displayed. (1372478)

  • Scene Manager: Aligned scene and instantiation behavior when loading a new scene between Editor and Build. (1046181)

  • Scene Manager: Fixed an issue where -openscene command line argument didn't open scenes when using -batchmode. (1249100)

  • Scene Manager: Fixed argument exception is thrown when double-clicking on the DontDestroyOnLoad scene. (1283407)

  • Scene Manager: Fixed parenting isn't displayed in the Hierarchy after loading a specific custom layout. (1346524)

  • Scene Manager: Fixed performance regression in SetByInstanceID. (1353323)

  • Scene Manager: Fixed that loading multiple scenes additively via "Assets/Open Scene Additive" menu item loaded them in random order than as seen in the Project Window. (1323868)

  • Scene Manager: Fixed that moving a GameObject to a unloading scene on the 'sceneUnloaded' event is possible, and leaves the object without valid scene. An exception is now thrown. (923322)

  • Scene Manager: OpenScene invoked within a SceneClosed or SceneClosing callback, on the same scene that is being closed, will return error. (902638)

  • Scene Manager: Removed duplicate adjacent separators in scene paths before building player. (1250807)

  • Scene/Game View: Fixed a case where gizmo enabled state could potentially get out of sync with Inspector foldout state. (1331034)

  • Scene/Game View: Fixed deprecates current Handles.FreeMoveHandle signatures and introduces new ones that do not take a Quaternion rotation parameter. (1370210)

  • Scene/Game View: Fixed errors when exiting play mode with a tool for a non-serialized component active. (1322944)

  • Scene/Game View: Fixed extraneous EditorApplication.playModeStateChanged callbacks when setting EditorApplication.isPlaying to false in an ExitEditMode state change callback. (1348250)

  • Scene/Game View: Fixed GameView update with HideFlags.DontSave objects. (1351075)

  • Scene/Game View: Fixed gizmos not rendering in scenes that are loaded during play mode from user code. (1327723)

  • Scene/Game View: Fixed input field expanding to fit more digits and creating overflow in the snapping overlays. (1361083)

  • Scene/Game View: Fixed issue where new Scene View windows will open in default overlay layout ignoring any previous layout customization. (1336748)

  • Scene/Game View: Fixed locked Inspector causing duplicate tool buttons to appear in component tool toolbars. (1338708)

  • Scene/Game View: Fixed MonoBehaviour icons not rendering in Scene View when selected. (1293266)

  • Scene/Game View: Fixed tool gizmos clipping in cases where adjacent objects are separated by large distances on the z axis. (1353387)

  • Scene/Game View: Fixed tool settings overlay not updating contents when active tool editor does not support current container layout. (1348529)

  • Scene/Game View: Fixed Tools Overlay not respecting EditorTool.IsAvailable() value. (1373145)

  • Scene/Game View: Fixed Tools Overlay showing invalid tools for the active context. (1373147)

  • Scripting: Fixed an issue causing Editor to lock-up or crash when creating a ScriptableObject that instantiates a new ScriptableObject in OnEnable method. (1332971)

  • Scripting: Fixed an issue that caused a performance regression which was due to a race condition fix when accessing the mono wrapper of a native object. (1353355)

  • Scripting: Fixed case where Define Constraints did not work properly for precompiled assemblies. (1327988)

  • Scripting: Fixed issue where precompiled DLL with define constraints was not being included in a build when passing extra define constraints. (1330363)

  • Scripting: Fixed Plane.SetNormalAndPosition behaviour when passing a non-normalized normal vector. (1346589)

  • Scripting: Fixed Quaternion.ToAngleAxis() returning NaN for quaternion(0,0,0,-1). (1348545)

  • Scripting: Fixed race condition in TextWriterLogger which may lead to exceptions in ApiUpdater.

  • Scripting: Project generation will get updated PlayerSettings for writing csproj files. (1336737)

  • Scripting: SemVersionParser.TryParse and UnityVersionParser.TryParse don't throw first chance exceptions anymore. (1340457)

  • Scripting: When switching to UWP it doesn't add NET_STANDARD_2_0 define, it adds NET_4_6 instead. (1334636)

  • Scripting: [InitializeOnLoad] classes are now initialized in a defined order based on assembly references, such that if Assembly B depends on Assembly A, all [InitializeOnLoad] classes in Assembly A are guaranteed to be initialized prior to any [InitializeOnLoad] classes in Assembly B. (1344815)

  • Search: Fixed double click on store search results opens Package Manager instead of Asset Store. (1362492)

  • Search: Fixed fail to drag subasset from search window to ObjectField. (1374002)

  • Search: Fixed New table view columns should be based on the selected search group. (1371705)

  • Search: Fixed Out of memory crash when using the search picker to pick a large set of texture and/or sprites View on Crashes HQ. (1362804)

  • Search: Fixed possible null reference exception in Search. (1372840)

  • Search: Fixed search by type tags are not adapted for use with the Quick Search engine. (1334338)

  • Search: Fixed text in the search field of the Search window doesn't get selected after focusing the window and clicking on the field once. (1338063)

  • Serialization: Avoid out-of-memory crash when corrupt meta file contains a certain sequence of characters. (1332514)

  • Serialization: Changed the internal behavior of the SerializedProperty.propertyPath eliminating unnecessary string allocations on every call.

  • Serialization: Fixed an issue where Unity could crash when recursively calling methods that invoke serialization. (1227302)

  • Serialization: Fixed cancel case when deleting an array element with multiple objects selected. (1305941)

  • Serialization: Fixed for SerializedObject to retain individual object array content, when multiple objects selected and the last element is added or removed. (1277419)

  • Serialization: Fixed NullReferenceException is thrown when a MonoBehaviour script that was attached to a GameObject is deleted. (1355905)

  • Serialization: Fixed SerializeReference object missing in certain situation.

  • Serialization: Fixed wrong values get copied when copying long values in the Inspector. (1372674)

  • Serialization: Improved performance of GetArrayElementAtIndex.

  • Serialization: In addition to SerializeReference, class referred by value will also be considered and added to the list of classes not to be stripped when performing a Player Build / Asset Bundle Build / Addressable Build. (1296195)

  • Services: Fixed usymtool sometimes failing to process symbol files correctly. (1375841)

  • Shadergraph: Fixed a serialization bug wrt PVT property flags when using subgraphs. This fixes SRP batcher compatibility.

  • Shadergraph: Fixed a ShaderGraph issue where a material inspector could contain an extra set of render queue, GPU instancing, and double-sided GI controls.

  • Shadergraph: Fixed a warning in ShaderGraph about BuiltIn Shader Library assembly having no scripts.

  • Shadergraph: Fixed an issue where ShaderGraph 'view shader' commands were opening in individual windows, and blocking Unity from closing.

  • Shadergraph: Fixed compilation problems on preview shader when using hybrid renderer v2 and property desc override Hybrid Per Instance.

  • Shadergraph: Fixed how graph errors were displayed when variant limits were reached. (1355815)

  • Shadergraph: Fixed incorrect warning while using VFXTarget.

  • Shadergraph: Fixed loading all materials from project when saving a ShaderGraph.

  • Shadergraph: Fixed noise nodes to use a deterministic integer hash, instead of platform dependent floating point hashes. (1156544)

  • Shadergraph: Fixed ShaderGraph BuiltIn target shader GUI to allow the same render queue control available on URP with the changes for case.

  • Shadergraph: Fixed ShaderGraph HDRP master preview disappearing for a few seconds when graph is modified.

  • Shadergraph: Fixed ShaderGraph isNaN node, which was always returning false on Vulkan and Metal platforms.

  • Shadergraph: Fixed the incorrect value written to the VT feedback buffer when VT is not used.

  • Shadergraph: Fixed the sticky-note editable title text size in shader graph not matching the set font size. (1357657)

  • Shadergraph: Fixed the wrong scaling of the main preview window. (1356719)

  • Shadergraph: Improved screenspace position accuracy in the fragment shader by using VPOS. (1352662)

  • Shadergraph: Updated the ShaderGraph searcher package dependency to be in sync with the latest searcher package version i.e. 4.8.0.

  • Shaders: Bumped material property blocks array size limit from 1023 to 1048575. (1358444)

  • Shaders: Clean up old shader cache entries from the disk.

  • Shaders: Fixed an issue that caused shader cache to grow infinitely. Shader cache is now organized into per asset folders. (1339314)

  • Shaders: Fixed an issue whereby the built-in shaders zip package no longer contains a bunch of empty folders.

  • Shaders: Fixed incorrect casts in Metal shaders when a reinterpret cast was intended. (1331056)

  • Shaders: Fixed multi_compile_particles to work together with built-in lighting variants. Requires shader re-import. (1346626)

  • Shaders: Metal shaders that use 'pragma only_renderers framebufferfetch' are now correctly reported as unsupported on MacOS. Shaders that use 'pragma require framebufferfetch' are no longer reported as unsupported on platforms that support framebuffer fetch. (1288056)

  • Shaders: Updated DXC libraries to fix a regression with DXIL validation for shaders that use barycentrics and possibly other newer features. (1349629)

  • Terrain: Fixed memory leak when painting with terrain tools. (1358632)

  • Terrain: [Static Analysis] Defect 672727 in Modules/Terrain/Public/PaintContext.cs. (1367368)

  • Text: Fixed an issue where Sprite Asset sprite glyph scale was not affecting the scale of sprites in UI Toolkit. (1364241)

  • Timeline: Fixed an issue where Timeline preview would be interrupted when a scene was saved. (1360485)

  • uGUI: Added a new data unavailable message to the UI Profiler for when this is not attached to the editor. (1251139)

  • uGUI: Added a NullReferenceException when selecting a Dropdown Component override in the prefab overrides menu for the second time. (1308539)

  • uGUI: Added a switch to Canvas to allow the user to determine if the canvas should resize on manual Camera.Render calls.

  • uGUI: Changed the calculations to take in consideration images that may be smaller than their RecTransform. Fixes the raycasting on those images. (1341107)

  • uGUI: Fixed an issue to force update the Canvas RectTransform on load from disk, so that Override nested Canvas can still get a proper world transform for rendering. (1322784)

  • uGUI: Fixed issue with Editor where uGUI wouldn't be able to tell which gameview (screen) was clicked on as the mechanics for playmode dont work the same. (1315870)

  • uGUI: Fixed the canvas size not having the correct values when reopening the project. (1342677)

  • uGUI: Fixed the formula in GridLayout to make sure the constraint column/row amount is always respected. (1345471)

  • uGUI: Fixed the ScrollRect content position upon reloading a scene when either one or both of the horizontal and vertical properties are not applied. (1088655)

  • uGUI: Fixed the SliderEditor's slider handler disappearing when setting a min value greater than the value on a Slider preset. (1337860)

  • uGUI: Fixed the way the raycast 2D is calculated to take in account the Z position of the sprite. (1340417)

  • uGUI: Fixed UI Components causing GC Allocation when enabled. (1299752)

  • uGUI: Makes sure no call to the ReadPixels is made while using a crunch compression on an image. (1341100)

  • uGUI: Removed the allocation caused by the GetComponent in the layout when scrolling. (1343656)

  • uGUI: Updated the Raycast Target property at runtime even if started as disabled. (1341044)

  • UI Toolkit: Added support for using a numeric value for enum fields in uxml.
    Added support for using a flags enum in uxml (multiple flags may now be set by joining them with a comma).
    Added support for flags enum in the UI Builder for UxmlEnumAttributeDescription.
    Fixed an issue in the UI Builder where using an invalid enum value in uxml would break the attribute section of the inspector.
    Fixed an issue where the uxml importer and the UI Builder would parse an enum differently, leading to valid cases being reported as errors and invalid cases reported as working.
    Fixed an issue where the EnumField would not update the display text when setting an invalid value (the actual value would be changed, but the display text would not). (1375227)

  • UI Toolkit: Ensured that invalid uxml and uss files cannot be opened nor can be added to an existing document. (1333514)

  • UI Toolkit: Fixed 1357249: Editor freezes when decreasing the VisualElement size of a Dropdown. (1357249)

  • UI Toolkit: Fixed 3 cases of inconsistencies on binding data to UI Toolkit fields. (1353710)

  • UI Toolkit: Fixed a couple of issues with the UI of Transform in UI Builder. (1342227)

  • UI Toolkit: Fixed a few USS style settings to match IMGUI inspectors and a wrong check for property fields in inspector elements. (1320031)

  • UI Toolkit: Fixed absolute child element ignore padding of the parent. (1348644)

  • UI Toolkit: Fixed an issue causing ListView's reordering to stop working after docking its parent window to a new pane. (1345142)

  • UI Toolkit: Fixed an issue when a modal window is opened, the UI Elements property animations, as well as scheduled items, asynchronous tasks and Update() callbacks are now updated as expected. (1333331)

  • UI Toolkit: Fixed an issue where DropdownField's menu would have an offset in runtime under certain hierarchies. (1345802)

  • UI Toolkit: Fixed an issue where externally editing a UI document would open the UI Builder window. (1365403)

  • UI Toolkit: Fixed an issue where MinMaxSlider's value would be wrongly clamped when loaded from uxml.
    Fixed an issue where constructing a MinMaxSlider with valid values would throw an exception. (1368242)

  • UI Toolkit: Fixed an issue where setting the same StyleKeyword to a style property would dirty the panel. (1356202)

  • UI Toolkit: Fixed an issue where the theme style sheet icon would not be shown when creating the asset. (1365364)

  • UI Toolkit: Fixed an issue where the Open With IDE context menu was trying to open the uxml in the builder instead of opening it in the IDE. (1368373)

  • UI Toolkit: Fixed an issue with the search completion where a variable set to color name was treated as an enum variable rather than a color variable. (1359230)

  • UI Toolkit: Fixed button click happening when mouse is released from behind an element that's drawn in front of the button but within its boundaries. (1360188)

  • UI Toolkit: Fixed checker pattern background no longer visible. (1340240)

  • UI Toolkit: Fixed default.tss.asset failing to load while the UI Toolkit package is being imported. (1362005)

  • UI Toolkit: Fixed duplicate mouse enter and leave events on composite root elements during the AtTarget propagation phase. (1367771)

  • UI Toolkit: Fixed dynamic atlas not being regenerated after downloading a texture from the cache server. (1333693)

  • UI Toolkit: Fixed DynamicTransform elements disappearing when assigning a Vector2 scale factor. (1341601)

  • UI Toolkit: Fixed editor window creation menu references. Now created files can be renamed. (1347331)

  • UI Toolkit: Fixed element under pointer not updated when pointer position varies very slowly (subpixel amounts on each update). (1356041)

  • UI Toolkit: Fixed event callbacks sometimes triggered on removed elements after their panel is already set to null. (1363527)

  • UI Toolkit: Fixed exceptions being thrown when setting the value of an EnumField inside the UI Builder. (1331021)

  • UI Toolkit: Fixed failing DoubleField round-trip conversion when value is set to double.MinValue or double.MaxValue, resulting in the DoubleField text being "0". (1367534)

  • UI Toolkit: Fixed hardcoded paths in editor window creation menu. (1317521)

  • UI Toolkit: Fixed hover state not updated properly on Button when using touch-based pointer events to activate it. (1353921)

  • UI Toolkit: Fixed Image class alignment issue on non-standard DPIs. (1330817)

  • UI Toolkit: Fixed issue where the UI Builder would not suggest variables defined in a uss attached to a theme. (1369386)

  • UI Toolkit: Fixed missing Length conversions for style transitions between px and % units. (1348296)

  • UI Toolkit: Fixed null reference when an object is dragged into and object field contained in a list view. (1369139)

  • UI Toolkit: Fixed NullReferenceException thrown when calling GetWindow<>() inside ShowWindow() when called from [InitializeOnLoad] class. (1325267)

  • UI Toolkit: Fixed NullReferenceException when clicking the Settings button in the UI Builder window. (1340230)

  • UI Toolkit: Fixed object selection not working when clicking on the object in a disabled UI Toolkit ObjectField. (1355709)

  • UI Toolkit: Fixed PropertyField problem when SerializedProperty has invalid enum index set. (1360996)

  • UI Toolkit: Fixed ScrollView's scroll type persistance in the builder and elastic mode will not act like unrestricted mode in editor. (1362816)

  • UI Toolkit: Fixed setting cursor value in :hover selector does not update cursor. (1351689)

  • UI Toolkit: Fixed slow color changes on labels. (1337368)

  • UI Toolkit: Fixed Test [Instability][trunk] StyleSheetPaneTests.SelectorRenameWithEmptyStringRevertsToOriginalText (UI Builder). (1355533)

  • UI Toolkit: Fixed TextCore outline/shadow color in editor. (1341868)

  • UI Toolkit: Fixed the color and style of the title text in the UI Toolkit debugger. (1344018)

  • UI Toolkit: Fixed the EnumField's type and value incorrectly fetching data from the UXML document inside the UI Builder.
    Improved the EnumField and ObjectField type input to display an auto-complete popup inside the UI Builder.
    Fixed the value input of an EnumField to use an EnumField instead of TextField inside the UI Builder.
    Fixed the value input of an TagField to use an TagField instead of TextField inside the UI Builder.
    Fixed the value input of an LayerField to use an LayerField instead of TextField inside the UI Builder.
    Fixed the value input of an LayerMaskField to use an LayerMaskField instead of LayerMaskField inside the UI Builder. (1330804)

  • UI Toolkit: Fixed the EnumField's value from being cleared while saving a UXML document inside the UI Builder. (1330802)

  • UI Toolkit: Fixed the issue that Text Settings can not be created in a local package when right-clicking the local package folder. (1327812)

  • UI Toolkit: Fixed the issue that UI Document created in a local package appeared in the Assets folder, with incorrect default file name. (1327810)

  • UI Toolkit: Fixed the lack of feedback to users about problems with the UIDocument and PanelSettings inspectors. (1351792)

  • UI Toolkit: Fixed the UI Builder and the UI Toolkit Debugger displaying duplicates in the matching selector sections. (1347536)

  • UI Toolkit: Fixed the UI Toolkit PropertyField not tracking the underlying value properly when [SerializeReference] is used on a field. (1216937)

  • UI Toolkit: Fixed UI Toolkit Debugger picking elements for Runtime UI on Mac. (1365998)

  • UI Toolkit: Fixed UI Toolkit events not working after script recompilation during Play mode when using the EventSystem component as the source of events. (1324337)

  • UI Toolkit: Fixed UI Toolkit Live Reload errors on Editor Window after modifying uxml file and returning to Editor and the window is docked. (1329767)

  • UI Toolkit: Fixed UI Toolkit throwing InvalidOperationExceptions when Input Manager isn't accessible. (1336180)

  • UI Toolkit: Fixed uxml files not being re-imported after changes in the uxml importer. (1343398)

  • UI Toolkit: In the UI Builder, the user can no longer use the inspector on a style selector and rename the selector to an empty name (UI Builder). (1342352)

  • UI Toolkit: Make sure TextSetting's default sprite asset is cleared when changing from PlayMode to Editor. (1291771)

  • UI Toolkit: Removed duplicated internal functionality to resolve style variables. (1374879)

  • UI Toolkit: Selecting another editable TextField doesn't close SoftKeyboard. (1350228)

  • UI Toolkit: TemplateContainer has its own icon and no longer shows the custom control icon when is nested in another template (UI Builder). (1340837)

  • UI Toolkit: The IMGUIContainer control will now be available as an editor-only control from the UI Builder. (1354419)

  • UI Toolkit: UI Toolkit: Fixes the content of the transition properties dropdown being appended instead of recreated when opening the UI Builder window. (1343063)

  • UI Toolkit: Users using a culture which does not have '.' as its decimal separator can now input decimal values in the UI Builder when the field allows doing so. (1354172)

  • UI Toolkit: UXML factory types are now preserved automatically. (1336612)

  • UI Toolkit: When loading a project that contains a dialog that is embedded in the editor, the dialog's CreateGUI callback is invoked after the Awake and OnEnable callbacks. (1326173)

  • Undo System: Added warning for large actions which overflow the undo stack. (1204737)

  • Undo System: Fixed an issue where script's icon does not change back on Undo in the Project window. (1331877)

  • Undo System: Fixed undo/redo of adding objects to scriptable objects. (1294434)

  • Undo System: Improved performance when overwriting the redo stack.

  • Undo System: Redo stack is now restored upon exiting playmode. (1336257)

  • Universal Windows Platform: Fixed generated Visual Studio project when building to Universal Windows Platform with Visual Studio 2022. (1378086)

  • Universal Windows Platform: Fixed incorrect WSATestCertificate error message after moving project's folder. (1361792)

  • Universal Windows Platform: Fixed touch events causing incorrect UI behavior when using Windows touch Simulator. (1371807)

  • Universal Windows Platform: Fixed TouchScreenKeyboard.active returning true when the keyboard isn't visible. (1141591)

  • URP: Added 'Conservative Enclosing Sphere' setting to fix shadow frustum culling issue where shadows are erroneously culled in corners of cascades. (1153151)

  • URP: Added Undo support for URP Global Settings asset assignation.

  • URP: Added warning for lit shader detailed abledo, if texture is not linear. (1342011)

  • URP: Fixed an issue in where the current open scene didn't load after running the converters. (1365101)

  • URP: Fixed an issue where shadow artefacts appeared between cascades on Terrain Detail objects.

  • URP: Fixed an issue where ShadowCasters were sometimes being rendered twice in the editor while in playmode.

  • URP: Fixed an issue where Sprite type Light2Ds were missing a default sprite.

  • URP: Fixed an issue where Sprite type Light2Ds would throw an exeception if missing a sprite.

  • URP: Fixed an issue where the 2D Renderer was not rendering depth and stencil in the normal rendering pass.

  • URP: Fixed an issue where _AfterPostProcessTexture was no longer being assigned in UniversalRenderer.

  • URP: Fixed CopyDepthPass incorrectly always enqueued when deferred rendering mode was enabled when it should depends on the pipeline asset settings.

  • URP: Fixed graphical artefact when terrain height map is used with rendering layer mask for lighting.

  • URP: Fixed indentation of Emission map on material editor.

  • URP: Fixed lit detail correctly upgraded from standard shader. (1323725)

  • URP: Fixed memory leak with XR combined occlusion meshes.

  • URP: Fixed sceneview debug mode rendering.

  • URP: Fixed shaderGraph shaders to render into correct depthNormals passes when deferred rendering mode and SSAO are enabled.

  • URP: Fixed soft shadows shader variants not set to multi_compile_fragment on some shaders (gbuffer pass, speedtree shaders, WavingGrass shader).

  • URP: MotionVector fix when using Native RenderPass. (1348528)

  • Version Control: Fixed a bug where the Texture2D error would pop up after downloading a project
    Fixed a bug when context menu would sometimes disappear
    Fixed small textbox on checkin dialog when launched from context menu
    Fixed a workspace NullReferenceException bug
    Fixed notification icon not showing on Plastic window
    Fixed auto login errors not showing up for users
    Fixed unexpected error message after user switched workspace to a label.

  • Version Control: Fixed contextual menu not showing up in project view.

  • Version Control: Fixed inverted text for the force checkout option
    Fixed typing capital O in checkin comment would open the selected item
    Fixed loading indicator not centered on Plastic SCM installation window
    Fixed installing Plastic SCM would sign out user from the plugin
    Removed extra refresh button on Gluon's Incoming Changes tab
    Fixed loading indicator not centered on Plastic SCM installation window
    Fixed missing Plastic SCM window option when user is not signed in on Unity Hub
    Removed meta file warning message for the deleted Beta folder
    Fixed Plastic SCM menu missing from Project view context menu.

  • Version Control: Fixed some namespace collisions with Antlr3.

  • Version Control: Fixed SSO renew token after password change.

  • Version Control: Fixed view not switching to workspace after creating an Enterprise Gluon workspace.

  • Version Control: Renamed the CoreServices namespace so it doesn't conflict
    Fixed some situations where the history window would be blank
    Fixed missing Enterprise login link
    Fixed low resolution icons in light theme.

  • Version Control: The problem to display Checkout button for package.json files is solved. (1332659)

  • VFX Graph: Added a missing paste option in the context menu for VFX contexts. Also the paste options is now disabled when uneffective.

  • VFX Graph: Automatically offset contexts when a new node is inserted to avoid overlapping.

  • VFX Graph: Blackboard fields can now be duplicated either with a shortcut (Ctrl+D) or with a contextual menu option.

  • VFX Graph: Enabled an optimization for motion vectors, storing projected positions for vertices instead of the transform matrix.

  • VFX Graph: Exposed Parameter placement can now be moved after sanitize.

  • VFX Graph: Fixed a compilation issue when a normal is used in shadergraph for opacity with unlit output.

  • VFX Graph: Fixed a GPU hang on some initialize dispatch during dichotomy (platform specific).

  • VFX Graph: Fixed a vector truncation error in HDRP Decal template.

  • VFX Graph: Fixed an exception thrown when using WorldToLocal/LocalToWorld operators. (1335940)

  • VFX Graph: Fixed an issue in the Gradient editor, Undo will now properly refresh the gradient preview (color swatches).

  • VFX Graph: Fixed an issue where the Eye dropper in the color fields kept updating after pressing the Esc key.

  • VFX Graph: Fixed an issue where Zoom and warning icons were blurry in the "Play Controls" and "Visual Effect Model" scene overlays.

  • VFX Graph: Fixed an issue with Eye dropper in the color fields updating after pressing the Esc key.

  • VFX Graph: Fixed collision with depth buffer when using a physical camera. (1344733)

  • VFX Graph: Fixed Collision with Depth Buffer when using Orthographic camera.

  • VFX Graph: Fixed incorrect buffer type for strips.

  • VFX Graph: Fixed IsFrontFace shader graph node for VFX.

  • VFX Graph: Fixed out of sync serialization of VFX assets that could cause the asset to be dirtied for no reason.

  • VFX Graph: Fixed unexpected Spawn context execution ordering.

  • VFX Graph: Inspector group headers now have a better indentation and alignment.

  • VFX Graph: Minor : Static Analysis issue. (1336647)

  • VFX Graph: Particles Simulation doesn't behave has expected on paused effect. (1355385)

  • VFX Graph: Prevent VFX Graph compilation each time a property's min/max value is changed.

  • VFX Graph: Prevent VFX re-compilation in some cases when a value has not changed.

  • VFX Graph: Properties labels do not overlap anymore.

  • VFX Graph: Sticky notes can now be deleted through contextual manual menu.

  • VFX Graph: VFX Graph operators keep the same width when expanded or collpased so that the button does not change position.

  • VFX Graph: Visual Effect inspector input fields no longer lose focus anymore while typing (Random seed).

  • VFX Graph: When adding a new node/operator in the graph editor and using the search field, the search results are sorted in a smarter way.

  • Video: Fixed an exploit found in the libvpx. (1345217)

  • Video: Fixed an issue where VideoPlayer.width and height returned 0 instead of expected values. (1339883)

  • Video: Fixed crash when aspect ratio is too big. (1347100)

  • Video: Fixed getting buffer overflow warning when increasing playback speed on the VideoPlayer. (1325295)

  • Video: Reenabled VideoPlaybackPlayAllFramesWithLooping test case on UWP. (1171545)

  • Video: VideoPlayer throws errors when VideoClip loaded from AssetBundle nears the end. (1358843)

  • Virtual Texturing: Completed requests now won't be incorrectly canceled if the last InvalidateRegion call is made before PopRequests.

  • Visual Scripting: AOT prebuild works properly when building a project in batchmode.

  • Visual Scripting: No more il2cpp crash caused by infinite recursion when generating AotStubs.

  • Visual Scripting: No more jitter on fuzzy finder.

  • Visual Scripting: No more missing icons when the "Transition End Arrow" is on.

  • Visual Scripting: No more missing textures after switching platform.

  • Visual Scripting: Restoring the public icon set api.

  • Visual Scripting: Variable duplication working properly.

  • Visual Scripting: Welcome Screen opens the proper graph.

  • WebGL: Added workaround for audio distortion bug in Safari. (1350204)

  • WebGL: Added workarounds for various Safari Web Audio bugs playing back compressed and looping audio clips. Fixed a regression in Unity audio backend that could cause an incorrect audio volume to be set for < 1 second duration at audio playback start time. (1360344)

  • WebGL: Fixed AudioSource.loop property when using AudioSource.PlayScheduled() and AudioSource.PlayDelayed(). (1337312)

  • WebGL: Fixed clearing of user template variables when template is switched. (1328657)

  • WebGL: Fixed for URP being washed out when Size Code Optimization is used in the Build Settings. (1309878)

  • WebGL: Fixed fullscreen mode on Safari. (1347304)

  • WebGL: Fixed iOS touch events crashing UI Toolkit. (1365436)

  • WebGL: Fixed the denoising of shadowmask with the GPULM. (1361651)

  • WebGL: Implemented UnityWebRequest redirectLimit for WebGL platform. (1352501)

  • WebGL: Removed 255 character limit for audio file urls. (1327368)

  • WebGL: Removed guarding of "User-Agent" header in UnityWebRequest API. (1287962)

  • WebGL: Updated Firefox used by test runner to 78.9.0esr. (1328942)

  • Windows: Added error messaging when we cannot create an Editor Window and prevented extra background task windows from opening during import. (1257717)

  • Windows: Fixed mouse position being off-by-1 pixel when rendering at lower than native resolution in certain cases.

  • Windows: Fixed resolution resetting to native resolution on primary window when trying to move the secondary window use Display.SetParams.

  • Windows: Fixed UnityWebRequest does not respect auto proxy settings. (1309324)

  • Windows: Progress dialogs no longer get cut off if launched from a window with a different DPI setting. (1349737)

  • Windows: SystemInfo.operatingSystem now recognizes Windows 11. (1372750)

  • Windows: UnityCrashHandler.exe will no longer inherit all Windows handles from the editor/player when launched, which should eliminate some problems with it causing files to be locked unnecessarily.

  • XR: Fixed crash in AddLateLatchControllerLocation with normal non-XR rendering. (1339831)

  • XR: Fixed for XRBeginFrame event add to frame debugger even if VR isn't enabled. (1374542)

  • XR: Fixed XR plugin interface depth issue. (1376203)

  • XR: Splash screen now sends correct zNear and zFar values to XRDisplaySystem.

  • XR: Updated OpenXR package to 1.2.3.

  • XR: Updated the verified AR Foundation related packages to 4.2.0-pre.9. Please see the AR Foundation package changelog for details.

  • XR: Updated the verified AR Foundation related packages to 4.2.0. Please see the AR Foundation package changelog for details.

  • XR: Updated the verified AR Foundation related packages to 5.0.0-pre.5. Please see the AR Foundation package changelog for details.

  • XR: Updated XR Interaction Toolkit to 1.0.0-pre.6.

  • XR: Updated XR Interaction Toolkit to 2.0.0-pre.1.

  • XR: [OpenXR] Fix all cameras stop rendering when VR headset is off.

Changeset: 49120632d05b