Crash on SkinnedMeshRendererManager when interacting with a prefab generated with uncombined meshes using Synty Sidekick Character Creator
MeshKnown issueBlockerUUM-128966fixed 6000.0.65f1
Deprecated: Multiplayer Widgets are deprecated in favor of Unity Building Blocks.
PackageBreaking
com.havok.physics - "This package is no longer supported on this editor version."
Packages updatedBreaking
com.unity.multiplayer.widgets - "This package is no longer supported on this editor version."
Packages updatedBreakingcom.unity.multiplayer.widgets
Changed: Deprecated and renamed \[AccessibilityNode.selected\](https://docs.unity3d.com/ScriptReference/Accessibility.AccessibilityNode-selected.html) to AccessibilityNode.invoked.
AccessibilityBreaking
Deprecated: Deprecated Adaptive Performance Samsung Provider.
AndroidBreaking
Deprecated: Deprecated support for Android Legacy Icons and Round Icons.
AndroidBreaking
Obsoleted: Marked CreateStateMachineBehaviour as obsolete. Use CreateNewStateMachineBehaviour instead, which returns the MonoBehaviour directly and removes the need to use EditorUtility.EntityIdToObject first.
AnimationBreaking
Obsoleted: OnOpenAsset using an int as the InstanceID is now obsolete. Use OnOpenAsset using EntityId instead.
Asset ImportBreaking
Obsoleted: Marked LazyLoadReference<T>.instanceID, LazyLoadReference<T>(int instanceID), and LazyLoadReference<T>.op_Implicit(int instanceID) as obsolete. Use LazyLoadReference<T>.entityId, LazyLoadReference<T>(EntityId entityId), and LazyLoadReference<T>.op_Implicit(EntityId entityId) instead. These APIs are now based on EntityId.
Asset PipelineBreaking
Obsoleted: Changed the following obsolete APIs from warnings to build errors:
Build PipelineBreaking
Removed: Removed the following obsolete APIs which previously logged an error:
Build PipelineBreaking
Deprecated: AssetDatabase.CanOpenAssetInEditor(int) is obsolete. Use AssetDatabase.CanOpenAssetInEditor(EntityId) instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
EditorBreaking
Deprecated: Deprecated unused methods in ContentBuildInterface: CalculatePlayerDependenciesForGameManagers, CalculatePlayerSerializationHashForType, GetGlobalUsageFromActiveScene, GetPlayerObjectIdentifiersInSerializedFile, GetTypeForObject, GetTypeForObjects.
EditorBreaking
Deprecated: Deprecated ProcessService.SerializeObject(int). Use ProcessService.SerializeObject(EntityId) instead.
EditorBreaking
Deprecated: Deprecated unityObjectReferences in favor of entityIds in Drag and Drop code.
EditorBreaking
Deprecated: EditorUtility.GetDirtyCount(int) is obsolete. Use EditorUtility.GetDirtyCount(EntityId) instead.
EditorBreaking
Deprecated: EditorUtility.InstanceIDToObject(int) is obsolete. Use EditorUtility.EntityIdToObject instead.
EditorBreaking
Deprecated: EditorUtility.IsDirty(int) is obsolete. Use EditorUtility.IsDirty(EntityId) is instead.
EditorBreaking
Deprecated: GlobalObjectId.GetGlobalObjectIdSlow(int) is obsolete. Use GlobalObjectId.GetGlobalObjectIdSlow(EntityId) instead.
EditorBreaking
Deprecated: InternalEditorUtility.GetGameObjectInstanceIDFromComponent(int) is obsolete. Use GetGameObjectEntityIdFromComponent(EntityId) instead.
EditorBreaking
Deprecated: InternalEditorUtility.GetLoadedObjectFromInstanceID(int) is obsolete. Use GetLoadedObjectFromEntityId(EntityId) instead.
EditorBreaking
Deprecated: InternalEditorUtility.GetObjectFromInstanceID(int) is obsolete. Use GetObjectFromEntityId(EntityId) instead.
EditorBreaking
Deprecated: InternalEditorUtility.GetTypeWithoutLoadingObject(int) is obsolete. Use GetTypeWithoutLoadingObject(EntityId) instead.
EditorBreaking
Deprecated: AssetDatabase.Contains(int) is obsolete. Use AssetDatabase.Contains(EntityId) instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
EditorBreaking
Deprecated: AssetDatabase.GetAssetPath(int) is obsolete. Use AssetDatabase.GetAssetPath(EntityId) instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
EditorBreaking
Deprecated: AssetDatabase.InstanceIDsToGUIDs() is obsolete. Use AssetDatabase.EntityIdsToGUIDs() instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
EditorBreaking
Deprecated: AssetDatabase.IsForeignAsset(int) is obsolete. Use AssetDatabase.IsForeignAsset(EntityId) instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
EditorBreaking
Deprecated: AssetDatabase.IsMainAsset(int) is obsolete. Use AssetDatabase.IsMainAsset(EntityId) instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
EditorBreaking
Deprecated: AssetDatabase.IsNativeAsset(int) is obsolete. Use AssetDatabase.IsNativeAsset(EntityId) instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
EditorBreaking
Deprecated: AssetDatabase.IsSubAsset(int) is obsolete. Use AssetDatabase.IsSubAsset(EntityId) instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
EditorBreaking
Deprecated: AssetDatabase.OpenAsset(int) InstanceID versions are obsolete. Use the AssetDatabase.OpenAsset(EntityId) EntityId versions instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
EditorBreaking
Deprecated: AssetDatabase.TryGetGUIDAndLocalFileIdentifier(int instanceID, out string guid, out long localId) is obsolete. Use AssetDatabase.TryGetGUIDAndLocalFileIdentifier(EntityId entityId, out string guid, out long localId) instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
EditorBreaking
Obsoleted: Marked GlobalObjectIdentifiersToInstanceIDsSlow and GlobalObjectIdentifierToInstanceIDSlow as obsolete. Use GlobalObjectIdentifiersToEntityIdsSlow and GlobalObjectIdentifierToEntityIdSlow instead. These APIs are now based on EntityId.
EditorBreaking
Obsoleted: Marked Handles.DrawOutline(int[], Color, float) and Handles.DrawOutline(int[], int[], Color, Color, float) as obsolete. Use Handles.DrawOutline(EntityId[], Color, float) and Handles.DrawOutline(EntityId[], EntityId[], Color, Color, float) instead. These APIs are now based on EntityId.
EditorBreaking
Obsoleted: Marked HierarchyFrameDataView.GetItemInstanceID, HierarchyFrameDataView.GetItemMergedSamplesInstanceID, and ProfilerFrameDataIterator.instanceId as obsolete. Use HierarchyFrameDataView.GetItemEntityId, HierarchyFrameDataView.GetItemMergedSamplesEntityId, and ProfilerFrameDataIterator.entityId instead. These APIs are now based on EntityId.
EditorBreaking
Obsoleted: Marked ObjectIdentifier.ToInstanceID as obsolete. Use ObjectIdentifier.ToEntityId instead. This API is now based on EntityId.
EditorBreaking
Obsoleted: EditorCameraUtils.GetRenderersFilteringResults(ReadOnlySpan<int>, Span<bool>) is obsolete. Use GetRenderersFilteringResults(ReadOnlySpan<EntityId>, Span<bool>) which is based around EntityId instead.
EditorBreaking
Obsoleted: EditorCameraUtils.GetRenderersHiddenResultBits(ReadOnlySpan<int>, Span<ulong>) is now obsolete. Use GetRenderersHiddenResultBits(ReadOnlySpan<EntityId>, Span<ulong>) which is based around EntityId instead.
EditorBreaking
Obsoleted: EditorUtility.GetDirtyCount(int) and EditorUtility.IsDirty(int) are now obsolete. Use EditorUtility.GetDirtyCount(EntityId)and EditorUtility.IsDirty(EntityId) instead. These APIs are based around EntityId\`.
EditorBreaking
Obsoleted: expandedProjectWindowItems is now obsolete. Use expandedProjectWindowItemsV2, which is based around EntityId, instead.
EditorBreaking
Obsoleted: GetGameObjectInstanceIDFromComponent, GetTypeWithoutLoadingObject(int) and GetLoadedObjectFromInstanceID is now obsolete, use GetGameObjectEntityIdFromComponent, GetTypeWithoutLoadingObject(EntityId) and GetLoadedObjectFromEntityId respectively, which is based around EntityId instead.
EditorBreaking
Obsoleted: HandleUtility.getEntitiesForAuthoringObject is obsolete, use getEntitiesForAuthoringObjectV2 which is based around EntityId instead.
EditorBreaking
Obsoleted: HandleUtility.GetPickingIncludeExcludeList is obsolete. Use GetPickingIncludeExcludeListV2, which is based around EntityId, instead.
EditorBreaking
Obsoleted: HandleUtility.GetSelectionOutlineIncludeExcludeList is obsolete. Use GetSelectionOutlineIncludeExcludeListV2, which is based around EntityId, instead.
EditorBreaking
Obsoleted: HierarchyDropHandler is now obsolete. Use HierarchyDropHandlerV2 which is based around EntityId instead.
EditorBreaking
Obsoleted: HierarchyProperty is now obsolete. Use HierarchyIterator which is based around EntityId instead.
EditorBreaking
Obsoleted: ISceneSearchEngine is now obsolete. Use ISceneSearchEngineV2. This uses the new HierarchyIterator instead.
EditorBreaking
Obsoleted: PickingIncludeExcludeListt is obsolete. Use PickingIncludeExcludeListV2 which is based around EntityId instead.
EditorBreaking
Obsoleted: ProjectBrowserDropHandler is now obsolete. Use ProjectBrowserDropHandlerV2 instead. This uses the new HierarchyIterator.
EditorBreaking
Obsoleted: Selection.activeInstanceID is now obsolete. Use Selection.activeEntityId, which is based around EntityId, instead.
EditorBreaking
Obsoleted: Selection.Contains(int) is now obsolete. Use Selection.Contains(EntityId), which is based around EntityId, instead.
EditorBreaking
Obsoleted: Marked the Experimental.Lightmapping CustomBake API as obsolete. Use UnityEngine.LightTransport.IProbeIntegrator API to bake environment occlusion for an array of positions instead: public static void SetCustomBakeInputs(Vector4\[\] inputData, int sampleCount) public static extern void SetCustomBakeInputs(ReadOnlySpan&lt;Vector4&gt; inputData, int sampleCount) public static bool GetCustomBakeResults(Span&lt;Vector4&gt; results) public static bool GetCustomBakeResults(\[Out\] Vector4\[\] results) public static extern ReadOnlySpan&lt;Vector4&gt; GetCustomBakeResultsNoCopy().
GIBreaking
Removed: Removed the AdditionalBakedProbes API. Use UnityEngine.LightTransport.IProbeIntegrator to bake custom light probes.
GIBreaking
Deprecated: Deprecated GraphicsFormatUtility.IsPVRTCFormat().
GraphicsBreaking
Deprecated: Deprecated RenderParams.instanceID. Use RenderParams.entityId instead.
GraphicsBreaking
Deprecated: Obsolete Universal Render Pipeline's Compatibility Mode (Render Graph disabled) is now hidden behind URP_COMPATIBILITY_MODE define.
GraphicsBreaking
Obsoleted: UnityEngine.Experimental.GlobalIllumination.Cookie.cookieID is obsolete. Use UnityEngine.Experimental.GlobalIllumination.Cookie.cookieTextureEntityId instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
GraphicsBreaking
Obsoleted: UnityEngine.Experimental.GlobalIllumination.Cookie.instanceID is obsolete. Use UnityEngine.Experimental.GlobalIllumination.Cookie.entityId instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
GraphicsBreaking
Obsoleted: UnityEngine.Experimental.GlobalIllumination.DirectionalLight.instanceID is obsolete. Use UnityEngine.Experimental.GlobalIllumination.DirectionalLight.entityId instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
GraphicsBreaking
Obsoleted: UnityEngine.Experimental.GlobalIllumination.DiscLight.instanceID is obsolete. Use UnityEngine.Experimental.GlobalIllumination.DiscLight.entityId instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
GraphicsBreaking
Obsoleted: UnityEngine.Experimental.GlobalIllumination.LightDataGI.InitNoBake(int) is obsolete. Use UnityEngine.Experimental.GlobalIllumination.LightDataGI.InitNoBake(EntityId) instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
GraphicsBreaking
Obsoleted: UnityEngine.Experimental.GlobalIllumination.LightDataGI.instanceID is obsolete. Use UnityEngine.Experimental.GlobalIllumination.LightDataGI.entityId instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
GraphicsBreaking
Obsoleted: UnityEngine.Experimental.GlobalIllumination.RectangleLight.instanceID is obsolete. Use UnityEngine.Experimental.GlobalIllumination.RectangleLight.entityId instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
GraphicsBreaking
Obsoleted: UnityEngine.Experimental.GlobalIllumination.SpotLightBoxShape.instanceID is obsolete. Use UnityEngine.Experimental.GlobalIllumination.SpotLightBoxShape.entityId instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
GraphicsBreaking
Obsoleted: UnityEngine.Experimental.GlobalIllumination.SpotLightPyramidShape.instanceID is obsolete. Use UnityEngine.Experimental.GlobalIllumination.SpotLightPyramidShape.entityId instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
GraphicsBreaking
Obsoleted: Made TreeView, TreeViewItem and TreeViewState obsolete. Use TreeView<int> variant instead or TreeView<EntityId>, where applicable.
IMGUIBreaking
Deprecated: Deprecated the standalone lobby SDK. Deprecated the standalone matchmaker SDK. Deprecated the standalone multiplay SDK. Deprecated the standalone relay SDK.
PackageBreaking
Deprecated: Multiplayer Widgets are deprecated in favor of Unity Building Blocks.
PackageBreaking
Deprecated: Deprecated previous public Pack API. public static PackRequest Pack(string packageFolder, string targetFolder)
Package ManagerBreaking
Added: Unmarked Physics::RebuildBroadphaseRegions as deprecated because the multi-box pruning broad phase has been reintroduced.
Deprecated: Deprecated Physics.autoSyncTransforms. If you require manual transform synchronization between Transform component data and physics component data, use Physics.SyncTransforms method instead.
PhysicsBreaking
Deprecated: Deprecated Physics.BakeMesh(int, bool). Use Physics.BakeMesh(EntityId, bool) instead.
PhysicsBreaking
Deprecated: Deprecated Physics.BakeMesh(int, bool, MeshColliderCookingOptions). Use Physics.BakeMesh(EntityId, bool, MeshColliderCookingOptions) instead.
PhysicsBreaking
Deprecated: Deprecated RaycastHit.colliderInstanceID. Use RaycastHit.colliderEntityId instead.
PhysicsBreaking
Obsoleted: Marked ContactPair.colliderInstanceID, ContactPair.otherColliderInstanceID, ContactPairHeader.bodyInstanceID, and ContactPairHeader.otherBodyInstanceID as obsolete. Use ContactPair.colliderEntityId, ContactPair.otherColliderEntityId, ContactPairHeader.bodyEntityId, and ContactPairHeader.otherBodyEntityId instead. These APIs are now based on EntityId.
PhysicsBreaking
Deprecated: Deprecated Physics2D.autoSyncTransforms. If you require manual transform synchronization between Transform component data and physics2d component data, use Physics2D.SyncTransforms method instead.
Physics 2DBreaking
Deprecated: Deprecated FrameDataView.GetUnityObjectInfo(int, UnityObjectInfo). Use FrameDataView.GetUnityObjectInfo(EntityId, UnityObjectInfo) instead.
ProfilerBreaking
Deprecated: Deprecated FrameDataView.UnityObjectInfo.relatedGameObjectInstanceId. Use FrameDataView.UnityObjectInfo.relatedGameObjectEntityId instead.
ProfilerBreaking
Deprecated: Deprecated MoveGameObjectsToScene(NativeArray<int> instanceIDs, Scene scene). Use MoveGameObjectsToScene(NativeArray&lt;EntityId&gt; entityIds, Scene scene) instead.
Scene ManagerBreaking
Deprecated: Deprecated TransformAccessArray.Add(int). Use TransformAccessArray.Add(EntityId) instead.
ScriptingBreaking
Obsoleted: Method SortChildren(node, recurse) with a bool parameter on Hierarchy and HierarchyCommandList is now obsolete. Use SortChildren(node) or SortChildrenRecursive(node) accordingly.
ScriptingBreaking
Obsoleted: Methods SetFlags, ClearFlags and ToggleFlags with a bool parameter to indicate if the operation is recursive are now obsolete. Use the new methods SetFlagsRecursive, ClearFlagsRecursive or ToggleFlagsRecursive accordingly.
ScriptingBreaking
Obsoleted: Properties Hierarchy and HierarchyFlattened on HierarchyViewModel are now obsolete and will be removed in a future update. Remove its usage from your code.
ScriptingBreaking
Obsoleted: Property Hierarchy on HierarchyFlattened is now obsolete and will be removed in a future update. Remove its usage from your code.
ScriptingBreaking
Deprecated: Cloud Diagnostics has been deprecated as of August 13th, 2025, and is no longer a supported package. We encourage you to migrate to the new diagnostics experience, which provides more robust reports and device information.
ServicesBreaking
Deprecated: Deprecated the legacy Render Graph API AddRenderPass() and the shared texture workflow. Use AddRasterRender/Compute/UnsafePass and imported texture workflow instead.
SRP CoreBreaking
Deprecated: Removed the unused forceRelease parameter from the ImportBuffer Render Graph API to align with its resource management philosophy.
SRP CoreBreaking
Deprecated: GetKeepUnusedCameraRenderingResources(int) is obsolete. Use GetKeepUnusedCameraRenderingResources(EntityId) instead.
TerrainBreaking
Deprecated: SetKeepUnusedCameraRenderingResources(int, bool) is obsolete. Use SetKeepUnusedCameraRenderingResources(EntityId, bool) instead.
TerrainBreaking
Removed: Removed all Events helpers from the public API in UI Toolkit Test Framework. These helpers now require internal access.
UI ToolkitBreaking
Deprecated: Deprecated the Facebook Instant Games platform.
WebBreaking
X86_64 target architecture support is limited now. You can still use it, but it might be removed in the future.
AndroidBreaking
X86_64 target architecture support is limited now. You can still use it, but it might be removed in the future.
AndroidBreaking
Removed the obsolete C4DImporter.
EditorBreaking
Removed the PVRTC compressor from the Editor. Projects that used the PVRTC compressor now use ETC2.
GraphicsBreaking
The ETC legacy compressor has been removed from the Editor. Projects that were still using the ETC legacy compressor will now use the default ETC compressors.
GraphicsBreaking
Removed the overrideBuiltIns property making all builtin packages with semver version unable to be overridden.
Package ManagerBreaking
The Polybrush package has been marked as deprecated, and will no longer appear in the package manager. It can still be manually installed by adding the package by name.
Package ManagerBreaking
Improved overlay icons to align with the Unity Editor design. Added icons for Controlled and Changed items, removed the icon for Private items, and added a Contains Changes overlay for directories containing changes.
Version ControlBreaking
Removed Convert to subgraph from the contextual menu for nested VFX.
VFX GraphBreaking
Added: Added screen reader support for container views (AccessibilityRole.Container) on Android, iOS, Windows and macOS.
AccessibilityAPI changeAndroidiOSWindowsmacOS
Added: Added screen reader support for dropdown lists (AccessibilityRole.Dropdown and AccessibilityState.Expanded) on Android, Windows and macOS.
AccessibilityAPI changeAndroidWindowsmacOS
Added: Added screen reader support for scrolling with Narrator on Windows.
AccessibilityAPI changeWindows
Added: Added screen reader support for scrolling with TalkBack (Android) and VoiceOver (iOS).
AccessibilityAPI changeAndroidiOS
Added: Added screen reader support for tab buttons (AccessibilityRole.TabButton) on Android, iOS, Windows and macOS.
AccessibilityAPI changeAndroidiOSWindowsmacOS
Added: Added screen reader support for text fields (AccessibilityRole.TextField) on Android, Windows and macOS.
AccessibilityAPI changeAndroidWindowsmacOS
Added: Added the new API AssistiveSupport.screenReaderStatusOverride to allow users to enable the functionality of the screen reader support APIs in cases where \[AssistiveSupport.isScreenReaderEnabled\](https://docs.unity3d.com/Documentation/ScriptReference/Accessibility.AssistiveSupport-isScreenReaderEnabled.html) is not supported by the screen reader (for example, for Narrator, the Windows built-in screen reader).
AccessibilityAPI changeWindows
Changed: Changed the underlying type of \[AccessibilityRole\](https://docs.unity3d.com/ScriptReference/Accessibility.AccessibilityRole.html) and \[AccessibilityState\](https://docs.unity3d.com/ScriptReference/Accessibility.AccessibilityState.html) to byte.
AccessibilityAPI change
Changed: Converted the \[AccessibilityRole\](https://docs.unity3d.com/ScriptReference/Accessibility.AccessibilityRole.html) flags enum to a standard enum.
AccessibilityAPI change
Added: Added a new API to reset an Animator or AnimatorControllerPlayable to its default state, in order to simplify pooling of animated characters.
AnimationAPI change
Added: Added FindAssetGUIDs methods that return an array of GUIDs instead of strings.
Asset PipelineAPI change
Added: Added LoadAssetByGUID method that accepts a GUID as an input argument.
Asset PipelineAPI change
Changed: Several Asset Database APIs now produce a warning when used during asset importing, such as in a scripted importer or post-processor. This warning will become an exception in the next release.
Asset PipelineAPI change
Added: ProcessorInstance, GeneratorInstance, and RootOutputInstance now implement IEquatable.
AudioAPI change
Changed: Renamed Audio.IAudioGenerator.createRuntime to Audio.IAudioGenerator.createInstance.
AudioAPI change
Changed: Updated multiple API entry points to support the new audio scriptable processors feature.
AudioAPI change
Added: Added the IPreprocessBuildWithContext and IPostprocessBuildWithContext callbacks to support build processing for both AssetBundle builds and player builds. For more information, refer to the Build Pipeline documentation.
Build PipelineAPI change
BuildAssetBundleOptions.CollectDependencies
API ChangesAPI change
BuildAssetBundleOptions.CompleteAssets
API ChangesAPI change
BuildAssetBundleOptions.DeterministicAssetBundle
API ChangesAPI change
BuildOptions.ShaderLivelinkSupport
API ChangesAPI change
UnityEditor.Build.Content.ContentBuildInterface.PrepareScene (old signature)
API ChangesAPI change
UnityEditor.Build.Content.ContentBuildInterface.WriteSceneSerializedFile (three old signatures)
API ChangesAPI change
UnityEditor.Build.Content.ContentBuildInterface.WriteSerializedFile (two signatures)
API ChangesAPI change
UnityEditor.Build.Content.SceneDependencyInfo.processedScene
API ChangesAPI change
UnityEditor.Build.Content.TypeDbHelper.TryGet
API ChangesAPI change
UnityEditor.Experimental.Build.AssetBundle.BuildCompression
API ChangesAPI change
UnityEditor.Experimental.Build.AssetBundle.CompressionLevel
API ChangesAPI change
UnityEditor.Experimental.Build.AssetBundle.CompressionType
API ChangesAPI change
UnityEditor.Build.Content.BuildCompression
API ChangesAPI change
UnityEditor.Build.Content.CompressionLevel
API ChangesAPI change
UnityEditor.Build.Content.CompressionType
API ChangesAPI change
UnityEditor.BuildPipeline.BuildAssetBundle (not to be confused with BuildAssetBundles which remains)
API ChangesAPI change
UnityEditor.BuildPipeline.BuildAssetBundleExplicitAssetNames
API ChangesAPI change
UnityEditor.BuildPipeline.BuildStreamedSceneAssetBundle
API ChangesAPI change
UnityEditor.BuildPipeline.PopAssetDependencies
API ChangesAPI change
UnityEditor.BuildPipeline.PushAssetDependencies
API ChangesAPI change
Added: Added missing multiplication and division operators to Vectors.
CoreAPI changeUUM-108860
Changed: Added float dpi field to the DisplayInfo struct and added APIs to access each the displays' layout and the supported resolutions of each display.
CoreAPI change
Added: Added a built-in CreationToolGroup for grouping creation editor tools. (STO-3561)
EditorAPI change
Added: Added a new public DeeplinkHandlerAttribute that lets Editor scripts register a method to process incoming deeplinks in the Unity Editor.
EditorAPI change
Added: Added an API to define overlay groups.
EditorAPI change
Added: Added an early version of the upscaler framework behind a preprocessor define. The long term objective is to allow upscalers to be added via packages. This version is to gather early feedback.
EditorAPI change
Added: Added helper APIs for adding ScrtiptableObjects as sub-assets to a build profile.
EditorAPI change
Added: Added slider support in the Main Toolbar.
EditorAPI change
Added: Added the ability to filter out overlays from EditorWindows.
EditorAPI change
Added: Added UnityEditor.EditorDialog, which is a new and improved way of displaying dialog boxes to users. Refer to EditorDialog in the Unity scripting documentation for more detail.
EditorAPI change
Changed: Added a new flag 'VerbosityExternal' that can be passed to the ProfilerMarker() constructor to force the marker to be exposed to external profilers that do not capture all markers by default (such as the Superluminal profiler).
EditorAPI change
Changed: Provided a builder API for the Blit Pass.
EditorAPI change
Changed: Selection.instanceIDs is now obsolete. Use Selection.entityIds, which is based around EntityId, instead.
EditorAPI change
Added: Added Windowing and WindowingGated modules.
EmbeddedLinuxAPI change
Added: Added helper functions to the GraphicsStateCollections API that can be used to easily modify the collection or individual GraphicsStates, without needing to call BeginTrace().
GraphicsAPI change
Added: Added new C\# API RayTracingAccelerationStructure.AddInstancesIndirect which can use custom instance data (GraphicsBuffer) as input for adding ray tracing instances into an acceleration structure. The API accepts an array of Materials and an array of geometry configurations that can be used by the ray tracing instances using indices in these arrays.
GraphicsAPI change
Added: Added support for multi_compile, multi_compile_local and dynamic_branch pragmas in raytrace files. Added new Scripting API methods for setting shader keyword for RayTracingShader.
GraphicsAPI change
Added: Added SystemInfo.SupportsRendering to detect if the platform supports rendering and a graphics device is available.
GraphicsAPI change
Added: Added the GetShaderUserValue method to MeshRenderer and SkinnedMeshRenderer components.
GraphicsAPI change
Added: Added SystemInfo.supportsMultisampledShaderResolve to query if the current graphics API support performing MSAA resolve operations as the last sub pass of a native render pass via a shader rather than using the standard resolve pass to system memory.
GraphicsAPI change
Changed: UnityEngine.Experimental.GlobalIllumination.PointLight.instanceID is obsolete. Use UnityEngine.Experimental.GlobalIllumination.PointLight.entityId instead. EntityId is the new type for instance IDs and still implicitly casts to and from int for backwards compatibility.
GraphicsAPI change
Added: Added iPhone 17 device generation enums and screen cutouts.
iOSAPI change
Added: Added APIs to create TransformAccessArray from TransformHandle. This means you can now use TransformHandle with jobs (IJobParallelForTransform).
KernelAPI change
Added: Exposed Pack API as public. PackRequest Pack(string packageFolder, string targetFolder, string ownerOrgId)
Package ManagerAPI change
Added: ContactManifold.ManifoldPoint now has a speculative property to indicate if it's speculative and therefore hasn't interacted during the simulation step.
Physics 2DAPI change
Added: PhysicsWorld.DrawGeometry can now draw a ReadOnlySpan<> of geometry.
Physics 2DAPI change
Added: Added Unity.Collections.MemoryLabel, allowing package and user code to expose unmanaged memory allocations in the Memory Profiler.
ProfilerAPI change
Added: Added ability for EditorTools to be placed in user-defined groups in the Tools overlay.
Scene/Game ViewAPI change
Added: Added ability for EditorTools to dynamically control if their corresponding button in Tools overlays is hidden or visible.
Scene/Game ViewAPI change
Added: Added EditorToolsAttribute argument that enables tools to target persistent objects.
Scene/Game ViewAPI change
Added: Added IOverrideToolbar interface that allows overriding contents of the Tool Settings built-it toolbar.
Scene/Game ViewAPI change
Added: Added IOverrideToolbar interface that allows overriding contents of the View Options built-it toolbar.
Scene/Game ViewAPI change
Added: Added menu priority parameter for the main toolbar element attribute.
Scene/Game ViewAPI change
Added: Added new API that allows extending the built-in Scene View pivot settings with custom Pivot Mode and Pivot Rotation implementations.
Scene/Game ViewAPI change
Added: Added a new C\# API to access a GameObject's transform data, tentatively named TransformHandle. This interface mostly mirrors the familiar Transform component, but is unmanaged (and thus usable from Burst-compiled code) and is intended to someday support Entities as well as GameObjects.
ScriptingAPI change
Added: Added new method GetChildIndex on HierarchyFlattened and HierarchyViewModel classes: retrieve a node's index in its parent children list, using pre-computed data.
ScriptingAPI change
Added: Added new method GetHashCode on Hierarchy class: retrieve the hash code of a node, which can be overridden by the node's type, in its HierarchyNodeTypeHandler implementation.
ScriptingAPI change
Added: Added new method SetChildrenNeedsSorting on Hierarchy and HierarchyCommandList classes: force a node's children to be considered when executing a sort operation, which is useful when the ordering of nodes changed without setting a sort index.
ScriptingAPI change
Added: Added new method SetDirty on Hierarchy and HierarchyCommandList classes: Force an update of the hierarchy, even if no changes are pending. Useful when UI refresh is needed for example.
ScriptingAPI change
Added: Added new method SetEntityIds on DragAndDropData to allow storing Entity Ids instead of Objects.
ScriptingAPI change
Added: Added new method SortChildrenRecursive on Hierarchy and HierarchyCommandList, replaces SortChildren with a bool parameter to indicate if the operation is recursive.
ScriptingAPI change
Added: Added new methods BeginFlagsChange and EndFlagsChange on HierarchyViewModel to bundle flags change as a single operation. This is useful to avoid unnecessary hierarchy view model updates when multiple flags change operations result in no changes.
ScriptingAPI change
Added: Added new methods GetRoot and SetRoot on the HierarchyViewModel class. These methods allow you to get and set a custom root, effectively restricting the visibility to only the nodes under it, without affecting other nodes.
ScriptingAPI change
Added: Added new methods SetFlagsRecursive, ClearFlagsRecursive and ToggleFlagsRecursive on HierarchyViewModel replacing SetFlags, ClearFlags and ToggleFlags with a bool parameter to indicate if the operation is recursive.
ScriptingAPI change
Added: Added new property ChildIndex on HierarchyFlattenedNode struct: the child's index in its parent children list when the HierarchyFlattened was updated.
ScriptingAPI change
Added: Added new property entityIds on DragAndDrop to allow retrieving Entity Ids instead of Objects.
ScriptingAPI change
Added: Added new property Filtering on HierarchyViewModel indicating if the hierarchy view model is currently filtering the results, meaning a search query is currently set.
ScriptingAPI change
Added: Added new struct HierarchyViewModelFlagsChangeScope that can be used with a using statement to bundle hierarchy view model flags change.
ScriptingAPI change
Added: Added new virtual method GetNodeHashCode on HierarchyNodeTypeHandlerBase class: allows overriding the default computation of a node's unique identifier.
ScriptingAPI change
Changed: Introduced a new SceneHandle type, which replaces the use of int to store a scene handle. For instance, the Scene.handle property is now of SceneHandle type instead of int and might cause a binary compatibility issue. Other APIs still using int to represent a scene handle will gradually move to use SceneHandle in the future.
ScriptingAPI change
Added: Unity Consent: Added a new module with API to set user consent information.
ServicesAPI change
Added: Added a method in ShaderUtil to check whether the given compute shader is compatible with the given shader compilation platform.
ShadersAPI change
Added: Added a method in ShaderUtil to check whether the given shader pass is compatible with the given shader compilation platform.
ShadersAPI change
Added: Added a utility method that checks whether the given shader stage is enabled in shader stage flags (UnityEngine.Shaders.Utility. Utility.IsShaderStageEnabled).
ShadersAPI change
Added: Added a utility method that checks whether the given shader type is enabled in shader type flags (UnityEngine.Shaders.Utility. Utility.IsShaderTypeEnabled).
ShadersAPI change
Added: Added a utility method that converts shader stage to shader stage flags (UnityEngine.Shaders.Utility. ShaderStageToFlags).
ShadersAPI change
Added: Added a utility method that converts shader type to shader type flags (UnityEngine.Shaders.Utility. ShaderTypeToFlags).
ShadersAPI change
Added: Added an enum that represents combinations of shader stages (UnityEngine.Shaders.ShaderStageFlags).
ShadersAPI change
Added: Added an enum that represents combinations of shader types (UnityEngine.Shaders.ShaderTypeFlags).
ShadersAPI change
Added: Added an enum that represents shader stages (UnityEngine.Shaders.ShaderStage).
ShadersAPI change
Added: Added an enum that represents shader types (UnityEngine.Shaders.ShaderType).
ShadersAPI change
Added: Added SetRayTracingShaderPass to ComputeRenderGraphBuilder and UnsafeRenderGraphBuilder.
SRP CoreAPI change
Added: Added SetRenderAttachment, SetRenderAttachmentDepth, and SetRandomAccessAttachment to UnsafeRenderGraphBuilder.
SRP CoreAPI change
Added: Added the IPostbuildCleanupWithTestData interface, which works the same as IPostbuildCleanup but also provides a TestData object.
Test FrameworkAPI change
Added: Added the IPrebuildSetupWithTestData interface, which works the same as IPrebuildSetup but also provides a TestData object.
Test FrameworkAPI change
Added: Added the PostbuildCleanupWithTestData attribute, which works the same as PostbuildCleanup but also provides a TestData object.
Test FrameworkAPI change
Added: Added the PrebuildSetupWithTestData attribute, which works the same as PrebuildSetup but also provides a TestData object.
Test FrameworkAPI change
Added: Added the TestData record, which provides information about the current test run, including the test mode (edit mode, play mode, or player), the tests to run, and the target platform.
Test FrameworkAPI change
Added: Added the TestMode enum, which mirrors the existing enum but includes the additional values None and Player to distinguish them as test modes.
Test FrameworkAPI change
Added: Added a few selection manipulation utilities in ITextSelection.
UI ToolkitAPI change
Added: Added the supportExpressions attribute for IntegerField, LongField, FloatField, DoubleFIeld, UnsignedIntegerField, and UnsignedLongField. This attribute allows you to enable or disable expression evaluation for the field by modifying the set of permitted characters.
UI ToolkitAPI changeUUM-96460
Added: Added two new fields to UxmlElementAttribute:
UI ToolkitAPI change
Defaults to "Default" but can be set to "Visible" or "Hidden" to override the default behavior, which hides elements with namespaces starting with Unity, UnityEngine, and UnityEditor.
visibilityAPI change
Allows customization of the path where the element is displayed in the Project Library tab.
libraryPathAPI changeUUM-104888
Changed: Added FrameUpdate functionality that allows specifying a wait time, clean up API surface.
UI ToolkitAPI change
Added: Added RenderingUtils.ReAllocateHandleIfNeeded with TextureDesc overload.
Universal RPAPI change
Added: Added SwitchActiveTexturesToBackbuffer to UniversalResourceData to allow URP extensions, such as render features, to replace post-processing or the final blit.
Universal RPAPI change
Added: Changed _REFLECTION_PROBE_BLENDING and _REFLECTION_PROBE_BOX_PROJECTION to use dynamic_branch instead of multi_compile.
Universal RPAPI change
Added: Added support to Render Graph to allow passes to perform the multisampled resolve operation in the last subpass using a shader on supported platforms. Updated the URP Shader Library with macros for multisampled frame buffer attachment reads for XR textures.
URPAPI changeXR
Exceedingly long wait on InspectorWindow.Repaint when selecting a large SVG file in the Project window
SerializationKnown issueCautionUUM-120424fixed 6000.3.1f1
Re-added support for Jetbrains Rider profiling, which had been temporarily removed with a recent security fix.
Fixed "Unable to find style" warning on switching color blind mode on or off. (UUM-117113) First seen in 6000.3.0a1.
Fixed Library folder that was sometimes wrongly added to source control on a new project created from the Hub.
Version Control
Fixed the Pending changes view that was refreshed on window activation for no reason.
Version Control
This release directly addresses several high-severity security vulnerabilities, identified by Black Duck scans as CVE-2023-6349, CVE-2024-5197, and CVE-2025-5283, when applicable, through targeted code changes, without upgrading the underlying libvpx library. Due to compatibility and integration constraints, an upgrade to a newer libvpx version was not possible; instead, alternative fixes have been implemented within the current version to mitigate these specific issues.
VideoSecurity
Added the Overview feature to the Highlights Profiler module.
Profiler
Targets now built with the following security compilation flags: -fstack-protector-all -z now.
EmbeddedLinuxSecurity
Targets now built with the following security compilation flags: -fstack-protector-all -z now.
QNXSecurity
Universal Render Pipeline Adaptive Performance code paths are now dependent on the built-in Adaptive Performance module and not the com.unity.adaptiveperformance package anymore.
Fixed the Sprite Editor Toolbar module dropdown visual overlap when selecting an imported non-sprite texture in a 3D project.
Fixed "The text is cut off and doesn't fit for the "Enable Armv9 Security Features for Arm64" property". Changed "Enable Armv9 Security Features for Arm64 builds" to "Armv9 Security Features for Arm64".
Fix failed license mapping (SUS-6296)
Bug Reporter
Added a message so the macOS Editor can properly ask the user for permission to access the microphone. This fixes a bug where if the Editor was launched via './run', instead of the Unity Hub, the microphone would not work.
Fixed a race condition in the licensing client where the Editor would succeed to make the client acquire a floating license faster than it had finished loading licenses at startup, which would make it fail to pick up the new license.
Fixed floating license cleanup and concurrent license update in LicensingClient 1.17.1.
Editor
Fixed a potential exploit in the Windows Editor Installer.
InstallerSecurityWindows
Re-added support for Jetbrains Rider profiling, which had been temporarily removed with a recent security fix.
Updated our copy of MbedTLS to version 3.6.4 to address some security vulnerabilities.
NetworkingSecurityUUM-114079fixed 6000.2.2f1
Fixed Highlights module and/or frame range selection resetting on domain reload.
Profiler
Fixed Library folder that was sometimes wrongly added to source control on a new project created from the Hub.
Version Control
Fixed the Pending changes view that was refreshed on window activation for no reason.
Version Control
This release directly addresses several high-severity security vulnerabilities, identified by Black Duck scans as CVE-2023-6349, CVE-2024-5197, and CVE-2025-5283, when applicable, through targeted code changes, without upgrading the underlying libvpx library. Due to compatibility and integration constraints, an upgrade to a newer libvpx version was not possible; instead, alternative fixes have been implemented within the current version to mitigate these specific issues.
VideoSecurity
Added Mesh Renderer and Skinned Mesh Renderer 2D workflow support for 2D URP.
2DFeature
Extended the platform support of the screen reader support APIs to Windows and macOS, allowing Unity desktop applications to be made compatible with Narrator (Windows) and VoiceOver (macOS).
AccessibilityFeatureWindowsmacOS
Added app category support to allow users to retain Android 15 orientation and rotation behavior when running on Android 16.
AndroidFeature
Added AppCategory analytics to support the collection of app category data.
AndroidFeature
Added HTTP/2 support for UnityWebRequest on Android.
AndroidFeature
In the global audio project settings, if the "Audio Foundation" property is set to "Enhanced", a new platform audio foundation is used on Windows and macOS. More platforms will be supported in future versions of Unity. In enhanced mode, the Unity audio engine will run at the channel layout and sampling rate selected via the new "Output Channel Layout" and "Output Sampling Rate" properties. The enhanced audio foundation executes the format conversions necessary to translate from the engine's format to the audio device's native format. This avoids the current issue where the audio engine may reset and lose all state when the default audio output device changes. In addition, in enhanced mode, all expensive platform audio operations, like enumerating, starting, and stopping devices, are all executed off the main thread, so there should be no more main thread hitches.
AudioFeatureWindowsmacOS
Set up Bee to better use with either MSVC dynamic or static CRT.
Build SystemFeature
Added new functionality to the Editor dialog box API that will allow for icon choices, and opt out choices. Refer to EditorDialog in the Unity Documentation for more details.
EditorFeature
Added performance indicators to the Windows Editor launch window. These indicators display when the Editor is built from source or the Developer Mode Editor preference is enabled.
EditorFeatureWindows
Added SceneView debug labels and color coded bounds for MeshRenderer and SkinnedMeshRenderer to display active Mesh LOD for meshes with LODs.
EditorFeature
Added the ability to dock overlays as full-height dynamic panels in the Scene view.
EditorFeature
Made the Editor Launch Screen draggable on Linux.
EditorFeatureLinux
Moved Adaptive Performance 6 from a package to the Unity core. Bundled provider packages with the Unity Editor.
EditorFeature
The main Toolbar of the Editor is now extensible and customizable.
EditorFeature
Updated the WebGLSupport artifact for the Mac Editor on Arm64 to be natively built on a Mac Arm64 computer.
EditorFeature
Enabled HTTP/2 functionality and optimal extra HTTP/2 settings on EmbeddedLinux.
EmbeddedLinuxFeature
Engine Diagnostics:
Engine DiagnosticsFeature
Added options in the Project Settings and Build Profile windows to enable or disable engine diagnostics data collection. This feature is enabled by default in new Unity 6.2 projects. Scripting:
FeaturesFeatureWindows
Added ConsentState.AnalyticsIntent and ConsentState.AdsIntent APIs. Use these APIs to define the purposes of data processing.
FeaturesFeature
Added a new lightmap packing algorithm based on the third-party xAtlas library. This packer is now the default for new scenes, while older scenes will automatically continue to use the previous packer.
GIFeature
Published the Unified Raytracing API, which provides an API for creating cross-platform ray tracing shaders.
GIFeature
Added Split Graphics Jobs support to Metal.
GraphicsFeature
Added support for hit shaders in .raytrace files. The GPU executes the hit shaders by default if the expected Shader Pass (specified using RayTracingShader.SetShaderPass) is not found in .shader files used by geometries in the acceleration structure.
GraphicsFeature
Added MeshRenderer and SkinnedMeshRenderer shader user value API to set a per-renderer unsigned int value. This value can be retrieved in shader code to modify the shader value per object, using a single material.
GraphicsFeature
Backport metadata reductions: reduce size of string literal data and type definition data by computing the length of each string during deserialization, removing Il2CppTypeDefinition::elementTypeIndex, and encoding the elementType in Il2CppTypeDefinition::parentIndex.
IL2CPPFeature
Enabled HTTP/2 functionality and optimal extra HTTP/2 settings on Kepler.
KeplerFeature
Enabled the Package Manager to check entitlements for Asset Store Unity Package Manager (UPM) packages and regular packages.
LicenseFeature
Enabled HTTP/2 functionality and optimal extra HTTP/2 settings on Linux.
LinuxFeature
Enabled HTTP/2 functionality and optimal extra HTTP/2 settings on the Mac platform.
macOSFeature
Enabled users to toggle a profiler window panel within clone editors for Multiplayer Play Mode.
MultiplayerFeature
Add the Create UPM Package... option to the Project Browser and Assets contextual menus.
Package ManagerFeature
Added a Leave a Review link for packages on the Asset Store in the Package Manager.
Package ManagerFeature
Added a clear warning message for users when a package has an invalid signature.
Package ManagerFeature
Added a clear warning when a package has no signature.
Package ManagerFeature
Added a warning notification to the Package Manager button in the Editor toolbar for users who have packages with errors or warnings in their project.
Package ManagerFeature
Added an "Export as UPM package" option to the context menu, and changed current export option to "Export as Asset Package".
Package ManagerFeature
Added an "Export Package" button in the Package Manager that enables users to export a package locally as a tarball to their file system.
Package ManagerFeature
Added Errors and Warnings section in the sidebar.
Package ManagerFeature
Added messages in the Editor to improve visibility into package signature validation as part of ongoing efforts to enhance safety and standardization.
Package ManagerFeature
Added messages in the Package Manager window to improve visibility of package signature validation.
Package ManagerFeature
Added support for package signing using the Unity Command Line Interface (CLI) in batch mode.
Package ManagerFeature
Added the pinnedPackages optional property to the project manifest. This feature forces specified direct dependencies to use their exact manifest versions during package resolution and project update.
Package ManagerFeature
Display package errors in a warning pop-up when opening a project.
Package ManagerFeature
Users can now easily create packages from the Package Manager window.
Package ManagerFeature
Added conversion operators for LowLevelPhysics2D.PhysicsJoint.
Physics 2DFeature
Added extra safety when locking physics worlds so that using invalid bodies, shapes or joints always produces a lock and displays a nice console warning.
Physics 2DFeature
Added new low-level 2D physics API based upon Box2D v3. This does not interact with or change the existing API or components at this time. Later, this new API will replace the existing API and be integrated into the existing components.
Physics 2DFeature
The LowLevelPhysics2D renderer now performs orthographic render culling, which significantly improves debug rendering performance in large scenes.
Physics 2DFeature
The LowLevelPhysics2D.PhysicsRotate property drawer now shows angles labelled as "Angle" and not "Degrees".
Physics 2DFeature
Added support for building dedicated server players that target Linux Arm64 platforms using IL2CPP.
PlayerFeatureLinuxServer
Added Unity Profiler Capture List that shows recent profiling sessions and information.
ProfilerFeature
Enabled HTTP/2 functionality and optimal extra HTTP/2 settings on QNX.
QNXFeature
Enabled specifying the SCREEN_PROPERTY_PIPELINE property for each window.
QNXFeature
Added a template browser accessible through the Create menu. Users can designate any Shader Graph asset as a template in the Asset Inspector.
ShadergraphFeature
Added support for additional UV channels where applicable.
ShadergraphFeature
Added three new options to the Unlit target: Keep Lighting Variants, Default Decal Blending, and Default SSAO. These options enable you to more effectively create custom lighting models using the Unlit target. For examples, refer to the Shader Graph Custom Lighting sample content in the documentation.
ShadergraphFeature
Users can now add project-wide shader keyword list declaration overrides from Graphics Settings. This update allows users to switch between statically compiled variants and dynamic branching and completely remove keywords that are never used.
ShadersFeature
Added the ability to connect to player builds in the Render Graph Viewer.
SRP CoreFeature
Added Shader Graph support for terrain shaders. This update includes support for the High Definition Render Pipeline (HDRP) and Universal Render Pipeline (URP), a new subtarget type, and a new node for loading terrain data.
TerrainFeature
Added BR tag for ATG.
TextFeature
Added Sprite tag to ATG.
TextFeature
Added a new USS aspect-ratio property, which defines the width-to-height ratio used in layout calculations.
UI ToolkitFeature
Added a SVG importer option to import antialiased VectorImages.
UI ToolkitFeature
Added new filters to UI Toolkit, allowing you to apply tint, opacity, invert, grayscale, sepia, blur, contrast, and hue-rotate effects on VisualElement objects.
UI ToolkitFeature
Added PopupMenuSimulator for UI Test Framework.
UI ToolkitFeature
Added the Image element to the UI Builder library and exposed its properties as UXML attributes.
UI ToolkitFeature
Implemented dashed pattern in Painter2D Strokes.
UI ToolkitFeature
Implemented gradient fill in Painter2D.
UI ToolkitFeature
Implemented texture fill in Painter2D.
UI ToolkitFeature
Implemented UITK ShaderGraph Master Node.
UI ToolkitFeature
Released UI Test Framework 1.0 Package.
UI ToolkitFeature
Added Kawase and Dual filtering options for Bloom. These filters trade quality for performance and are primarily intended for mobile platforms: Kawase filtering is optimized for smaller resolutions. Dual filtering is suitable for larger resolutions. * Gaussian filtering remains the best choice for quality and stability. Each filter requires unique settings to achieve visual parity.
Universal RPFeature
Enabled HTTP/2 functionality on Universal Windows, including optimal HTTP/2 settings.
Universal Windows PlatformFeatureWindows
Added a Disabled option for the intermediate texture in URP.
URPFeature
Added On Tile Post Processing rendering features in the Universal Render Pipeline (URP) for untethered XR platforms.
URPFeatureXR
URP has added support for four views.
URPFeature
Added a new Editor Toolbar button for Unity Version Control that you can use to view project status, track changes, and perform key actions with one click.
Version ControlFeature
Added Unity Version Control actions to the prefab and prefab variant header context menus.
Version ControlFeature
Added Unity Version Control status icons to prefab assets in the Hierarchy window in prefab editing mode.
Version ControlFeature
Added support for BaseColorMapMode in unlit output.
VFX GraphFeature
Useres can now more easily create VFX templates.
VFX GraphFeature
Added a button for connecting to the Unity Profiler in the Default and PWA Web templates.
WebFeature
Added a Web Profiling dialog to start a Unity Profiler session and show the profiler's IP address and port.
WebFeature
Enabled HTTP/2 functionality on Windows, including optimal HTTP/2 settings.
WindowsFeature
Provided framebuffer tile size information from the application to OpenXR runtime. Thisallows XR vendors to make several optimizations.
XRFeature
Added tooltips to properties for the TilesetImporter editor.
2DImprovement
Improved performance of instantiation of GameObjects from Tiles.
2DImprovementUUM-110584
Increased the default alpha level of the Tile Palette Grid when the Editor is in Light mode, to make the Grid more visible.
2DImprovementUUM-113207
SpiteAtlas previews can now be packed and previewed asynchronously, which prevents the Editor from freezing during these operations. Previously, packing SpriteAtlas previews did an internal import when enabled for builds in an synchronous way and then displayed sprites. This also fixes an issue where all Atlases are packed when Atlas preview is clicked in certain cases, now only the atlas that is selected to be previewed is packed.
2DImprovement
Added an option to Player Settings to disable the automatic creation of a Presentation for rendering camera that target Display 2 when a presentation display is detected.
AndroidImprovement
Added the option to force the use of internal storage for persistent and cache files.
AndroidImprovement
Unity will now print which SDK/NDK/JDK is used for the build in Editor.log.
AndroidImprovement
Added profiler markers to PlayableDirector and PlayableOutputs to facilitate profiling for Timelines.
AnimationImprovement
Improved evaluation performance of Animation Components which are animating large amounts of properties.
AnimationImprovement
Improved memory allocations related to Animator callbacks, leading to improved performance.
AnimationImprovementUUM-107293
CAMetalDisplayLink is now enabled by default.
Apple TVImprovement
Reduced memory usage from loaded AssetBundles by sharing duplicated typetrees.
Asset BundlesImprovementUUM-117183
Improved the timing accuracy of AudioRandomContainer.
AudioImprovement
The Audio Source's "Audio Resource" field has now been generalized to an "Audio Generator" field, allowing to additionally assign and pick new Scriptable Generator assets and MonoBehaviours in the inspector.
AudioImprovement
Added copy and open functionality for attachment paths.
Bug ReporterImprovement
You can set ID3D12GraphicsCommandList::IASetVertexBuffers once instead of several times in a loop inside GfxDeviceD3D12Base::DrawBuffersCommon.
DX12ImprovementUUM-109282
- Remove the Description Foldout in favor of a text block.
EditorImprovement
Adjust the sizes of the default platform icons.
ImprovementsImprovement
A new Overlays section is available in *Preferences*, with individual sections to customize the background color of overlays for each window.
EditorImprovement
Added a dropdown to Fullscreen Renderer Feature to create a new Fullscreen Shader Graph from default template, or a new Fullscreen (handwritten) Shader using SRP Blit template.
EditorImprovement
Added a dropdown to URP Decal Projector to create a new Decal Shader Graph from default template, or a new URP Decal Material.
EditorImprovement
Added a setting in Preferences/Shader Graph to automatically open newly created graph assets.
EditorImprovement
Added a setting in Preferences/Shader Graph to choose whether a new graph and material assets are created as a Material Variant or not.
EditorImprovement
Added a tooltip to the Create button in the Project Browser. The tooltip reads: "Create new Asset."
EditorImprovement
Added informational console error messages that are triggered by custom overlays using invalid windows.
EditorImprovementWindows
Added new Editor asset icons for Texture2DArrays, Texture3Ds, and CubemapArrays.
EditorImprovement
Added samples for Renderer Shader User Value feature.
EditorImprovement
Added support for generating CubemapArray thumbnails in AssetPreview.
EditorImprovement
Added support in the Frame Debugger for viewing shading rate image attachments and other Variable Rate Shading details in a render pass in the Editor.
EditorImprovement
Added the "Use prefab asset position when dropping on the Hierarchy window" preference to allow prefabs to be placed at the position saved in the assets root transform when they're placed in the scene via the Hierarchy window.
EditorImprovementUUM-104560
Added two new states to the dynamic panel: toolbar and collapsed.
EditorImprovement
Changed "Unity Package Manager" to "Package Manager" to reduce truncation when displayed on the Editor startup splash screen.
EditorImprovement
Improve player build times when both burst and il2cpp are involved. Some workflows that were tested saw a 22% reduction in player build times. However, the savings vary by project and workflow. In some workflows there could be little to no reduction.
EditorImprovement
Improved Editor startup time by deferring package manager setup until licensing is ready.
EditorImprovementUUM-99942
Improved handling of replacing Transform with RectTransform when Transform belongs to TransformAccessArray.
EditorImprovement
Improved performance of RectTransform.GetWorldCorners by removing an unneeded call to the Transform property.
EditorImprovementUUM-112591
Improved the Auto Graphics API UI to always display a list of available graphics APIs. Added a warning if the graphics API will change after restarting the Editor.
EditorImprovement
Modified diagnostic switches are now written to the Editor.log on Editor startup.
EditorImprovementUUM-111240
Modified the Editor Launch Screen close button on Linux to dim and become non-interactible after a user selects it.
EditorImprovementLinux
Modified the Editor Launch Screen close button on macOS to dim and become non-interactive after you select it.
EditorImprovementmacOS
Moved the warning message when no material is assigned to a URP Fullscreen Renderer Feature, from Console to Inspector.
EditorImprovement
Removed Linq usage in CoreUtils.
EditorImprovement
Removed some string allocations in ATG.
EditorImprovement
Removed the Reset Size option from the Overlay contextual menu for overlays that are not actually able to be resized by the user.
EditorImprovement
Simplified Pool System for ATG.
EditorImprovement
The UI for Object Fields and the Object Selector now supports filtering the 'objectType' by an interface, both in UI Elements or EditorGUI.
EditorImprovement
Updated code generation option labels in PlayerSettings to better reflect their purpose: Changed Faster runtime to Optimize for runtime speed. Changed Faster (smaller) builds to Optimize for code size and build time.
EditorImprovement
Updated the dynamic panel icons with official icons.
EditorImprovement
Updated the Platform Browser header section to show new UI images.
EditorImprovement
DelayedAttribute now supports Vector and Rect fields when drawn with UI Toolkit.
EditorImprovement
Added validity checks for GameWindow operations in the Windowing API.
EmbeddedLinuxImprovement
Changed the behavior of light probe loading. When you unload the last scene that contains light probes, you no longer need to call LightProbes.Tetrahedralize() to apply the changes.
GIImprovementUUM-116318
Improved the documentation for the IProbeIntegrator API, which is used to implement custom global illumination (GI) baking for light probes.
GIImprovement
Reflection probe transform can now be rotated in URP.
GIImprovement
The system now prompts you to save any unsaved scenes before baking reflection probes in HDRP.
GIImprovement
- Migrated HDAdditionalLightData.innerSpotPercent to Light.innerSpotAngle.
GraphicsImprovement
Migrated HDAdditionalLightData.shapeWidth and shapeHeight to Light.areaSize for area lights, and to Light.cookieSize2D for directional lights.
ImprovementsImprovement
Migrated HDAdditionalLightData.aspectRatio to Light.innerSpotAngle for pyramid lights.
ImprovementsImprovement
Migrated Light.cookieSize to Light.cookieSize2D.
ImprovementsImprovement
Deprecated the HDRP HDAdditionalLightData.SetSpotAngle() API.
ImprovementsImprovement
Added new profiler mark to display time spent waiting for the next drawable on devices using the Metal graphics API.
GraphicsImprovement
Fixed errors in the URP Samples.
GraphicsImprovement
Optimized Skinned Mesh Renderer matrix calculations to enable Unity to parallelize these calculations, even when using the non-optimized import setting.
GraphicsImprovementUUM-105251
Improved the integration of the new render graph system into HDRP by allowing more render graph passes to be culled.
HDRPImprovement
Improved startup time and reduced metadata memory usage by delaying the creation of generic method instances.
IL2CPPImprovementUUM-112775
Made a small performance improvement in isinst checks generic types with generic variance.
IL2CPPImprovement
Reduced default worst-case input latency and reduced likelihood of dropped/undetected input when using Xbox gamepads on Windows, UWP, Xbox by increasing the default polling frequency for input devices polled in the background.
Input SystemImprovementWindows
Improved time for the Package Export window to show up.
Package ManagerImprovement
Replaced the sidebar, error, and warning icons.
Package ManagerImprovement
Renamed the API parameter rot to rotation in Rigidbody.MoveRotation() to ensure consistency with Rigidbody.MovePosition().
PhysicsImprovementUUM-104638
The "Reuse Collision Callbacks" option inside the Physics settings is now enabled by default for new projects.
PhysicsImprovement
You can now strip the PhysX integration from build targets when that use "Strip Engine Code" to remove native Unity code. To strip the PhysX integration, set the GameObject SDK dropdown to "None" in Project Settings &gt; Physics.
PhysicsImprovement
Removed code that supported passing project settings objects (such as PlayerSettings and QualitySettings) to Instantiate() or loading them from AssetBundles. This change reduces binary size across all platforms, with a reduction of approximately 100KB on Web platforms.
PlayerImprovement
Upgraded DLSS3 (v3.7.2) to latest DLSS4 (v310.3.0): added DLAA quality mode &amp; DLSS Render Preset options under HDRP Dynamic resolution DLSS settings.
PluginsImprovement
Upgraded the DLSS SDK version from 310.3.0 to 310.4.0.
PluginsImprovement
Added a range of UX feedback collected during additional testing of the Profiler Overview feature.
ProfilerImprovement
Added support for native allocation call stacks in Memory Profiler 1.1.6. Use the -enable-memoryprofiler-callstacks command-line argument to enable this feature on desktop and mobile platforms.
ProfilerImprovement
The Profiler Overview's lists of top markers now combine marker instances within a frame and link to the CPU Hierarchy where appropriate.
ProfilerImprovement
Multidisplay monitor commandline argument.
QNXImprovement
Added a dedicated edit mode to the main toolbar.
Scene/Game ViewImprovement
Added ability to collapse tool groups in the Tools overlay.
Scene/Game ViewImprovement
Improved Editor Tools icon fallback and grouping behaviour.
Scene/Game ViewImprovement
Improved icon quality of the Edit Collider tool.
Scene/Game ViewImprovementUUM-115187
Improved user experience and workflows when using Editor tool contexts.
Scene/Game ViewImprovement
Improved symbol post-processing times for Cloud Diagnostics and Engine Diagnostics.
ServicesImprovement
Added a new set of sample content that provides example terrain shaders that use Shader Graph.
ShadergraphImprovement
Added a new set of sample content to Shader Graph that shows how the lighting model can be customized directly in the graph. Custom lighting can improve performance and/or provide a way to stylize the look of a project and this sample shows how to do it.
ShadergraphImprovement
Added an option to Custom Interpolators to change the interpolation type, such as no interpolation or centroid.
ShadergraphImprovement
Added both preference and setting path for variant limit exceeded warning message.
ShadergraphImprovementUUM-104591
Added terrain shader templates to the Shader Graph Template Browser.
ShadergraphImprovement
Added the ability to promote subgraph properties to the final shader.
ShadergraphImprovement
Addressed an issue where the far right toolbar dropdown was difficult to interact with.
ShadergraphImprovementUUM-105177
Improved blackboard scrolling behavior when adding a new item out of the current scroll view.
ShadergraphImprovementUUM-103879
Improved resizing behavior for custom property and function inspectors.
ShadergraphImprovementUUM-103867
Improved shader variant exceeded message to direct users to both project settings and preferences.
ShadergraphImprovementUUM-104591
Improved spacing of a certain toggle on the shader graph preferences page.
ShadergraphImprovementUUM-104088
Made some small polish fixes to Shader Graph template files.
ShadergraphImprovement
Modified the Heatmap asset help button so it now redirects to Shader Graph documentation.
ShadergraphImprovementUUM-103974
Subgraphs with a non-previewable first output now default to having no node preview.
ShadergraphImprovementUUM-102007
Improved build time for shaders with multiple subshaders and passes but few variants.
ShadersImprovement
Added backbuffer as target support for AddBlitPass Render Graph utility.
SRP CoreImprovement
Added custom support for MaterialUpgraders.
SRP CoreImprovementUUM-97118
Added validation for the AddBlitPass function to ensure proper handling of null source textures.
SRP CoreImprovement
Improved Cleaning of the resources when there is an exception in the rendergraph.
SRP CoreImprovement
Improved RG error system handling with more descriptive messages.
SRP CoreImprovement
Improved the Render Graph exception handling mechanism and its logging behaviour, removing unnecessary error messages.
SRP CoreImprovement
Optimized the AddBlitPass utility to use AddCopyPass when applicable.
SRP CoreImprovement
Optimized the inner logic of Render Graph through several small improvements. The Render Graph recording step is now 2-4% faster on the main CPU thread in several scenarios.
SRP CoreImprovement
Updated the Render Graph Viewer to automatically refresh when changes occur in the render graph execution.
SRP CoreImprovement
Implemented debounced search in the Test Runner window to improve search performance for projects with many tests.
Test FrameworkImprovementUUM-119308
Improved ATG performance by adding parallelization on more algorithms.
TextImprovement
Improved performance for ATG.
TextImprovement
Added the ability to change the TreeView item indent with a custom style property called --unity-tree-view-indent.
UI ToolkitImprovementUUM-44460
Added isDelayedsupport to composite fields: Vector2Field, Vector2IntFIeld, Vector3Field, Vector3IntField, Vector4Field, RectField and RectIntField.
UI ToolkitImprovement
Improved layout cache management.
UI ToolkitImprovementUUM-105812
Improved UI Toolkit performance when using Advanced Text Generator.
UI ToolkitImprovement
Migrated various control tests to the new UITK test framework.
UI ToolkitImprovement
Upgraded USS parser. This includes more robust handling of selectors and tokens, with stricter validation and clearer error reporting. This upgrade may expose previously unnoticed invalid USS in your projects.
UI ToolkitImprovementUUM-102246
Added API documentation for SetRenderAttachment/SetRenderAttachmentDepth/SetInputAttachment to specify the limitation when using the same render texture with different depth slices at different render target indices.
Universal RPImprovementUUM-103981
Small optimization: removed unneeded intermediate textures for Forward+ in Editor.
Universal RPImprovement
Updated render graph samples to newer APIs.
URPImprovement
Updated the Rendering Settings Converter in the Render Pipeline Converter to create one Universal Renderer per rendering mode, instead of creating one per Quality level.
URPImprovementUUM-112328
Improved CPU performance by reducing internal dereferencing of PPtr.
VFX GraphImprovement
Improved VFX default resources.
VFX GraphImprovement
Users can now insert a template into an existing graph at a chosen initial position to avoid nodes from overlapping.
VFX GraphImprovement
VFX Graph: Enabled sticky notes to be added to groups and improved the color theme.
VFX GraphImprovement
Improved Adaptive Performance domain reload time. Adaptive Performance and its packages are now only updated when opening the Settings instead of Play Mode and during Editor startup. Adaptive Performance gets now stripped properly if not in use.
Adaptive PerformanceFix
Fixed problem with Y touch coordinate when using Activity, setting "Render outside of safe area" to false and using "Letterboxed" scaling mode.
Fixed SDK Platforms-25 installation (for source-code customers). (UUM-127721) First seen in 6000.3.0a5.
Fixed issue where Animator state normalized time would stop incrementing past a certain normalized time. Now, the state time will be guaranteed to increment (or decrement) to the next representable floating point number if the delta time is non-zero.
Fixed a crash when capturing a frame in RenderDoc on a device with new "tight alignment" feature enabled. We will disable the feature for now when running with renderdoc.dll. (UUM-125528) First seen in 6000.3.0b7.
All queries are generated using path instead of GlobalObjectId which make the error message if nothing is found more readable.
Fixed "Unity Services are not disabled and cause longer build times when the project is not connected to Unity Cloud" warning.
Fixed a AudioRandomContainer loop count randomisation UI flickering when changing values through range slider. (UUM-115219) First seen in 6000.3.0a6.
Fixed a bug that was causing an exception in the console when asset bundles containing terrains created by an older version of Unity were loaded that contained instanced terrain details.
Fixed an issue where a Raycast did not hit when using the default CapsulecastCommand() constructor.
Fixed an issue where dialogs in the Windows Editor were obscured by secondary windows. (UUM-125650) First seen in 6000.3.0b9.
Fixed applying SerializeReference root property overrides from prefab instances to prefab assets when the managed object already exists in the asset.
Fixed Dynamic panels drop zones being hardly usable. (STO-3640)
EditorFix
In the Build Profiles window, fixed the placement of the Cloud Build button. (UUM-108947) First seen in 6000.3.0a1.
Toggling off the Scene Visibility button in the scene view toolbar now disables hiding of objects and scene correctly when using GPU Resident Drawer.
Ensured that the "RenderSettings customReflection texture has invalid type" error is show exactly when relevant.
Fixed an issue upgrading to Unity 6.3 or later that occurred when a project used the Light Transport package. (UUM-127573) First seen in 6000.3.0b10.
Subscenes now open before the APV baking starts if "Generate Lighting" is pressed in the lighting window.
Cached shadows now removes a light if an undo operation affects the light. This is done to avoid having invalid references which would cause a crash.
Fixed resize cursor issues in a windowed standalone Player build when using the Input System.
Fixed an issue by giving a warning and error icons higher priority over locked icons. (UUM-114376) First seen in 6000.3.0a5.
Package ManagerFixUUM-114376fixed 6000.3.0f1
Fixed keeping text in fields when adding a package by technicial name fails. (UUM-125060) First seen in 6000.3.0b8.
Package ManagerFixUUM-125060fixed 6000.3.0f1
Making the default package created be publishable on the Asset Store. (PAK-8554) First seen in 6000.3.0.
Package ManagerFix
Fixed a crash that would occur when adding a Cloth component to a GameObject with an existing TextMesh component. By default both Cloth and TextMesh components can't share the same GameObject due to the fact that they require different renderers to work, MeshRenderer and SkinnedMeshRenderer respectively.
Fixed an issue with pinning particles of a Cloth component at runtime from script or using authoring tools during playmode. (PHYS-669)
PhysicsFix
Add missing methods to retrieve all geometry-islands for PhysicsComposer and PhysicsDestructor operations. (UUM-126432) First seen in 6000.3.0a5.
Fix an issue in PhysicsComposer where the tesselator could leak if tesselation were to fail. (UUM-126427) First seen in 6000.3.0a5.
Fixed a crash when using PhysicsWorld Transform Tweening. (UUM-126195) First seen in 6000.3.0b8.
Fixed an issue where the shortcut table's selection in Shortcut Manager would not update correctly when changing search queries.
Scene/Game ViewFixUUM-126160fixed 6000.2.14f1
Fixed a regression issue when triggering keyword space mismatches on certain cases with UsePass and Fallback.
Update UnityInput.hlsl to remove incorrect comment about time since level load.
ShadersFix
Fixed a crash that could occur when preventing instanced details from being added to detail texture atlas.
Fixed a stack overflow exception in the Test Runner UI that might happen with some assembly setups with precompiled assemblies.
Test FrameworkFixWindowsUUM-122047fixed 6000.2.14f1
Fixed preferred height calculations when text component is using multiple font asset with varying metrics.
Revised the UI text component Maskable property to also control the RectMask2D clipping as well as ensuring its state is also mirrored on any potential sub mesh text objects.
Fixed for flickering caret and highlight while selecting text in a TextMeshPro InputField while continuing to drag cursor above or below of the Input Field.
Fixed crash when processing SVG import using new dashed pattern. (UUM-125822) First seen in 6000.3.0b8.
Fixed selecting an element selects all matching elements from other instances of the same document when unpacking instances of documents in UI Builder. (UUM-125218) First seen in 6000.3.0b7.
UI Toolkit: Fixed blend mode for Additive and Multiply (UUM-120002) First seen in 6000.3.0a2.
Fixed an issue transient textures dynamic scaling when using RG NRP API. (UUM-120408) First seen in 6000.3.0a1.
Fixed the Toolbar button icon that was not visible for uncontrolled projects for Editor older than Unity 6.3.
Version ControlFix
UnityYAMLMerge tool was adding long path specifiers to the file paths passed to the fallback merge tools, causing p4Merge to fail.
Version ControlFixUUM-126068fixed 6000.2.14f1
\[Linux\] Crash on VideoPlayer::InvokeScriptCallbacks when domain reloads while playing a video.
Updating gameloop when the user right-clicks on the window title bar on a Run In Background application.
Added warning when Sprite Outline is set to beyond the boundary of Sprite so artifacts in sprite assets can be found and fixed.
Fix case where crash on "TransferPixelDataForMaskTemplate&lt;_sprite_packing_char2&gt;" when building for Android
Fix case where SpriteShapeRenderer overrides stencil settings when a custom shader is used to set stencil values
Fix issue in the Sprite Editor where the Slice on Import toggle in the Slice menu does not maintain its set value when the Slice menu is closed and reopened again
Fix issue where the material property block of a SpriteRenderer is reset when the SpriteRenderer is updated through an Animation clip.
Fixed an issue where Palette camera position and zoom were not stored and restored when the Tile Palette was reopened.
Fixed an issue where Texture 2D Importer fails passing a default value to the "namefileidtable" when using a texture preset.
Fixed an issue where the Tile Palette background color changed depending on whether a render pipeline asset was used.
Fixed crash issue with the TilemapRenderer where the TilemapRenderer is destroyed while the graphics renderer is still rendering the TilemapRenderer.
Fixed Create New Tile Palette/Create New Target dropdown menu's vertical alignment when there are no selected options available.
Fixed in 6000.3: implicit truncation of vector warning that is thrown after building in Universal2D Core template in Hidden/Light2D shader. This issue was introduced in LightingUtility.hlsl from 6000.1.x onward.
2DFix
Fixed issue where "Invalid AABB inAABB" and "Assertion failed on expression: 'awake.loadStarted'" errors are thrown when when instantiating a prefab with InstantiateAsync.
Fixed issue where RigidBody2Ds could affect shadow caster size when using a Collider2D as a casting source.
Fixed issue where the "Invalid SortingGroup index set in Renderer" assert is triggered when multiple SortingGroups and SpriteRenderers are disabled and enabled in a single frame without a SortingGroupManager.Update occurring.
Fixed issue where the Cell Size field for the Tile Set Editor is not enabled when the Cell Sizing is set to Manual.
Fixed issue with the TilemapRenderer when the TilemapRenderer has a Mask Interaction set to None and the user uses a shader which utilises the stencil buffer, and the stencil settings in the shader are not respected.
Fixed menu placement.
2DFix
Fixed TextureImporter meta file modification when reimporting a texture while the "Default Behaviour Mode" is set to 2D for new imported files.
SpriteAtlasPerformance tests are crashing with "Dereferencing nullptr PPtr\!". (D2D-7637)
2DFix
Change input manager of Adaptive Performance samples to support input manager package instead of built-in input manager.
Adaptive PerformanceFix
Improved Adaptive Performance domain reload time. Adaptive Performance and its packages are now only updated when opening the Settings instead of Play Mode and during Editor startup. Adaptive Performance gets now stripped properly if not in use.
Adaptive PerformanceFix
Fixed A Navigation Raycast() was freezing the game when passing through very small NavMesh polygons created by NavMesh Obstacles that carve.
Fixed some mesh colliders with unusual positions and orientations not being collected during a NavMesh build when using the default bounds.
Fixed: Agent was taking steps back while trying to correct the path it had computed through the NavMesh.
Navigation queries, including path calculations, now correctly identify valid locations on rugged sections of the NavMesh.
Navigation queries, including path calculations, now correctly identify valid locations on rugged sections of the NavMesh.
NFixed: avMesh.CalculateTriangulation() now returns triangles in the same order every time the navigation system uses the same set of NavMesh polygons.
Enforced the use of Streaming Assets extensions for the noCompress string in Android Gradle projects to avoid problems with too many entries in the list, which could cause Gradle builds to fail.
Fixed a bug where calls lead to a state where starting new audio streams caused a main thread stall.
Fixed an issue in the build and run pipeline where the Android manifest was not correctly parsed for activity-alias entries. The Editor now supports launching applications that use activity-alias as an entry point.
Fixed an issue where the bottom navigation bar would become visible after returning to the app from the background when using GameActivity.
Fixed crash on GameActivity, when touching screen with 9 fingers or more. GameActivity only supports up to 8 fingers touching screen at the same time.
Fixed Exception "Didn't find class "com.unity3d.player.ReflectionHelper" and application crash when setting AndroidJNIHelper.debug to true.
Fixed GameActivity specific problem with touch coordinates translation when using custom screen resolution and rotating the screen.
Fixed GLSL compute shaders not upgrading "version 310 es" to "version 320 es" after enabling "Require ES3.2" in Player Settings.
Fixed incorrect Screen.safeArea/cutouts values on Android 11 or higher when Render Outside Safe Area is set to false.
Fixed issue so the application will continue to update/render while built for 'GameActivity + run in split screen + permission dialog is shown' if RunWithFocus is set to true. Previously the application would pause for GameActivity, but would continue to run if built for Activity.
Fixed issue where RenderBufferLoadAction.DontCare is ignored in some situation when switching between use of RenderPass API and SetRenderTarget.
Fixed issue where Vulkan was preferred over GLES even though the drivers were detected as incompatible.
Fixed possibly missed events in UAAL scenario when calls were made right after instantiating the UnityPlayer.
Fixed problem with Y touch coordinate when using Activity, setting "Render outside of safe area" to false and using "Letterboxed" scaling mode.
Forward AKEYCODE_MEDIA_PLAY_PAUSE, AKEYCODE_MEDIA_REWIND, AKEYCODE_MEDIA_FAST_FORWARD to input system Keyboard device. See https://github.com/Unity-Technologies/InputSystem/pull/2212/files for more details.
When input field is hidden, text input no longer introduces previously deleted characters when using Vietnamese keyboard on certain devices.
Added an error to explain why AnimatorController states stop working when they reach a normalized time which is too large (100,000+loops).
Added warnings when optimizing a Transform hierarchy which has duplicate transform names, as that can cause issues when Deoptimizing the hierarchy.
Disabled the Delete option in the Layer context menu when there is only one Layer in the Animator controller.
Ensure that an Animator using an AnimationClipPlayable will keep playing when its clip is reimported while in Play Mode.
Fixed a crash that occurred when playing animation clips from the Animation window on animators with invalid controllers that had no layers.
Fixed an issue where a state machine state's name would be extending beyond the bounds of the node if the name was too long.
Fixed an issue where clicking the Play button immediately after selecting a clip in the Animation window didn't play the selected clip. The Space shortcut now plays the selected clip as expected, instead of opening the clip selection dropdown.
Fixed an issue where reimporting an AnimationClip that was playing in the AnimationWindow would stop playing the clip.
Fixed an issue where sampling nested humanoid characters in the AnimationWindow could leave the hierarchy modified after going out of preview.
Fixed an issue where the RuntimeAnimatorController type would not have an icon displayed when it was shown in search fields.
Fixed an issue where the view would be erratically jumping when dragging the AnimatorControllerView while Auto Live Link was active.
Fixed an issue with animated UITK Property Fields in component inspectors failing to tint correctly when entering and exiting the animation preview mode from the Animation window.
Fixed corrupted animator window because of dangling animator controller serialized in the layout.
Fixed issue where Animator side menu visibility icon had inconistent selection styling compared with other buttons on the same toolbar
Fixed issue where Animator state normalized time would stop incrementing past a certain normalized time. Now, the state time will be guaranteed to increment (or decrement) to the next representable floating point number if the delta time is non-zero.
Added a warning to the Tilemap Inspector when the Tilemap isn't attached to an enabled Grid.
2DChangeUUM-110584
Disabled the instantiation of GameObjects from Tiles when the Tilemap isn't attached to an enabled Grid to prevent performance issues from these GameObjects.
2DChangeUUM-110584
Reduced recursive limit from 11 to 6 for instantiation of GameObjects from Tiles.
2DChange
The minimum supported version for tvOS is now tvOS 15. The previous minimum was tvOS 13.
Apple TVChangetvOS
Made internal changes to FMOD.
AudioChange
Updated the UI of the Bug Reporter to remove the small cross buttons at the end of each text input field.
Bug ReporterChange
Modify the DX12 device filter to exclude integrated GPUs.
DX12Change
Added messages in the Console to improve visibility into package signature validation as part of ongoing efforts to enhance safety and standardization.
EditorChange
Changed dynamic panel sizes to use pixels instead of percentages.
EditorChange
Improved PackageInfo.FindForAssetPath API documentation.
EditorChange
Redesigned the Overlay menu.
EditorChange
Renamed the Diagnostics section in the Preferences menu to Editor Diagnostics.
EditorChange
The Game view rendering statistics window now displays a warning of incorrect triangle and vertex count when indirect draw calls are issued, such as is the case with GPU Occlusion Culling.
EditorChangeUUM-102572
The shader variant limit option in Shader Graph Project Settings now requires an opt-in override toggle.
EditorChangeUUM-108905
Updated the AI toolbar button to also install the Inference Engine.
EditorChange
Updated verbose Unity version strings in the About window to display a Git commit hash and Git branch name instead of progress and digress numbers.
EditorChange
Updated GatherDependenciesFromSourceFile to trigger a warning when using AssetImporter.GetAtPath. (CPN-1363)
EditorChange
The OpenCL based GPU lightmapper is now the default for new projects and new lighting settings assets.
GIChange
Ported HDRP to the Native Render Pass Render Graph API.
HDRPChange
Changed the serialized form of TypeDefinitionIndex in the global metadata file to use the smallest possible numeric representation, reducing the metadata size for most programs.
IL2CPPChange
The minimum supported version for iOS is now iOS 15. The previous minimum was iOS 13.
iOSChange
Updated C and C++ version used when building iOS and tvOS platforms from Xcode project.
iOSChangetvOS
Updated the minimum requirements for the macOS Player to macOS 12 (Monterey).
macOSChange
Updated the Package Manager window to display completely non-compliant scoped registries.
Package ManagerChange
Set a minimum width and height for the Physics Debugger window.
PhysicsChangeUUM-114638
Increased the default frame count in the Unity Profiler to 2,000.
ProfilerChange
Added a warning to the console if \[SerializeReference\] is used on a type that is not serializable.
SerializationChange
Enabled RenderGraph.nativeRenderPassesEnabled by default.
SRP CoreChange
Moved the location of the UITK Test Framework 1.0 Package.
UI ToolkitChange
Isolated post-processing URP compatibility mode from Render Graph mode. Split PostProcessingPass into two independent classes for compatibility mode and render graph. Compatibility mode post-process code is now in the Universal.CompatibilityMode namespace.
Universal RPChange
Updated global settings for URP empty scene template. It will now have rotating reflection probes enabled when creating a new URP project.
Universal RPChange
Updated FullScreenRenderPass to use AddCopyPass and AddBlitPass utilities when applicable (e.g., fetchColorBuffer enabled and no texture requirements).
URPChange
Updated the Rendering Settings Converter in the Render Pipeline Converter so that it only displays Quality levels that have missing Universal Render Pipeline (URP) assets.
URPChangeUUM-112331
Updated C and C++ version used when building visionOS platform from Xcode project.
VisionOSChange
Updated the Oculus XR Plugin package to version 4.5.2.
XRChange

Pick your Unity version

Unity Releases compares releases against the version your project is on. Picking it now keeps Compare versions focused on what changes between where you are and where you might be going.