6000.0.23f1: Crash on Animator::OnPlayableUnbind when exiting Play mode after RigBuilder rebinds during Animator evaluation
6000.6.0b4
Beta · Released Jul 16, 2026 · Changeset 2212ba80b59e · 2,602 release notes
46build score
Upgrade risk+20Net cleanup+7Live debt+19
cohort: beta (69)
6000.6.0a4: Crash on alloc_block(ushared_memory_pool*, unsigned long) when the shared memory pool reaches its physical size limit Linux and macOS
6000.6.0a7: [Android] Crash on "GetAndroidFallbackSystemFonts" when an error is logged into Console in the Player
Asset Import Workers no longer crash and Player builds no longer fail when building after deleting and recreating an active Build Profile. (UUM-141610) Fixed in 6000.6.0b5.
Fixed crash on startup with the deep profiling support enabled. (UUM-145576) First seen in 6000.6.0b1. Fixed in 6000.6.0b5.
Crash on mono_log_write_logfile when more than one copy of bee_backend is running
Obsoleted: GenericBinding.scriptInstanceID is deprecated. Use scriptEntityId instead.
AnimationBreaking
Obsoleted: GenericBindingUtility.BindProperties(GameObject, NativeArray<GenericBinding>, out NativeArray<BoundProperty>, out NativeArray<BoundProperty>, Allocator) is deprecated. Use the overload which includes out instanceIDProperties instead.
AnimationBreaking
Deprecated: The X86_64 and Universal options for the tvOS Simulator Architecture setting are now marked as deprecated.
Apple TVBreakingtvOS
Changed: Deprecated AssetImportContext.GetArtifactFilePath in favour of AssetImportContext.GetArtifactData.
Asset PipelineBreaking
Deprecated: Removed the AssetdatabaseExperimental.ActiveOnDemandMode API. The OnDemand feature was experimental and could cause a deadlock when used.
Asset PipelineBreaking
Removed: Removed a number of obsolete audio APIs.
AudioBreaking
Removed: Removed obsolete APIs.
Build PipelineBreaking
Removed: Removed the obsolete LoadableObjectIdEditorUtility.ObjectToLoadableObjectId API. Use LoadableObjectIdEditorUtility.CreateLoadableObjectId instead.
Build PipelineBreaking
Obsoleted: EntityId implicit conversion from int is deprecated. EntityId will not be representable by an int in the future. This will be removed in a future version.
CoreBreaking
Obsoleted: EntityId implicit conversion to int is deprecated. EntityId will not be representable by an int in the future. This will be removed in a future version.
CoreBreaking
Obsoleted: EntityId.Equals(int other) is deprecated. EntityId will not be representable by an int in the future. This will be removed in a future version.
CoreBreaking
Obsoleted: GameObject.GetScene(int instanceID) is obsolete. Use GameObject.GetScene(EntityId entityId) instead.
CoreBreaking
Obsoleted: GameObject.InstantiateGameObjects(int sourceInstanceID, int count, NativeArray<int>, NativeArray<int>, Scene) is obsolete. Use GameObject.InstantiateGameObjects(EntityId, int, NativeArray<EntityId>, NativeArray<EntityId>, Scene) instead.
CoreBreaking
Obsoleted: GameObject.SetGameObjectsActive(NativeArray<int> instanceIDs, bool active) is obsolete. Use GameObject.SetGameObjectsActive(NativeArray<EntityId>, bool) instead.
CoreBreaking
Obsoleted: GameObject.SetGameObjectsActive(ReadOnlySpan<int> instanceIDs, bool active) is obsolete. Use GameObject.SetGameObjectsActive(ReadOnlySpan<EntityId>, bool) instead.
CoreBreaking
Obsoleted: InstanceID struct is obsolete. Use EntityId instead.
CoreBreaking
Obsoleted: LazyLoadReference<T> implicit conversion from int instanceID is deprecated. Use LazyLoadReference(EntityId entityId) instead. This will be removed in a future version.
CoreBreaking
Obsoleted: LazyLoadReference<T>(int instanceID) constructor is deprecated. Use LazyLoadReference(EntityId entityId) instead. This will be removed in a future version.
CoreBreaking
Obsoleted: LazyLoadReference<T>.instanceID is deprecated. Use entityId instead. This will be removed in a future version.
CoreBreaking
Obsoleted: Object.GetInstanceID is deprecated. Use GetEntityId instead. This will be removed in a future version.
CoreBreaking
Obsoleted: Resources.InstanceIDIsValid(int instanceId) is obsolete. Use EntityIdIsValid instead.
CoreBreaking
Obsoleted: Resources.InstanceIDsToValidArray(NativeArray<int>, NativeArray<bool>) is obsolete. Use EntityIdsToValidArray instead.
CoreBreaking
Obsoleted: Resources.InstanceIDToObject(int instanceID) is obsolete. Use EntityIdToObject instead.
CoreBreaking
Obsoleted: Resources.InstanceIDToObjectList(NativeArray<int>, List<Object>) is obsolete. Use EntityIdsToObjectList instead.
CoreBreaking
Removed: InstanceID implicit conversion to and from EntityId is removed. Use EntityId directly instead of InstanceID.
CoreBreaking
Changed: Deprecated the shader compiler pragma argument #pragma enable_d3d11_debug_symbols and replaced it with #pragma enable_debug_symbols.
EditorBreaking
Changed: GTK: Hash128 unique identifier properties in the GTK public API have been renamed from Guid to ID (e.g. INode.Guid to INode.ID). This is a breaking change for any code using the previous GTK public API.
EditorBreaking
Changed: SceneViewCameraWindows.additionalSettingsGui have been deprecated as it was using ImGUI. It is replaced by SceneViewCameraWindows.createAdditionalSettingsGUI and SceneViewCameraWindows.bindAdditionalSettings using UITK. The new version is per SceneView and support copy-paste and reset of settings.
EditorBreaking
Deprecated: Deprecate BuildSummary.multiProcessEnabled, Multi-process AssetBundle building was removed in Unity 6.4. Users should use BuildPipeline.BuildContentDirectory for multi-process building.
EditorBreaking
Deprecated: It is no longer possible to enable word wrapping in YAML files.
EditorBreaking
Obsoleted: ArrayEntries.instanceId has been made obsolete. Use ArrayEntries.entityId instead.
EditorBreaking
Obsoleted: AssetDatabase.CanOpenAssetInEditor(int instanceID) is deprecated. Use CanOpenAssetInEditor(EntityId) instead. Editor: AssetDatabase.Contains(int instanceID) is deprecated. Use Contains(EntityId) instead.
EditorBreaking
Obsoleted: AssetDatabase.GetAssetPath(int instanceID) is deprecated. Use GetAssetPath(EntityId) instead.
EditorBreaking
Obsoleted: AssetDatabase.InstanceIDsToGUIDs(NativeArray<int>, NativeArray<GUID>) is deprecated. Use EntityIDsToGUIDs() instead.
EditorBreaking
Obsoleted: AssetDatabase.IsForeignAsset(int instanceID) is deprecated. Use IsForeignAsset(EntityId) instead.
EditorBreaking
Obsoleted: AssetDatabase.IsMainAsset(int instanceID) is deprecated. Use IsMainAsset(EntityId) instead.
EditorBreaking
Obsoleted: AssetDatabase.IsNativeAsset(int instanceID) is deprecated. Use IsNativeAsset(EntityId) instead.
EditorBreaking
Obsoleted: AssetDatabase.IsSubAsset(int instanceID) is deprecated. Use IsSubAsset(EntityId) instead.
EditorBreaking
Obsoleted: AssetDatabase.OpenAsset(int instanceID) is deprecated. Use OpenAsset(EntityId) instead.
EditorBreaking
Obsoleted: AssetDatabase.OpenAsset(int instanceID, int lineNumber) is deprecated. Use OpenAsset(EntityId, int) instead.
EditorBreaking
Obsoleted: AssetDatabase.OpenAsset(int instanceID, int lineNumber, int columnNumber) is deprecated. Use OpenAsset(EntityId, int, int) instead.
EditorBreaking
Obsoleted: AssetDatabase.TryGetGUIDAndLocalFileIdentifier(int instanceID, out string, out long) is deprecated. Use TryGetGUIDAndLocalFileIdentifier(EntityId, out string, out long) instead.
EditorBreaking
Obsoleted: AssetPreview.IsLoadingAssetPreview(int instanceID) is deprecated. Use IsLoadingAssetPreview(EntityId entityId) instead.
EditorBreaking
Obsoleted: Beginning of Forbidden API deprecation: specific AppDomain methods/events.
EditorBreaking
Obsoleted: Changed guid, int instanceId, Scene scene) is deprecated. Use ChangeAssetObjectPropertiesEventArgs(GUID guid, EntityId entityId, Scene scene) instead.
EditorBreaking
Obsoleted: Changed instanceId, Scene scene) is deprecated. Use ChangeChildrenOrderEventArgs(EntityId entityId, Scene scene) instead.
EditorBreaking
Obsoleted: Changed instanceId, Scene scene) is deprecated. Use ChangeGameObjectOrComponentPropertiesEventArgs(EntityId entityId, Scene scene) instead.
EditorBreaking
Obsoleted: Changed instanceId, Scene scene) is deprecated. Use ChangeGameObjectStructureEventArgs(EntityId entityId, Scene scene) instead.
EditorBreaking
Obsoleted: Changed instanceId, Scene scene) is deprecated. Use ChangeGameObjectStructureHierarchyEventArgs(EntityId entityId, Scene scene) instead.
EditorBreaking
Obsoleted: Changed instanceId, Scene scene) is deprecated. Use ChangeRootOrderEventArgs(EntityId entityId, Scene scene) instead.
EditorBreaking
Obsoleted: Changed instanceId, Scene, int previousParentInstanceId, Scene, int newParentInstanceId) is deprecated. Use ChangeGameObjectParentEventArgs(EntityId entityId, Scene, EntityId previousParentEntityId, Scene, EntityId newParentEntityId) instead.
EditorBreaking
Obsoleted: Changed is deprecated. Use entityId instead.
EditorBreaking
Obsoleted: Changed is deprecated. Use entityId instead.
EditorBreaking
Obsoleted: Changed is deprecated. Use entityId instead.
EditorBreaking
Obsoleted: Changed is deprecated. Use entityId instead.
EditorBreaking
Obsoleted: Changed is deprecated. Use entityId instead.
EditorBreaking
Obsoleted: Changed is deprecated. Use entityId instead.
EditorBreaking
Obsoleted: Changed is deprecated. Use entityId instead.
EditorBreaking
Obsoleted: Changed is deprecated. Use newParentEntityId instead.
EditorBreaking
Obsoleted: Changed is deprecated. Use previousParentEntityId instead.
EditorBreaking
Obsoleted: CreateAssetObjectEventArgs(GUID guid, int instanceId, Scene scene) is deprecated. Use CreateAssetObjectEventArgs(GUID guid, EntityId entityId, Scene scene) instead.
EditorBreaking
Obsoleted: CreateAssetObjectEventArgs.instanceId is deprecated. Use entityId instead.
EditorBreaking
Obsoleted: Marked some old ApiCompatibilityLevel enum values as obsolete.
EditorBreaking
Obsoleted: The int instanceId field in PackedNativeUnityEngineObject has been made obsolete use EntityId entityId instead.
EditorBreaking
Obsoleted: The PackedNativeUnityEngineObject constructor taking an int has been made obsolete. Use the EntityId version instead.
EditorBreaking
Obsoleted: Unity.ProjectAuditor.Editor.CodeAnalysisFlags.DevelopmentBuild has been deprecated as a result of the DEVELOPMENT_BUILD C\# preprocessor directive being deprecated. It will be removed in a future release. Please use DebugManagedCodeVariant instead.
EditorBreaking
Added: Introduced IOnAdded and IOnRemoved, which can be added to an IComponentData to receive callbacks when the component has been added/removed to/from an Entity.
EntitiesBreaking
Deprecated: Managed components are now deprecated and will be removed in a future version.
EntitiesBreaking
Deprecated: PlaybackPolicy for EntityCommandBuffers have been deprecated. In the future EntityCommandBuffers can only be played back once. This is done as multi-playback has caused a lot of bugs in the past and required extensive infrastructure.
EntitiesBreaking
Deprecated: The static class EntitiesJournaling is scheduled for removal in a future release. It is recommended to remove dependencies on this API.
EntitiesBreaking
Deprecated: PostLoadCommandBuffer is deprecated. Build the per-instance data on a regular entity in the main world and pass it via SceneSystem.LoadParameters.ImportEntity (or set RequestSceneLoaded.ImportEntity on the scene or section meta entity). The streaming system copies the referenced entity into the per-section streaming world for ProcessAfterLoadGroup systems to query.
EntitiesBreaking
Deprecated: SubScene.HierarchyColor is now obsolete because the SubScene Hierarchy color support has been removed from the Hierarchy window.
EntitiesBreaking
Deprecated: Support for OpenGL ES for Entities Graphics is deprecated. While the graphics API itself remains a valid choice, the Entities Graphics package specifically will no longer support it in a future version of Unity.
Entities GraphicsBreaking
Obsoleted: Cookie.instanceID is deprecated. Use entityId instead.
GIBreaking
Obsoleted: DirectionalLight.instanceID is deprecated. Use entityId instead.
GIBreaking
Obsoleted: DiscLight.instanceID is deprecated. Use entityId instead.
GIBreaking
Obsoleted: LightDataGI.cookieID is deprecated. Use cookieTextureEntityId instead.
GIBreaking
Obsoleted: LightDataGI.InitNoBake(int lightInstanceID) is deprecated. Use InitNoBake(EntityId lightEntityId) instead.
GIBreaking
Obsoleted: LightDataGI.instanceID is deprecated. Use entityId instead.
GIBreaking
Obsoleted: PointLight.instanceID is deprecated. Use entityId instead.
GIBreaking
Obsoleted: RectangleLight.instanceID is deprecated. Use entityId instead.
GIBreaking
Obsoleted: SpotLight.instanceID is deprecated. Use entityId instead.
GIBreaking
Obsoleted: SpotLightBoxShape.instanceID is deprecated. Use entityId instead.
GIBreaking
Obsoleted: SpotLightPyramidShape.instanceID is deprecated. Use entityId instead.
GIBreaking
Obsoleted: RayTracingAccelerationStructure.InstanceData.instanceID is deprecated. Use entityId instead.
GraphicsBreaking
Obsoleted: RenderParams.instanceID is deprecated. Use entityId instead.
GraphicsBreaking
Deprecated: The X86_64 and Universal options for the iOS Simulator Architecture setting are now marked as deprecated.
iOSBreaking
Obsoleted: TransformAccessArray.Add(int instanceId) is obsolete. Use TransformAccessArray.Add(EntityId) instead.
KernelBreaking
Deprecated: Added UnmanagedGhostPresentationGameObjectPrefab, an unmanaged IComponentData equivalent of GhostPresentationGameObjectPrefab (now deprecated) that references its client/server prefabs through UnityObjectRef<GameObject>. The Ghost Presentation GameObject baker populates both variants during the deprecation window. Please only use UnmanagedGhostPresentationGameObjectPrefab moving forward.
Netcode for EntitiesBreakingServer
Obsoleted: NetworkDriverStore.Disconnect is obsoleted in favor of the new NetworkStreamDriver.Disconnect.
Netcode for EntitiesBreaking
Obsoleted: ClosestPointCommand(Vector3, int colliderInstanceID, Vector3, Quaternion, Vector3) is obsolete. Use ClosestPointCommand(Vector3, EntityId colliderEntityId, Vector3, Quaternion, Vector3) instead.
PhysicsBreaking
Obsoleted: ClosestPointCommand.colliderInstanceID is deprecated. Use colliderEntityId instead.
PhysicsBreaking
Obsoleted: ColliderHit.instanceID is deprecated. Use entityId instead.
PhysicsBreaking
Obsoleted: ContactPair.colliderInstanceID is deprecated. Use colliderEntityId instead.
PhysicsBreaking
Obsoleted: ContactPair.otherColliderInstanceID is deprecated. Use otherColliderEntityId instead.
PhysicsBreaking
Obsoleted: ContactPairHeader.bodyInstanceID is deprecated. Use bodyEntityId instead.
PhysicsBreaking
Obsoleted: ContactPairHeader.otherBodyInstanceID is deprecated. Use otherBodyEntityId instead.
PhysicsBreaking
Obsoleted: ModifiableContactPair.bodyInstanceID is deprecated. Use bodyEntityId instead.
PhysicsBreaking
Obsoleted: ModifiableContactPair.colliderInstanceID is deprecated. Use colliderEntityId instead.
PhysicsBreaking
Obsoleted: ModifiableContactPair.otherBodyInstanceID is deprecated. Use otherBodyEntityId instead.
PhysicsBreaking
Obsoleted: ModifiableContactPair.otherColliderInstanceID is deprecated. Use otherColliderEntityId instead.
PhysicsBreaking
Obsoleted: Physics.BakeMesh(int meshID, bool convex) is obsolete. Use BakeMesh(EntityId meshEntityId, bool convex) instead.
PhysicsBreaking
Obsoleted: Physics.BakeMesh(int meshID, bool convex, MeshColliderCookingOptions) is obsolete. Use BakeMesh(EntityId meshEntityId, bool convex, MeshColliderCookingOptions) instead.
PhysicsBreaking
Obsoleted: RaycastHit.colliderInstanceID is obsolete. Use RaycastHit.colliderEntityId instead.
PhysicsBreaking
Obsoleted: "ChainGeometry(ReadOnlySpan<Vector2> vertices)" is now obsolete as it can lead to invalid vertices when used with managed arrays. Please use "PhysicsChain.Create(PhysicsBody body, ReadOnlySpan<Vector2> vertices, PhysicsChainDefinition definition)" instead.
Obsoleted: SceneHandle implicit conversion from int is deprecated. Use SceneHandle.FromRawData(ulong) instead.
Scene ManagerBreaking
Obsoleted: SceneHandle implicit conversion from uint is deprecated. Use SceneHandle.FromRawData(ulong) instead.
Scene ManagerBreaking
Obsoleted: SceneHandle implicit conversion to int is deprecated. Use SceneHandle.GetRawData() instead.
Scene ManagerBreaking
Obsoleted: SceneHandle implicit conversion to uint is deprecated. Use SceneHandle.GetRawData() instead.
Scene ManagerBreaking
Obsoleted: SceneManager.MoveGameObjectsToScene(NativeArray<int>, Scene) is deprecated. Use MoveGameObjectsToScene(NativeArray<EntityId>, Scene) instead.
Scene ManagerBreaking
Deprecated: HierarchyExtensions.GetEntityIds is deprecated. Use Hierarchy.GetEntityIdsFromNodes instead.
Deprecated: HierarchyExtensions.GetEntityId is deprecated. Use Hierarchy.GetEntityIdFromNode instead.
Deprecated: HierarchyExtensions.GetNodes is deprecated. Use Hierarchy.GetNodesFromEntityIds instead.
Deprecated: HierarchyExtensions.GetNode is deprecated. Use Hierarchy.GetNodeFromEntityId instead.
Obsoleted: Deprecated AppDomain.GetAssemblies, Assembly.Location, Assembly.Load, and BinaryFormatter APIs.
ScriptingBreaking
Obsoleted: The Hierarchy.GetAllNodeTypeHandlersBaseCount method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The Hierarchy.GetAllNodeTypeHandlersBase method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The Hierarchy.RegisterNodeTypeHandler method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The Hierarchy.SortChildren method with a bool recurse parameter is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The Hierarchy.UnregisterNodeTypeHandler method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyCommandList.SortChildren method with a bool recurse parameter is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyFlattened.Hierarchy property is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyFlattenedNodeChildren class is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyNodeTypeHandlerBase.ChangesPending method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyNodeTypeHandlerBase.Dispose method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyNodeTypeHandlerBase.IntegrateChanges method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyNodeTypeHandlerBase constructor with a hierarchy parameter is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.ClearFlags method with a bool recurse parameter is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.DoesNotHaveAllFlagsCount method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.DoesNotHaveAllFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.DoesNotHaveAnyFlagsCount method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.DoesNotHaveAnyFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.EnumerateNodesWithAllFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.EnumerateNodesWithAnyFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.EnumerateNodesWithoutAllFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.EnumerateNodesWithoutAnyFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.GetIndicesWithAllFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.GetIndicesWithAnyFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.GetIndicesWithoutAllFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.GetIndicesWithoutAnyFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.GetNodesWithAllFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.GetNodesWithAnyFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.GetNodesWithoutAllFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.GetNodesWithoutAnyFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.HasAllFlagsCount method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.HasAllFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.HasAnyFlagsCount method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.HasAnyFlags method is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.HierarchyFlattned property is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.Hierarchy property is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.SetFlags method with a bool recurse parameter is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewModel.ToggleFlags method with a bool recurse parameter is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyViewNodesEnumerable class is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: The HierarchyWindow.InitializingView event is now marked as an obsolete error.
ScriptingBreaking
Obsoleted: GameObject.SetActiveRecursively() is obsolete. Use GameObject.SetActive(), which is now inherited by children.
ScriptingBreaking
Removed: Removed Component.rigidbody. Use Component.GetComponent<Rigidbody>() instead. With this change, Component.rigidbody will no longer be automatically upgraded to Component.GetComponent<Rigidbody>() and will instead have to be manually changed by the user.
ScriptingBreaking
Removed: Removed GameObject.rigidbody. Use GameObject.GetComponent<Rigidbody>() instead. With this change, GameObject.rigidbody will no longer be automatically upgraded to GameObject.GetComponent<Rigidbody>() and will instead have to be manually changed by the user.
ScriptingBreaking
Deprecated: The Editor now logs a warning when loading serialized objects below supported minimum version.
SerializationBreaking
Deprecated: CoreBuildData.developmentBuild is now [Obsolete] and always returns false. Use CoreBuildData.useDiagnosticChecks to gate diagnostic stripping decisions in build processors.
SRP CoreBreaking
Obsoleted: Terrain.GetKeepUnusedCameraRenderingResources(int cameraInstanceID) is obsolete. Use GetKeepUnusedCameraRenderingResources(EntityId cameraEntityId) instead.
TerrainBreaking
Obsoleted: Terrain.SetKeepUnusedCameraRenderingResources(int cameraInstanceID, bool keepUnused) is obsolete. Use SetKeepUnusedCameraRenderingResources(EntityId cameraEntityId, bool keepUnused) instead.
TerrainBreaking
Removed: Removed MaterialReferenceManager.AddMaterialReference(Material, TMP_FontAsset, ref MaterialReference\[\], Dictionary<int, int>) Removed MaterialReferenceManager.AddMaterialReference(Material, TMP_SpriteAsset, ref MaterialReference\[\], Dictionary<int, int>) Removed TMP_Asset.instanceID Removed ITextElement.GetInstanceID() Removed TriggerEvent.delegates Removed Graphic.OnFillVBO(List<UIVertex>) Removed IMask Removed InputField.caretSelectPosition Removed MaskableGraphic.m_IncludeForMasking Removed MaskableGraphic.m_ShouldRecalculate Removed MaskableGraphic.ParentMaskStateChanged() Removed StencilMaterial.Add(Material, int) Removed BaseVertexEffect Removed IVertexModifier
uGUIBreaking
Obsoleted: Class UIToolkitInputConfiguration is now obsolete and can be kept in a project but will produce an error. Its only method, SetRuntimeInputBackend, is also now obsolete with error.
UI ToolkitBreaking
Obsoleted: Enum UIToolkitInputBackendOption is now obsolete and can be kept in a project but will produce an error. It's obsolete value LegacyBackend is also now producing an error if used.
UI ToolkitBreaking
Removed: Removed the UniqueStyleString.value property. Replaced it with UniqueStyleString.ToString().
UI ToolkitBreaking
Removed: Removed the UniqueStyleString explicit conversion operators to and from string.
UI ToolkitBreaking
Removed: Removed UxmlTraits, UxmlFactory, and associated code.
UI ToolkitBreaking
Font fallback now uses the ASystemFontIterator API on Android 10+ to avoid a breaking change when /etc/fonts.xml is removed on Android 16 and above.
AndroidBreaking
Removed bones per vertex from build usage data and added asset issues to the Project Auditor to detect unused mesh bone weights.
Build PipelineBreaking
Removed vertex channels from build usage data and added asset issues to the Project Auditor to detect unused mesh vertex channels.
Build PipelineBreaking
Deprecated the Oculus XR package.
EditorBreakingXR
Removed null transform warnings when adding null Transforms or invalid TransformHandles to TransformAccessArrays.
The Intel macOS Editor is deprecated in Unity 6.6 and it will no longer be available after Unity 6.7 LTS.
EditorBreakingmacOS
Removed the Scheduling Constraints section and EntityQuery popup in the System window. Removed the Attributes and Relationships tabs in the Inspector when selecting a component.
EntitiesBreaking
Removed world column in the System window and column option in the System menu.
EntitiesBreaking
The entities hierarchy window is marked as deprecated. This window will be removed in a future version of Unity.
EntitiesBreaking
Removed Dynamic Batching due to limited performance benefits on modern hardware.
GraphicsBreaking
The Intel (x86_64) and Universal (Intel + Apple silicon) architecture targets are now marked as deprecated in the Build Settings and Build Profiles windows. A deprecation warning is displayed when building for these architectures. Apple silicon is the recommended target architecture for new macOS builds.
macOSBreakingWindows
- Reworked the Multiplayer Center window to focus on game genre selection with simplified options for users. IOnboardingSection and any related API is obsolete and will be removed in a future release.
MultiplayerBreaking
Made changes required for GameObject side input management for prediction. Will be visible once the experimental define is removed.
Netcode for EntitiesBreaking
The UNITY_64 and DEVELOPMENT_BUILD C\# preprocessor directives are now deprecated and produce a warning when used. Use a runtime check (such as IntPtr.Size) or bitness-independent code instead of UNITY_64. Use one of the managed code variant defines (DEBUG, UNITY_ENABLE_CHECKS, UNITY_INCLUDE_INSTRUMENTATION) when different code paths are needed per managed code variant, or Debug.isDebugBuild when a runtime check for a development build is sufficient.
ScriptingBreaking
Deprecated #pragma enable_ray_tracing_shader_debug_symbols in favor of the new #pragma enable_debug_symbols.
ShadersBreaking
Removed the package dependency on com.unity.modules.terrain.
Removed the experimental tag from WebGPU.
WebGLBreaking
com.unity.sentis - "This package is no longer supported on this editor version. Use com.unity.ai.inference instead."
com.unity.barracuda - "This package is no longer supported on this editor version. Use com.unity.ai.inference instead."
com.unity.serialization - "This package is no longer supported on this editor version."
Breakingcom.unity.serialization
com.unity.xr.oculus - "This package is no longer supported on this editor version."
Added: Project Auditor: Added Descriptor.IsSupported, so analyzers can check if an issue is valid for the current platform/version.
EditorAPI change
Added: Added the CompanionComponent<T> unmanaged wrapper and the EntityManager.GetCompanion<T> extension so that companion components can be read from systems without using the obsolete managed component API.
EntitiesAPI change
Added: Added overloads for RenderSpriteInstanced to support List, NativeArray, and ReadOnlySpan.
2DAPI change
Added: Added new structs in the Unity.AI.Navigation.LowLevel namespace with methods that you can call in jobs. To help you debug race conditions, the added queries can throw safety exceptions when ENABLE_UNITY_COLLECTIONS_CHECKS is defined. The new structs are: NavWorld, NavNode, NavLocation and NavQueryBuffer. Two new enums, NavQueryStatus and NavNodeType, help in various operations.
AIAPI change
Added: Added PlayerSettings.Android.gamepadSupportLevel, the UI was already present, only API was missing.
AndroidAPI change
Changed: AndroidGamepadSupportLevel.SupportsDPad was renamed to AndroidGamepadSupportLevel.None.
AndroidAPI change
Added: Added GeneratorInstance.Result.isFinished and Finished() to determine whether a nested generator finished producing samples.
AudioAPI change
Added: Added UnityWebRequestMultimedia.GetAudioClip(string uri, AudioType audioType, bool ambisonic) overload and corresponding DownloadHandlerAudioClip constructors for loading ambisonic audio from StreamingAssets or other runtime sources.
AudioAPI change
Added: Added the method BuildReport.LoadReport() to support loading BuildReports files from past builds, regardless of their location inside or outside of the active Unity project.
Build PipelineAPI change
Changed: Made BuildContentDirectoryParameters.targetPlatform and BuildContentDirectoryParameters.subtarget internal.
Build PipelineAPI change
Added: Added new API ObjectNames.GetUniqueObjectName - Returns a unique version of name relative to a list of existing Unity objects, automatically appending a numeric suffix if needed (e.g. "Rock (1)"). Similar to GetUniqueName, but accepts live UnityEngine.Object references directly, which bypasses string marshalling allocations, as well as array allocations.
EditorAPI change
Added: Added PlayerSettings.GetRayTracingFeaturesSupportForPlatform Editor-only API for retrieving the implementation status for various ray tracing feature on specified platforms.
EditorAPI change
Added: Added public api for hosting Editor Tools in custom windows.
EditorAPI changeWindows
Added: Added support for storing ULongs in SessionState. This adds the following APIs: EraseEntity, EraseEntityIdArray, GetEntityId, GetEntityIdArray, SetEntityId, and SetEntityId.
EditorAPI change
Added: Added the GetWire method to the Graph class. This method returns a Wire, a runtime-friendly representation of a single logical connection between an output port and an input port in a graph.
EditorAPI change
Added: Added BuildProfile.CreateBuildProfile API for creating build profiles for specified platforms and automatically installs required platform packages if not already installed.
EditorAPI change
Added: Animation: Added AnimationEventInfo ref struct as a non-allocating alternative parameter for animation event callbacks. This new stack-allocated struct eliminates garbage collection overhead when handling animation events, providing significant performance benefits for animation-heavy scenes. AnimationEventInfo provides read-only access to all animation event parameters and state information from both Animator and legacy Animation components. Existing AnimationEvent callbacks remain fully backwards compatible.
EditorAPI change
Added: GTK : Added an API to access the GUID of different graph elements.
EditorAPI change
Added: GTK : Added API to add custom actions to the GTK main toolbar with the GraphToolbarElement attribute.
EditorAPI change
Added: GTK : Added port.WithCapacity API to change port capacity.
EditorAPI change
Added: Project Auditor: Added Descriptor.IsSupported, so analyzers can check if an issue is valid for the current platform/version.
EditorAPI change
Added: \[Android\] Added "Profileable Shell" setting for Release builds in Android build settings for Unity 6.6.
EditorAPI changeAndroid
Added: \[Android\] Added internal analytics for new "Profileable Shell" setting for Release builds in Android build settings for Unity 6.6.
EditorAPI changeAndroid
Added: \[Android\] Added manifest entry for new "Profileable Shell" setting for Release builds in Android build settings for Unity 6.6.
EditorAPI changeAndroid
Added: \[Android\] Added UI text and tooltip for new "Profileable Shell" setting for Release builds in Android build settings for Unity 6.6.
EditorAPI changeAndroid
Changed: Add signature using an organization ID to exported asset package.
EditorAPI change
Changed: Added a Built-In category to the Material Editor shader selector when a Scriptable Render Pipeline is in use.
EditorAPI change
Added: Add ReadOnlySpan overload to DynamicBuffer<T>.AddRange
EntitiesAPI change
Added: Added EntitySceneImporterDeterminismChecker.Check to help validate if a SubScene's bakers bakes deterministically.
EntitiesAPI change
Added: Added the CompanionComponent<T> unmanaged wrapper and the EntityManager.GetCompanion<T> extension so that companion components can be read from systems without using the obsolete managed component API.
EntitiesAPI change
Added: Added BlobArray<T>.AsSpan(), returning a ReadOnlySpan<T> view on the underlying data.
EntitiesAPI change
Added: Added BlobString.AsSpan(), returning a ReadOnlySpan<byte> view of the underlying UTF-8 characters.
EntitiesAPI change
Added: Adds an excludedFlags parameter to TypeManager.GetSystemTypeIndices, by default to WorldSystemFilterFlags.Disabled, then all existing callers are unaffected.
Added: RequestSceneLoaded now has an optional ImportEntity field, also exposed via SceneSystem.LoadParameters.ImportEntity, that references a main-world entity whose components are copied into each section's streaming world before ProcessAfterLoadGroup runs. Use this to deliver per-instance data (for example, a unique transform offset) to ProcessAfterLoad systems on scenes loaded with SceneLoadFlags.NewInstance.
EntitiesAPI change
Changed: HierarchySubSceneHandler has been renamed to HierarchySubSceneAuthoringHandler, to better describe its purpose. If you are making use of the HierarchySubSceneHandler class, please update your code to HierarchySubSceneAuthoringHandler instead.
EntitiesAPI change
Changed: RenderMeshArray is now an unmanaged shared component; query it with GetSharedComponent<RenderMeshArray> instead of GetSharedComponentManaged.
Entities GraphicsAPI change
Added: Added UnityComputeGPU enum to LightingSettings.Lightmapper. Use this light baker for cross platform GPU light baking.
GIAPI change
Added: Added API to set, get, and clear wire visuals in Play mode. The wire visuals are set using the WireAppearance struct, which determines the width, opacity, dashed appearance, and animation state of the wire.
Graph ToolkitAPI change
Added: Added API to the Graph Visualization Context class to allow developers to set a fill amount and a looping animation on a node's accent.
Graph ToolkitAPI change
Added: Added overloads to GraphLogger to make it possible to add actions associated with the logs. These can be quick fixes to the logged issue or arbitrary code.
Graph ToolkitAPI change
Added: Added the Graph.AssetGuid API to retrieve graph and subgraph asset GUIDs.
Graph ToolkitAPI change
Added: Added the Graph.IsConnectionAllowed API to define ports constraints.
Graph ToolkitAPI change
Added: Added the INodeOption.TrySetValue API.
Graph ToolkitAPI change
Added: Added: API to set, get, and clear Port Previews. Port previews are labels displayed next to ports and can display port information as a string in both Edit Mode and Play Mode.
Graph ToolkitAPI change
Changed: Added an overload to the NodeAttribute constructor that accepts a path to a stylesheet. The specified stylesheet is applied to VisualElement instances of that Node type.
Graph ToolkitAPI change
Added: Added additional overloads to the GraphicsStateCollection APIs, AddVariant, AddVariants, RemoveVariant, and ContainsVariant that now allow passing in an explicit GlobalKeywords list to use when specifying variants.
GraphicsAPI change
Added: Added ReflectionProbeSortingCriteria.ImportanceThenSizeInverse and CullingOptions.SkipTexturelessReflectionProbes.
GraphicsAPI change
Added: Added LoadFromJson function to GraphicsStateCollection that allows to load collections directly from a JSON-formatted string.
GraphicsAPI change
Added: Added UnityEngine.Rendering.GraphicsApiValidation.IsValidationSupported(), which returns true only when the active GraphicsDeviceType has a validation-layer backend.
GraphicsAPI change
Added: Extend the GraphicsStateCollection Importer Inspector window to link Shaders to existing shader assets.
GraphicsAPI change
Changed: Moved the GraphicsStateCollection API from UnityEngine.Experimental.Rendering to UnityEngine.Rendering namespace.
GraphicsAPI change
Changed: Renamed the public UnityEngine.D3D12Validation class to UnityEngine.GraphicsApiValidation.
GraphicsAPI change
Added: Added iPhone 17e device generation enum and screen cutouts.
iOSAPI change
Added: Added NetworkStreamDriver.Disconnect that has some checks before disconnecting, and is in the same place as where Connect is located.
Netcode for EntitiesAPI change
Added: When using the experimental single world host, added BroadcastTargets to SendRpcCommandRequest to filter RPCs from being sent to the host world when sending RPCs from server to all clients.
Netcode for EntitiesAPI changeServer
Changed: Moved the Export/Import Package API from AssetDatabase to AssetPackage.
Package ManagerAPI change
Added: Added Physics.generateOnTriggerStayEvents as a read-only property to query if OnTriggerStay events are enabled.
PhysicsAPI change
Added: Added the angularVelocity property to the Collision type.
PhysicsAPI change
Added: Added the bodyAngularVelocity property to the ContactPairHeader type.
PhysicsAPI change
Added: Added the bodyLinearVelocity property to the ContactPairHeader type.
PhysicsAPI change
Added: Added the linearVelocity property to the Collision type.
PhysicsAPI change
Added: Added the otherBodyAngularVelocity property to the ContactPairHeader type.
PhysicsAPI change
Added: Added the otherBodyLinearVelocity property to the ContactPairHeader type.
PhysicsAPI change
Added: Added the thisAngularVelocity property to the Collision type.
PhysicsAPI change
Added: Added the thisArticulationBody property to the Collision type.
PhysicsAPI change
Added: Added the thisBody property to the Collision type.
PhysicsAPI change
Added: Added the thisGameObject property to the Collision type.
PhysicsAPI change
Added: Added the thisLinearVelocity property to the Collision type.
PhysicsAPI change
Added: Added the thisRigidbody property to the Collision type.
PhysicsAPI change
Added: Added the thisTransform property to the Collision type.
PhysicsAPI change
Added: Added "ChainSegmentGeometry.CreateSegments()" method to create an array of ChainSegmentGeometry based upon a set of vertices. This can be used as an alternative to using PhysicsChain directly.
Added: Added "PhysicsChain.UpdateVertices()" method so a PhysicsChain can now update its vertices. This removes the need to recreate the chain or iterate all existing segments, changing each one individually.
Added: Added aPhysicsUserData.objectValueId property to expose the EntityID used for the objectValue property. The property now also displays the EntityId, object name, and type as a tooltip, or "None" if no Entity exists, or "Invalid Object Id" if the EntityID does not represent a valid object.
Added: PhysicsComposer can now both get or destroy all composers using PhysicsComposer.GetComposers() and PhysicsComposer.DestroyAll() methods.
Added: PhysicsComposer can now convert both CircleGeometry and CapsuleGeometry to PolygonGeometry using a static method of PhysicsComposer.ToPolygons().
Added: PhysicsWorld, PhysicsBody, PhysicsShape and PhysicsJoint can set owner-only PhysicsUserData with SetOwnerUserData() and retrieve it with .ownerUserData.
Added: Added Add Object-context overloads to ProfilingScope and CommandBuffer.BeginSample api.
ProfilerAPI change
Added: Added Unity Object and string metadata context support for ProfilerMarker.Auto().
Added: Added a Windowing API to set the pipeline Id of a QNX window.
QNXAPI change
Added: Added a Windowing API to set the window class of a QNX window.
QNXAPI change
Added: Added z-order control for QNX screen windows through the Windowing API.
QNXAPI changeWindows
Added: Enabled window transparency setting in QNX using Windowing.
QNXAPI change
Added: Added implicit conversion between int2 <-> VectorInt2.
ScriptingAPI change
Added: Added implicit conversion between int3 <-> VectorInt3.
ScriptingAPI change
Added: Added support for creating SearchItem objects from a ULong using SearchExpression.CreateItem(ulong value, string label = default(string)).
SearchAPI change
Added: Added SearchExpression.TryConvertToULong(SearchItem item, out ulong value).
SearchAPI change
Added: Added a VariantsUploadedToGpuLastFrame class to query shader variants uploaded to the GPU driver during the last frame in the player.
ShadersAPI change
Added: Added depth target support to the existing render graph input attachment API.
SRP CoreAPI change
Changed: ConstantBuffer's type argument is now constrained to be a non-nullable unmanaged type (where T : unmanaged) instead of a non-nullable value type (where T : struct). Non-nullable unmanaged type was already enforced at runtime in ConstantBuffer implementation, we now enforce it at compile time.
SRP CoreAPI change
Added: Added ITestCommandWrapper interface, which allows external packages to wrap test commands with custom behavior.
Test FrameworkAPI change
Added: Added TestCommandWrapperRegistry class, which is a registry for ITestCommandWrapper implementations to be applied during test execution.
Test FrameworkAPI change
Changed: Made IEnumerableTestMethodCommand interface public to enable external test command wrappers to support coroutine-style execution.
Test FrameworkAPI change
Added: Added a public enumeration for TouchScreenKeyboard in-place editing behavior, with options to allow, disallow or keep current behavior when deciding to show on-screen keyboard when interacting with input fields.
TestsAPI change
Added: Added new RectTransform convenience APIs to simplify common UI layout workflows, including local edge access, world-space and screen-space rect queries, containment checks, and pivot/anchor adjustments.
uGUIAPI change
Added: Added readonly properties to GridLayoutGroup to indicate the number of rows and columns created during the last layout pass.
uGUIAPI change
Added: Added RectTransform.SetPivotWithCounterAdjust(Vector2 newPivot, bool adjustChildren = true). This method sets the pivot while counter-adjusting the rect so its world-space position remains unchanged. This is similar to adjusting the pivot via the Rect tool in the scene view, or via the RectTransform inspector with "Raw mode" disabled.
uGUIAPI change
Added: Added Canvas.batchingInterval to control whether canvas updates are gated by OnDemandRendering in player builds, reducing unnecessary UI batching on frames where rendering is skipped.
uGUIAPI change
Added: Added RectTransform.FitInsideCoplanarRectTransform, RectTransform.TryFitInsideCoplanarRectTransform, and RectTransform.IsCoplanarWith to constrain a RectTransform (e.g. a tooltip or popup panel) within the bounds of another coplanar RectTransform.
uGUIAPI change
Added: Added a new API to clear a VisualElement's inline styles (element.style.Clear()).
UI ToolkitAPI change
Added: Added a CallbackEventHandler.RegisterCallbacks method override with CallbackOptions argument.
UI ToolkitAPI change
Added: Added the CallbackEventHandler.UnregisterAllRemovableCallbacks method.
UI ToolkitAPI change
Added: Added the CallbackOptions enum.
UI ToolkitAPI change
Added: Added UniqueStyleString struct to replace string for VisualElement class list methods.
UI ToolkitAPI change
Added: Added UQuery.Class method using UniqueStyleString as argument.
UI ToolkitAPI change
Added: Added VisualElement.AddToClassList methods using UniqueStyleString as argument.
UI ToolkitAPI change
Added: Added VisualElement.ContainsClassList methods using UniqueStyleString as argument.
UI ToolkitAPI change
Added: Added VisualElement.EnableInClassList method using UniqueStyleString as argument.
UI ToolkitAPI change
Added: Added VisualElement.GetClassNames methods returning UniqueStyleString enumerable.
UI ToolkitAPI change
Added: Added VisualElement.RemoveFromClassList method using UniqueStyleString as argument.
UI ToolkitAPI change
Added: Added VisualElement.ToggleInClassList method using UniqueStyleString as argument.
UI ToolkitAPI change
Added: Added EventArg struct.
UI ToolkitAPI change
Added: Added EventCallbackDefinition struct.
UI ToolkitAPI change
Added: Added EventCallbackGroup struct.
UI ToolkitAPI change
Added: Added UniqueStyleString IsEmpty property providing a fast test for empty string representation.
UI ToolkitAPI change
Added: Added UniqueStyleString IsNullOrEmpty property providing a fast test for null or empty string representation.
UI ToolkitAPI change
Added: Added UniqueStyleString IsNull property providing a fast test for null string representation.
UI ToolkitAPI change
Added: Added UniqueStyleString.Empty static field providing support for empty string representation.
UI ToolkitAPI change
Added: Added UniqueStyleString.IsSame(string) to compare a UniqueStyleString for equality against a regular string without converting either to the other type.
UI ToolkitAPI change
Added: Added UniqueStyleString.Null static field providing support for null string representation.
UI ToolkitAPI change
Added: Added UniqueStyleString.ToString() to allow retrieving the original string from a UniqueStyleString.
UI ToolkitAPI change
Changed: Changed EventArg static class into an abstract class.
UI ToolkitAPI change
Changed: Changed EventArg<TArg> struct to an abstract class with EventArg as its base class.
UI ToolkitAPI change
Changed: Changed UIMesh fields to properties with getters and setters.
UI ToolkitAPI change
Added: Added property fullscreenElementID on createUnityInstance config param to control the DOM element used for fullscreen mode
WebGLAPI change
6000.0.67f1: [iOS] Audio is cut out when accessing iOS Control Center
6000.5.3f1: [Entities] MissingReferenceException is thrown in the Hierarchy window when entering Play mode with a scene that contains an ECS SubScene
6000.6.0a7: 2D Platformer Tutorial Template spawns more than 150 API warnings and outdated asset version alerts on initial creation
6000.6.0a7: [Universal 3D Sample] NullReferenceException is thrown when opening GardenScene in URP 17.3.0 sample
Editor crashes on "(Unity) WriteObjectToVector" when entering into the Play Mode
Fixed an issue where small artifact data types could be incorrectly garbage collected, leading to leaks and even corruption (UUM-146807) First seen in 6000.6.0b3. Fixed in 6000.6.0b5.
BatchPackedCullingViewID::GetEntityID generates the EntityID using the ulong handle directly instead of an int mask (UUM-146214) Fixed in 6000.6.0b5.
Fixed black bars and missing section titles in the Memory module's details view. (UUM-145754) First seen in 6000.6.0b1.
ProfilerUUM-145754
Added the Tilemap Profiler module.
2D
Added the 2D Graphics Profiler module.
Editor
Added Vivox to Quick Installer menu.
Editor
The macOS Editor is now signed and notarized by Apple for added security. It is no longer necessary to override the system security policy to start the Editor application.
EditormacOS
Added GPU Resident Drawer telemetry to the Rendering Profiler module including a Chart Mode dropdown for GRD views and a details card with coverage, culling, LOD, and pipeline timing breakdowns.
Graphics
Added Kerberos proxy authentication support.
License
Added a Screenshots module to Profiler and the ability to pin modules to the top of the Profiler window. You can control the capture rate of screenshots from the Profiler preferences.
Profiler
Improved the Entities Memory profiler module and the Entities Structural Changes profiler module by indenting children in the hierarchy, making it easier to parse the data in the module.
Entities
Installers on Windows can now take up to 60% less time due to an optimization in the compression strategy.
Added a details panel to the Highlights module in the Profiler Window.
Profiler
Added two new colors to the Color Blind Mode palette for the Highlights Profiler module.
Profiler
Added a documentation shortcut button in the UI Toolkit Profiler module.
UI Toolkit
Added an updater metrics table in the UI Toolkit Profiler module.
UI Toolkit
Added events support in UI Toolkit Profiler module.
UI Toolkit
Removed force mesh readable from build usage tags. Added a new button to the Particle System Shape Module, Visual Effect, Terrain Paint Detail, and Mesh Collider to fix non-readable meshes.
Build Pipeline
The Profiler window now opens to the Highlights module by default when opening for the first time in an Editor session.
Profiler
UniversalRenderPipelineRuntimeTerrainShaders are automatically stripped from builds when the Terrain module is disabled.
URP
Delayed workspace creation when opening projects from the Unity Hub.
Version Control
Fixed scaler data UI construction in the Adaptive Performance profiler module.
Adaptive PerformanceUUM-138268
Accessibility module's java code is now modularized when the Accessibility module is stripped from a build, all associated java is removed as well.
Android
Edited the path of the OpenJDK license file to be more accurate.
AndroidUUM-138006
Insights module's java code is now modularized when the Insights module is stripped from a build, all associated java is removed as well.
Android
Replace unused Tools 26.1.1 download with empty folder.
AndroidUUM-141878
Fixed a bug where Unity Hub would open when launching the Editor with the -projectPath command-line argument on macOS.
Fixed a rare WindowsEditor crash during window activation due to a compiler optimization bug.
EditorUUM-137226
Fixed an issue where exceptions thrown by Editor windows would cause mismatched profiler samples.
Fixed Hub still opening via the reconnect loop when Editor was launched with -projectPath argument.
EditorUUM-142653
Fixed missing type warning appearing for build profiles when supported platform is not installed.
Fixed the module details panel controller script example.
Editor
Update build profile initialization before returning if it's done.
Entities Memory profiler module is no longer capped at displaying 111 components per archetype.
EntitiesUUM-133607
Added a package shim for Graph Toolkit to prevent namespace conflicts when opening a project from older versions of Unity that have the Graph Toolkit package, which is now a module.
Graph ToolkitUUM-134379
Added a preventive measure to the JPEG decoder used by the "ImageConversion" class to prevent denial-of-service through the exploitation of the LJT-01-003 vulnerability. Unity will now automatically abort the decoding of JPEG files after decoding 1000 progressive scans.
Fixed help button scaling of the Virtual Texturing Profiler module on multi-monitor setups with several pixel densities.
GraphicsUUM-137763
Fixed the link to the Virtual Texturing Profiler module documentation.
GraphicsUUM-137763
Reenabled Input module stress test HighInputAndOutputContention after root cause bugs in MultiWriterSingleReaderAtomicCircularBuffer have been resolved allowing the test to operate as designed again.
Input SystemUUM-129311
Bypassed entitlement cache for queries from Package Manger to ensure accurate results.
License
Ensure UpdateLicense upon reconnection (in floating-license mode).
LicenseUUM-142572
Writing to symbolically linked ULF is prohibited.
LicenseUUM-121827
Fixed Linux Automatic Toolchain Installer not installing Arm64 sysroot for Linux Arm64 Server.
Fixed a regression in MbedTLS that would result in TLS handshake errors when trying to download assets from the Asset Store from the package manager. Potentially other HTTPS endpoints could have been impacted by this regression.
NetworkingUUM-141298
Updated MbedTLS to version 3.6.6 to address some (minor and likely unexploitable) security vulnerabilities.
Fixed misaligned links in the Package Manager Details panel.
Package ManagerUUM-132569
Fixed a crash that would occur with sub-emitters appearing multiple times in the sub emitter module.
ParticlesUUM-142083
Fixed a bug where Profiler could show CPU Hierarchy data in the GPU module.
ProfilerUUM-114839
Fixed an issue where opening the profiler window with the physics CPU module open would throw a InvalidOperationException.
ProfilerUUM-143704
Fixed Highlights module not redrawing captured frame data when re-enabled.
ProfilerUUM-144840
Fixed the Highlights module's 'Target FPS' label being clipped when showing large values.
ProfilerUUM-137768
Moved variable editing components to the UIToolkitAuthoring module.
UI Toolkit
Fixed a warning from ChannelGroupI::getPitch in the fakemod module in WebGLSupport.
VideoUUM-134014
Fixed an issue where download progress reporting in synchronous scene loading with Progressive Asset Loading.
Web
3.7.1 to 3.7.2
2.10.2 to 2.10.3
9.4.1 to 9.5.0
1.3.1 to 1.4.0-pre.2
6.5.0 to 6.6.0
15.0.1 to 16.0.0
14.0.0 to 15.0.0
5.1.1 to 6.0.0
14.0.0 to 15.0.0
15.0.0 to 16.0.0
8.0.0 to 9.0.0
5.0.0 to 6.0.0
3.0.0 to 4.0.0
2.9.0 to 2.11.1
4.16.4 to 4.19.0
1.4.1 to 6.6.0
1.8.28 to 2.0.0
2.10.5 to 6.6.0
2.11.3 to 2.12.4
1.0.1 to 6.6.0
2.4.4 to 2.4.5
1.18.0 to 1.19.0
1.5.9 to 1.5.12
2.0.2 to 4.0.3
1.3.1 to 1.4.0
3.5.1 to 3.5.4
6.0.9 to 6.1.2
2.0.14 to 2.0.15
4.14.2 to 4.15.0
5.1.5 to 5.1.6
4.2.2 to 4.2.5
17.5.0 to 17.6.0
17.5.0 to 17.6.0
com.unity.render-pipelines.high-definition-config: 17.5.0 to 17.6.0
17.5.0 to 17.6.0
17.5.0 to 17.6.0
2.6.0 to 3.0.2
6.2.1 to 6.3.0
3.6.0 to 3.7.2
2.10.2 to 2.10.3
2.0.7 to 2.0.8
1.16.0 to 1.18.0
16.9.0 to 16.10.0
1.4.1 to 1.4.4
17.5.0 to 17.6.0
2.8.3 to 2.9.0
1.7.0 to 1.8.0
3.2.0 to 6.6.0
1.8.9 to 6.6.0
2.0.0 to 2.6.0
6.5.0 to 6.6.0
17.5.0 to 17.6.0
1.9.9 to 1.9.11
6.5.0-pre.2 to 6.6.0-pre.2
6.5.0-pre.2 to 6.6.0-pre.2
6.5.0-pre.2 to 6.6.0-pre.2
2.3.0 to 2.5.0
2.5.3 to 2.6.0
1.7.3 to 1.9.0-pre.1
3.4.0 to 3.6.0-pre.1
3.0.0 to 3.0.1
2.5.0-pre.1 to 2.6.0-pre.1
1.17.0-pre.1 to 1.18.0-pre.2
5.1.5 to 5.1.6
5.0.2 to 6.0.3
1.5.2 to 2.0.3
5.3.1 to 5.3.2
2.0.1 to 3.0.0
6.5.0 to 6.6.0
2.0.1 to 3.0.0
1.1.11 to 1.1.12
2.9.1 to 2.13.0
2.2.8 to 2.2.9
2.0.10 to 2.0.13
1.7.0 to 1.7.2
1.4.0 to 1.4.1
2.1.1 to 2.1.11
1.0.9 to 1.1.0
1.5.1 to 1.6.0
1.5.1 to 1.6.0
1.2.1 to 1.3.0
1.4.1 to 1.4.2
8.10.2 to 9.5.0
1.0.1 to 2.0.0
3.0.5 to 3.1.5
3.0.5 to 3.1.5
com.unity.polyspatial.visionosVisionOS
3.0.5 to 3.1.5
3.0.5 to 3.1.5
3.0.5 to 3.1.5
2.1.2 to 2.2.4
1.9.1 to 1.11.0
1.2.0 to 1.3.0
1.2.0 to 1.4.0-pre.2
2.5.0 to 2.6.1
1.0.1 to 1.1.0
1.0.1 to 1.1.0
1.0.1 to 1.1.0
1.0.1 to 1.1.0
1.0.1 to 1.1.0
1.0.1 to 1.1.0
1.0.1 to 1.1.0
1.0.1 to 1.1.0
5.4.2 to 5.4.3
3.6.2 to 3.6.3
com.unity.package-manager-ui@2.2.0
com.unity.shaderanalysis@1.0.0
com.unity.graph-authoring@1.0.0
com.unity.textmeshpro@5.0.0
com.unity.ui@2.0.0
com.unity.ui.builder@2.0.0
com.unity.project-auditor@2.0.0
com.unity.microsoft.gdk.intelligent-delivery@1.0.0
com.unity.platformtoolkit.steam@1.1.0
com.unity.platformtoolkit.playgamesservices@1.1.0
com.unity.platformtoolkit.gdk@1.1.0
com.unity.platformtoolkit.gamekit@1.1.0
com.unity.platformtoolkit@1.1.0
Added a text filter for the Active Target drop down menu in the Tile Palette.
2DFeature
Added extensibility for Light2D and ShadowCaster2D components via custom provider classes to modify or extend their behavior.
2DFeature
Added Light2D shader stripping support. Option to enable it can be found in the Renderer2DData asset.
2DFeature
Added rendering layer mask support for Lights2D.
2DFeature
You can now link a brush or palette to an active target in the Tile Palette. When switching to a new active target, the Tile Palette switches to the corresponding linked brush or palette.
2DFeature
You can now render the active brush's icon or name next to the brush marquee in the Scene view. This can be toggled in Preferences > 2D > Grid Brush.
2DFeature
Removed legacy and round Android icons.
AndroidFeature
Import result caching in the Accelerator is now disabled by default for new projects since Unity 6.5. Projects upgrading to U6.5 can continue to cache import results, if they already have cache configuration enabled.
Asset PipelineFeature
Added support for using AudioClip as a scriptable generator.
AudioFeature
Added a jsonl log file in the build history containing messages logged during the build. Both Player and ContentDirectory builds now create this file.
Build PipelineFeature
The build report directory for player builds now contains a trace event profile file BuildPlayerTEP.json. This is a copy of Library/Bee/buildreport.json, which is overwritten for each build. By being part of Build History it is possible to see results from past builds, and to compare build performance.
Build PipelineFeature
Added automatic stripping of Tetgen (used by LightProbes) if not using it, to reduce the build size.
CoreFeature
Added Dictionary serialization and authoring in the Inspector with sort-by-key and duplicate-key detection.
CoreFeature
Added a step in the UDP docs pipeline to resolve xref links in engine documentation.
DocumentationFeature
Added a new expression node to simplify inlining mathematical statements.
EditorFeature
Added a new shortcut to toggle Gizmos in the Scene view.
EditorFeature
Added a slider to the CanvasGroup editor to adjust the alpha value.
EditorFeature
Added custom footer actions to the derived platform sdk.
EditorFeature
Added custom styling support for lists and array from the DataTypeStyleMapper.
EditorFeature
Added Mesh Collider triangle counts to the Project Auditor Mesh Colliders view.
EditorFeature
Added Selection History, users can now use optional buttons in the main toolbar or Ctrl/Cmd+\[ and Ctrl/Cmd+\] keyboard shortcuts to navigate the history of selected objects. This allows users to return to a previous selection if they accidentally change the active Inspector object.
EditorFeature
Added selection wireframe support for GPU Resident Drawer (GRD).
EditorFeature
Added support for customizing the Sprite Editor minimum and maximum zoom range in Preferences > 2D > Sprite Editor window (50%-5000%; defaults: 90% minimum, 5000% maximum).
EditorFeature
Added the Swift project type (experimental) option in iOS Player settings.
EditorFeatureiOS
Added Volume and Vertex Density columns to the Project Auditor Meshes view.
EditorFeature
Enabled Define Constraints for native plugins in the Plugin Inspector across platforms.
EditorFeature
GTK : Added list support for variables in the Blackboard and Inspector.
EditorFeature
GTK : Added support for the flag attribute on enum fields.
EditorFeature
Improved memory usage by sharing detail atlas textures across Terrain tiles with identical non-instanced detail prototypes.
EditorFeature
Improved the Project Auditor to now use theAutoStaticsCleanup analyzer when Roslyn is enabled.
EditorFeature
Project Auditor: add Target Framework column to Precompiled Assemblies table.
EditorFeature
Re-Adding the Linux Headless Simulation build target for Simulation Pro clients.
EditorFeatureLinux
The Project Auditor now detects the use of API that will become obsolete in a future Unity version.
EditorFeature
\[uGUI\] Added the SafeArea component to inset RectTransform by the device reported SafeArea.
EditorFeature
Added an option to select the Full or Thin Link Time Optimization (LTO) mode.
EmbeddedLinuxFeature
Added ECS Components to the new Hierarchy search filter window.
EntitiesFeature
SubScene nodes in the Hierarchy window now support double-click to toggle open/close, and right-click context menu actions for Reimport and Open/Close.
EntitiesFeature
You can now use IComponentData, ISharedComponentData, IBufferElementData, or ICleanupComponentData to filter the Hierarchy. To do so, enter t:ComponentName in the search field. For example: t:LocalToWorld. Make sure you have the new Hierarchy enabled, as this feature only works there.
EntitiesFeature
Added the Unity Compute GPU Light Baker. This new light baker is built upon Unity .compute shaders and can utilize hardware accelerated ray tracing. On devices without hardware raytracing a compute shader based emulation path is used. When upgrading to the Unity Compute Light Baker, note that the Unity Compute Light Baker samples the environment and emissive surfaces with the direct sample count. To improve quality increase the direct sample count. To reduce bake time, set GPU Baking Profile to Highest Performance.
GIFeature
Added Graph Visualization feature that allows reporting visualization data to a GraphToolkit graph. This can be used in Edit mode or Play mode to visualize data within the graph.
Graph ToolkitFeature
Added Mesh LOD GPU Instancing support.
GraphicsFeature
Added per shadow cascade small mesh culling values to support more aggressive shadow culling.
GraphicsFeature
Introduced Hardware Profiles. Fine-tune Graphics API selection and filter devices on Android using the new Editor scripting API, allowing faster deployment of APK configuration changes.
GraphicsFeatureAndroid
Modified the Frame Debugger to display inner ConstantBuffer values that are now transferable over a remote connection.
GraphicsFeature
Added support for gRPC through UnityWebRequest on iOS.
iOSFeature
A modernised logging backend is now available for editor platforms. The framework is enabled by default but can be disabled via Editor Preferences. The new framework allows us to easily support structured logging. When enabled, structured logging output is written to a new file, Editor.jsonl, created alongside the existing Editor.log. This makes it significantly easier to parse, filter, and integrate editor logs with external tools and log aggregation pipelines. Player support is planned for a future release.
KernelFeature
Added an option to select the Full or Thin Link Time Optimization (LTO) mode.
LinuxFeature
Added support for using transports originally written for Netcode for GameObjects directly within Unity Transport, via the new NetworkTransportInterface network interface.
MultiplayerFeature
Added libupb library support for InsightModules (auto generate C code & library linking).
N/A \(internal\)Feature
Added interpolation smoothing support for ghost prefabs when in *Single World* mode by interpolating the LocalToWorld values between the current and last tick's LocalTransform result. If this smoothing is enabled, the host player observes about half a ticks worth of input latency on smoothed ghosts. This feature is not yet supported for GameObject ghosts.
Netcode for EntitiesFeature
Added support for overiding GhostComponentVariation defaults through baking code. Add the GhostVariantBakedOverride dynamic buffer, then use the Append... extension methods to set a new default variant for that prefab. Note: The IBaker.AppendToBuffer method does not support adding to the same buffer from two different bakers.
Netcode for EntitiesFeature
UnityWebRequest now support TLS 1.3. No change is required to enable this. The protocol is automatically used with servers that support it. TLS 1.2 remains supported and is used with servers that don't support 1.3.
NetworkingFeature
Moved the Performance Testing API package from its own repository into the Unity Engine as a built-in package.
PackageFeature
Added a View More Samples button to the Samples details tab.
Package ManagerFeature
Added a package signature check confirmation dialog for non-interactive .unitypackage imports, with a Console-log fallback in batchmode.
Package ManagerFeature
Added an images field to the package Sample class to allow displaying images in the Samples details tab.
Package ManagerFeature
Added multi-select support to bulk import, re-import, and update samples.
Package ManagerFeature
Added publish date as a sorting option in the samples page.
Package ManagerFeature
Added signature information in the Import window for .unitypackage files.
Package ManagerFeature
Display name of the .unityPackage coming from outside of the Asset Store is nicified to be more readable.
Package ManagerFeature
Added a Buoyancy feature: Use PhysicsBody.BuoyancyInput struct with PhysicsWorld.ApplyBuoyancy(), PhysicsBody.ApplyBuoyancy(), PhysicsShape.ApplyBuoyancy() to apply buoyancy forces to an area, specific bodies, or specific shapes.
Physics 2DFeature
Added a Wind feature: Use PhysicsBody.WindInput struct with PhysicsWorld.ApplyWind(), PhysicsBody.ApplyWind(), PhysicsShape.ApplyWind() to apply wind forces to an area, specific bodies, or specific shapes.
Physics 2DFeature
Added PhysicsSpace type to provide generic broadphase and narrowphase access for existing physics objects or custom objects. Includes built-in queries such as OverlapAABB(), OverlapPoint(), CastRay(), and CastShape(), which can be customized for custom objects.
Physics 2DFeature
Added a Hide 0ms Samples filtering option in the Profiler Hierarchy, Raw Hierarchy, and Inverted Hierarchy views for the CPU and GPU modules.
ProfilerFeature
Added macOS support for managed code symbols when using usamply.
ProfilerFeaturemacOS
Added an option to select the Full or Thin Link Time Optimization (LTO) mode.
QNXFeature
Added Managed Code Variant Player Setting (ManagedCodeVariant enum + PlayerSettings.GetManagedCodeVariant / SetManagedCodeVariant) controlling diagnostic preprocessor defines emitted to player scripts independently of the native binary configuration. Checked and instrumented variants get new preprocessor defines UNITY_ENABLE_CHECKS and UNITY_INCLUDE_INSTRUMENTATION, respectively.
ScriptingFeature
Added Shader Build Settings the capability of having a list of numerical constants defined globally for the shaders. Since Shader Build Settings can be controlled per build profile, this allows having different constants for different build targets without modifying the shader assets.
ShadersFeature
Added shader compiler selection control between FXC and DXC on DX12 targets to ShaderBuildSettings.
ShadersFeature
Added support for ReadOnlySpan<char> to SetText().
TextMeshProFeature
Added Max width and Max height properties to the ILayoutElement interface. The ContentSizeFitter PreferredSize fit mode now respects Max width and Max height from Layout Elements. Added a Clamped fit mode to ContentSizeFitter. HorizontalLayoutGroup, VerticalLayoutGroup, and GridLayoutGroup now calculate their max width and Max height.
uGUIFeature
Added the RaycastReceiver component.
uGUIFeature
Made the Selectable methods IsPressed and IsHighlighted public.
uGUIFeature
Added a new scene search filter for visual element references called veRef. This can be used to do the following:
UI ToolkitFeature
veRef:any: Match any reference.
Feature
veRef:empty: Match references with an empty path and no panel renderer.
Feature
veRef:missing: Match references where the path does not resolve to an element or the PanelRenderer/VisualTreeAsset is missing.
Feature
veRef:[1/2]: Match references with a partial path match.
Feature
Match references with an exact path match.
`veRef=[1/2/3]`Feature
Added animation support for the cursor style property and type-filtered asset fields for object-reference style curves in the Animation Window.
UI ToolkitFeature
Added animation support for BackgroundPosition and BackgroundRepeat to UI Toolkit.
UI ToolkitFeature
Added initial support for the CSS backdrop-filter property to UI Toolkit.
UI ToolkitFeature
Added mesh modification callbacks that allow iterating through the generated meshes and altering them.
UI ToolkitFeature
Added Scene view picking support for VisualElement.
UI ToolkitFeature
Added support for custom vertex data to UI Toolkit custom meshes.
UI ToolkitFeature
Added support for simulate.Click on world-space content in UIToolkit Test Framework.
UI ToolkitFeature
Added the drop-shadow filter function.
UI ToolkitFeature
Added transform handles for VisualElements in staging mode.
UI ToolkitFeature
Introduced a UXML upgrade framework for applying automated UXML upgrades to fix common issues and deprecated patterns. It can be accessed from the VisualTreeAsset Inspector or through script via UnityEditor.UIElements.UxmlUpgradeService.
UI ToolkitFeature
Added depth as input attachment support to URP shaders and draw transparent pass.
URPFeature
Added On-Tile Post Processing to optimize GPU bandwidth for Tile Based GPUs on platforms such as Android and iOS.
URPFeatureAndroidiOS
Enabled the Extensible On-Tile Renderer using the Tile-Only Mode setting.
URPFeature
Added Add to Source Control and Undo Changes actions for folders from the Project browser and Inspector.
Version ControlFeature
Added a new Branch Explorer to visualize and navigate branches.
Version ControlFeature
Added persistence for all splitter positions across window reloads and sessions.
Version ControlFeature
Added support in the merge view to partially apply a shelve.
Version ControlFeature
Added the F2 keyboard shortcut to rename branches and labels.
Version ControlFeature
Added a button in the ShaderGraph output contexts to quickly create a new ShaderGraph supporting VFX Graph from a template and use it in the context.
VFX GraphFeature
Added support for Shader Subgraph Promoted Properties and Keywords generates Input ports in VFX Graph Output.
VFX GraphFeature
Added support for gRPC through UnityWebRequest on VisionOS.
VisionOSFeature
Add plugin settings for Web Platform: Allow to configure compatibility of plugins with certain Web build settings(Exception Support, WebAssembly 2023, Native C/C++ Multithreading, WebAssembly 64-bit). Plugins are automatically selected for a build depending on the current build settings.
WebFeature
Added support for building Player that uses up to 16 GB of WebAssembly memory (Wasm64).
WebFeature
Added support for progressive asset loading on the Web, which enables improved load times by downloading assets on a per-scene basis.
WebFeature
Updated Emscripten SDK compiler toolchain used by Unity's Web platform from earlier Emscripten 3.1.38 to version 4.0.19.
WebFeature
Added a drop-down offering the ability to switch between multi-threaded and single-threaded simulation under Project Settings -> Physics -> Settings -> GameObjects.
Added Delaunay triangulation and subdivision support to SpriteImporter.
2DImprovement
Added more detail to the Tilemap.GetTiles API when the withinBounds parameter is set to true.
2DImprovement
Improved how Sprite Atlases generate when Block Offset is greater than 1. Sprite placement offsets now span the full atlas in this case.
Improved shadow caster performance for shadow providers.
2DImprovement
Improved SetBlendShapeWeight out-of-bounds error message.
Shadow caster 2D now supports GPU skinning when the Casting source is SpriteSkin.
2DImprovement
SpriteRenderer: Optimized SpriteRender processing when trailing blend shape channels have zero weight.
2DImprovement
Improved the samples in the Adaptive Performance package to function in an OpenXR environment.
Adaptive PerformanceImprovement
Added a new context menu in the Project window to create .androidlib plugins (Assets > Create > Plugins > Android Library).
AndroidImprovement
Added code examples for the AndroidAssetPacks API.
AndroidImprovement
Added profiler markers for Android input system initialization and event processing.
AndroidImprovement
Android integration tests now assert on expected editor errors instead of silently suppressing them.
AndroidImprovement
Fixed an issue where multiple unnecessary append line calls occurred back to back in Android Gradle project generation.
AndroidImprovement
In PlayerSettings->Android->Gamepad Support Level settings will be applicable and visible for both - Android TV and regular Android devices.
AndroidImprovement
Matched initialization sequence between Activity and GameActivity.
AndroidImprovement
Moved UnityPlayerGameActivity.java and UnityPlayerActivity.java from PlatformDependent/AndroidPlayer/Source/Java/com/unity3d/player/ to PlatformDependent/AndroidPlayer/Source/Java/com/unity3d/player_entries/.
AndroidImprovement
Now caching microphone permission state instead of interacting with the Android system each time when checking it.
Removed AndroidApiLevel from AndroidUtilities.cs and switched all places to AndroidBuild.Version.apiLevel.
AndroidImprovement
Added a field to the AnimationEvent inspector to control the reporting of errors when the event method cannot be found on the target object.
AnimationImprovement
AssetDatabase.GetCachedIcon is now much faster when called for the first time on a Scriptable Object (and no longer deserializes the object in question).
Asset PipelineImprovement
The VideoClip importer is now running out of process when "parallel import" is turned On in the project settings.
Asset PipelineImprovement
Added support for up to third-order Ambisonic audio (16 channels), increased from first-order (4 channels) only. Ambisonic decoder plug-ins can now receive up to 16 input channels.
AudioImprovement
Enabled EnhancedAudioFoundation on Linux
AudioImprovementLinux
BuildPipeline.BuildContentDirectory used with the option BuildContentOptions.FailBuildWhenErrorsLogged will also fail if any asset included in the build had errors during their import.
Build PipelineImprovement
Improve build errors for build usage asset issues.
Build PipelineImprovement
Improved build errors for build usage asset issues to mention the Game Objects tab in Project Auditor.
Build PipelineImprovement
Improved Build Pipeline callbacks documentation to mention ContentDirectory and how to use the version number and BuildPipelineContext to enforce dependencies and rebuild of scenes properly.
Build PipelineImprovement
Player builds now report BuildSteps for all pre/post callbacks in the BuildReport. Fixed collection of logged messages and ability to fail a build during IPostProcessBuildWIthContext callbacks.
Build PipelineImprovement
The BuildReports for Player Builds are collected in the Library/BuildHistory to allow retrieval of past builds for comparison and analysis purposes. the history location can be configured (and history erased) in the BuildPipeline section of the Preferences dialog.
Build PipelineImprovement
Updated the bundled 7-Zip to version 26.00.
Build SystemImprovement
Updated the bundled 7-Zip to version 26.01.
Build SystemImprovement
Updated the bundled 7-Zip to version 26.02.
Build SystemImprovement
Optimized string comparisons/searches.
CoreImprovement
Updated Project Auditor documentation to include the new Game Objects section and improved welcome view.
DocumentationImprovement
Added "NVIDIA Aftermath" automatic GPU crash dump generation for extra analysis. The Editor must be started with a new argument -force-d3d12-nvidia-aftermath (can not be combined with -force-d3d12-debug, -force-d3d12-debug-gbv).
DX12Improvement
- The Platform Browser package list now shows a Deprecated label next to packages that Unity marks as deprecated (registry/version deprecation and/or curated lifecycle deprecation).
EditorImprovement
Deprecated packages can display a tooltip with the deprecation message when one is available.
Improvement
Added a "Shader Compiler Backend Selection" section to Shader Build Settings to choose the shader compiler backend per graphics API. It's currently exposed for D3D12 (FXC or DXC). Settings are configurable per build profile only and require a Graphics override on the profile.
EditorImprovement
Added a Hierarchy GameObject icon preference with options for components and gizmos, components only, and GameObject icons only.
EditorImprovement
Added a new Project Auditor check for AnimationEvent parameters on MonoBehaviour event callbacks.
EditorImprovement
Added a search field to the Animation Property Selection popup.
EditorImprovement
Added fixes and improvements to the LightingSearch feature.
EditorImprovement
Added informational HelpBox at the top of the Colors panel explaining that some colors may not be available until their associated tool or window is opened at least once. This addresses user confusion about "missing" color settings caused by lazy static initialization of PrefColor fields. Reduced visual clutter and make navigation easier by converting categories into collapsible foldouts' after last entry
EditorImprovement
Added minor design improvements for the Platform SDK custom actions in the Build Profiles window footer.
EditorImprovement
Added options in Project Settings > Graphics to enable automatic Pipeline State Object (PSO) tracing and prewarming using the GraphicsStateCollection API. This allows easier access to the performance improvements provided by the GraphicsStateCollection API.
EditorImprovement
Added support for a sticky Inspector header.
EditorImprovement
Added support in FrameTimingManager for getting GPU frame times from XR devices running OpenXR.
EditorImprovementXR
Added the ability to cycle the mode of the dynamic panel overlay container.
EditorImprovement
Added the relevant URP replacement component button to the BIRP deprecation message help box.
EditorImprovement
Adjusting a RectTransform's pivot now properly handles rotated and scaled transform hierarchies, as well as counter-adjusts non-RectTransform children.
EditorImprovement
Changed the no animatable properties message when searching and no results are available.
EditorImprovement
Improved diagnostics checks for LMDB MDB_BAD_RSLOT runtime errors.
Improved documentation for RectTransform.reapplyDrivenProperties, RectTransform.ForceUpdateRectTransforms(), and RectTransform.ReapplyDrivenProperties.
EditorImprovement
Improved HierarchyV2 Drag and Drop to support multi-type drag.
EditorImprovement
Improved performance and reliability of the Unity Editor in multi-display environments on Windows platform.
EditorImprovementWindows
Improved responsiveness in Project Settings > Quality, resulting in faster OnInspectorGUI performance and smoother scrolling.
Improved Roslyn rules' diagnostic messages for dictionary serialization.
EditorImprovement
Improved the quality of search results in Preferences and Project Settings, by removing certain generic keywords from Unity's built-in SettingsProviders.
EditorImprovement
Improved the RSUV sample to leverage the new shader reflection API.
EditorImprovement
Improved UX and performance for the levels table in Project Settings > Quality.
Optimized asset preview loading by eliminating a copy of the preview image data.
EditorImprovement
Project Auditor: flag issues for unsafe use of EntityId.
EditorImprovement
Removed the warning under Canvas component when Normal or Tangent are enabled in Overlay mode.
Texture dependency tracking for the project's "HDR Cubemap Encoding", "Texture Compression Formats" and "Color Space" Player Settings is now done in a more fine-grained manner. This means that changing any of these settings typically results in a smaller number of textures being re-imported.
EditorImprovement
The macOS Rosetta 2 installation helper app is no longer necessary and has been removed.
EditorImprovementmacOS
The SceneView camera extension for HDRP has been converted to UITK and it is now per Scene view.
EditorImprovement
The serialization rules analyzer will now warn about unsupported tuples and FormerlySerializedAs being shadowed by actual serialized properties.
EditorImprovement
UI Toolkit: The UI Toolkit Debugger is now also accessible from Window > Analysis, in addition to its existing location under Window > UI Toolkit.
EditorImprovement
Updated the existing required components structure to no longer be no-op.
EditorImprovement
When compressing textures to Crunch formats using "EditorUtility.CompressTexture" / "EditorUtility.CompressCubemapTexture", Unity will now compress without perceptual colorspace distance metrics if it is able to determine that the texture to compress is a normal map (similarly to the TextureImporter). The detection mechanism is driven by internal "usage modes" that are not exposed today: as such, textures created through script are unaffected.
EditorImprovement
Core configuration handling is improved.
EmbeddedLinuxImprovement
Changed SubScene nodes in the Hierarchy window to be named after the SubScene and displayed with the Scene icon.
EntitiesImprovement
Memory allocations from Entities, Collections, and Entities Graphics now appear with descriptive labels in the Memory Profiler, making it easier to identify and debug memory usage in ECS-based projects.
EntitiesImprovement
Switched the Entities Component inspector to use Quick Search.
EntitiesImprovement
Switched the Entities Relationship inspector to use Quick Search.
EntitiesImprovement
The WorldTime Entity is now hidden in the Hierarchy to reduce clutter in the Hierarchy window. Hidden Entities can be made visible in the Preferences > Entities > Show Hidden Entities.
EntitiesImprovement
World nodes now remain visible in the Hierarchy window when filtering on Entities, matching the behavior of Scene nodes.
EntitiesImprovement
Write link.xml when building Entities Content.
EntitiesImprovement
Added Gradient mode support for environment lighting in Surface Cache.
GIImprovement
Eliminated undefined behavior that caused stack corruption resulting in crashes and hangs. (GFXLIGHT-2141)
GIImprovement
Reduced light leaking issues with the Surface Cache.
GIImprovement
Surface Cache now reacts to the Environment Intensity setting from Lighting / Environment.
GIImprovement
Use hardware raytracing when available in Surface Cache.
GIImprovement
Add guards against null index buffer in GfxDeviceGLES::DrawBuffersBatchMode.
Add texture-compression version dependency tracking to the TextureImporter to unlock finer-grained forced reimports of Textures upon future compressor code changes.
GraphicsImprovement
Updated the mipmap streaming manual pages to describe how Unity selects mipmap levels from mesh UV data and camera positions, clarified the behaviour for objects Unity can't calculate a level for (including procedurally-generated geometry such as Particle Systems), and added a Texture2D.requestedMipmapLevel code example.
XR: Implemented three shader micro-optimizations to improve GPU performance on Meta Quest headsets.
GraphicsImprovementXR
Mesh.vertexBufferTarget and Mesh.indexBufferTarget now throw an InvalidOperationException when changing the buffer target on a mesh that lacks the data required to recreate its buffers.
Added a warning message for DepthOfField Inspector on certain platforms.
HDRPImprovement
Improved Inspector messaging to indicate when advanced water features could impact performance on a given platform.
HDRPImprovement
Improved inspector messaging when RTX, SSS, or Film Grain can have a perfomance impact in a given platform.
HDRPImprovement
On building the project. Show messages about RTX, SSS or Film Grain performance impact if the platform will have a performance impact.
HDRPImprovement
Missing shader intrinsics 'firstbitlow' and 'firstbithigh' now emit software fallback on GLES 3.0/WebGL2.
HLSLccImprovement
Added Intrinsics for Interlocked.Compare and Interlocked.CompareExchange.
IL2CPPImprovement
Build il2cpp with nativeaot again. This restores some conversion time performance that was lost when we had to switch back to coreclr due to https://github.com/dotnet/runtime/issues/121632.
IL2CPPImprovement
Improved performance of field access in fully shared generic code.
IL2CPPImprovement
Optimized selection of isinst/castclass handlers in generic code.
IL2CPPImprovement
Performance improvements for generic delegates in fully shared generic code.
IL2CPPImprovement
Reduced binary size by deduplicating generic methods.
IL2CPPImprovement
Reduced generated code size when accessing generic sharing data from a non-generic method on a generic type.
IL2CPPImprovement
Reduced metadata memory usage of implemented interface data on classes.
IL2CPPImprovement
Reduced overall size and improved build time by moving code generated metadata to the global-metadata.dat file.
IL2CPPImprovement
Reduced storage size of generic method defintions
IL2CPPImprovement
Reduced the size of generic method pointer tables.
IL2CPPImprovement
Removed a small set of metadata initialization code.
IL2CPPImprovement
Removed redundant initialization checks in generic code.
IL2CPPImprovement
Removed redundant initialization checks on static access and in generic code.
IL2CPPImprovement
Removed runtime metadata initialization checks for types that we can guaranteed are loaded at startup.
IL2CPPImprovement
Removed un-needed generic sharing context from methods that make no use of the data in the context.
IL2CPPImprovement
Small reduction in amount of the generic sharing metadata IL2CPP generates.
IL2CPPImprovement
\[InternalsVisibleTo\] attributes will no longer survive code trimming when targeting il2cpp.
IL2CPPImprovement
Gyroscope.updateInterval now reports the effective update interval, including OS limitations and adjustments.
iOSImprovement
Added support for TLS 1.3 in the networking APIs.
MonoImprovement
Fixed Write access error with "VirtualProjectSettings.json" when creating a MPPM Player Tag with Perforce connected.
MultiplayerImprovement
Install buttons now show a disabled "Installing..." state while a package or sample installation is in progress.
MultiplayerImprovement
Prompting users to save current seen before importing a sample from the multiplayer center.
MultiplayerImprovement
Unity Transport will not drop packets that arrive out of order but within the same frame anymore (for unreliable sequenced pipelines). This could lead to unnecessary packet loss in network environments with heavy jitter.
MultiplayerImprovement
Unity Transport: Implementations of INetworkInterface are no longer required to be unmanaged types. Consequently, there is now no need to call WrapToUnmanaged on network interfaces and this API is thus now deprecated.
MultiplayerImprovement
Added Single World Host compatibility to the Network Profiler. Improved contextual information messages explaining profiler behavior across different networking configurations, including Single World Host, Dedicated Server, and Client-only scenarios. Added a visual indicator for host mode configuration and renamed ClientAndServerWorld to HostWorld for clarity.
Netcode for EntitiesImprovementServer
Improved the readability of byte values in the Ghost Snapshot Tab of the Netcode Profiler.
Netcode for EntitiesImprovement
Removed the 'must be a serialized component' limitation from the GhostComponentVariation dropdown selection in the GhostAuthoringInspectionComponent, as non-serialized components already support things like PrefabType stripping, just not explicitly. Handling of invalid ComponentOverrides has also been improved.
Netcode for EntitiesImprovement
Support for variants so they can target internal ECS components (as long as they are part of the same assembly).
Netcode for EntitiesImprovement
Turning off new GameObject missing connection event warning by default for entities connection flows.
Netcode for EntitiesImprovement
MaxSendRate is now bypassed when ArchetypeChunk structural changes (i.e. order changes) occur, so that ghost spawns and deletions are not delayed or rate-limited. Note that bandwidth consumption may increase marginally.
Netcode for EntitiesImprovement
NetworkTime.PredictedTickIndex is now incremented on Server and Host worlds, aligning its behavior with Client worlds.
Netcode for EntitiesImprovementServer
Removed the icons in the Asset Store buttons to make them consistent.
Package ManagerImprovement
Improved ParticleSystem size on disk by stripping out unused curves. This should improve loading performance of ParticleSystems in the Editor, which affects prefab operations.
ParticlesImprovement
Refactored Particle Shader Includes to use UnityTexture2D instead of TEXTURE2D_ARGS for mutualization with Shader Graph.
ParticlesImprovement
Refactored Particle shaders to not write to CBuffers, for DXC compliance.
ParticlesImprovement
Added a drop-down offering the ability to switch between multi-threaded and single-threaded simulation under Project Settings -> Physics -> Settings -> GameObjects.
PhysicsComposer now implements the IDisposable interface where the public IDisposable.Dispose method simply calls PhysicsComposer.Destroy().
Added Deep Profiling support to CoreCLR Players.
ProfilerImprovement
Added support for profiling GC.Alloc events on CoreCLR scripting backend
ProfilerImprovement
Profiler Capture List rename/frame time UI rework.
ProfilerImprovement
Replaces the legacy CustomSampler-based implementation of ProfilingSampler in com.unity.render-pipelines.core with the ProfilerMarker / ProfilerRecorder API.
Core configuration handling is improved.
QNXImprovement
Implement LayerMask.ToString to return a comma separated list of each Layer Name in the mask
ScriptingImprovement
Improved performance when merging Search Index artifacts of large projects with "Deep Indexing" enabled.
Added a custom binding hint to match behavior in subgraph properties.
Added an option in subgraphs to mark them for deprecation.
ShadergraphImprovement
Added Apply and Revert to Shader Graph importer settings for consistency with other importers.
ShadergraphImprovement
Added the ability to set custom pragmas, includes, and defines on Shader Graphs.
ShadergraphImprovement
Disabled the main preview context menu when using a UITK workflow.
Gave subgraph node dropdowns an opaque background.
Hid reflected functions that do not have a provider key are no longer presented in the SG searcher.
Improved alignment of Shader Graph project settings.
Improved padding on inline sliders.
Improved Particle Shader Graph Templates to support Mesh GPU Instancing and Texture Sheet Animation.
ShadergraphImprovement
Improved UGUI Shaders sample to take advantage of promoted properties and subgraph improvements, by replacing former custom nodes with subgraphs.
ShadergraphImprovement
More reflected information is now presented in the node inspector for reflected functions.
ShadergraphImprovement
Mutualized Particle Includes between Shader Graph and URP (with shared includes in RP Core), exposing Particle Shader Functions to Shader Graph with Reflection API.
ShadergraphImprovement
Reflected Functions now support hints for API management: Version, Deprecated, and Obsolete.
ShadergraphImprovement
Reflected Functions support grouping, allowing multiple functions to be handled by a single node, selectable via dropdown.
ShadergraphImprovement
Shader graphs with long path names should now open correctly.
Updated the Node Reference sample to include new nodes (Append, Switch, Expression and Reflected Functions).
ShadergraphImprovement
Added an "Unapplied Changes" dialog that appears when navigating away from the Shader Build Settings UI with pending modifications.
ShadersImprovement
Improved shader compilation reliability and performance with updated shader compilers, including DXC 1.10.2605.2 and SPIRV-Cross 1.4.341.0.
ShadersImprovement
Surface shaders now use caching preprocessor for the analysis step.
ShadersImprovement
Pass.CompileVariant() / ShaderUtil.CompileShaderVariant() now read from and write to the shader disk cache, so repeated calls with identical inputs return cached results instead of recompiling from source.
ShadersImprovement
Added Search filter for Rendering Debugger.
SRP CoreImprovement
Improved performance for RenderGraph compilation on large graphs.
SRP CoreImprovement
Improved render pipeline creation performance by avoiding debug UI initialization.
SRP CoreImprovement
Improved the way VolumeManager collects VolumeComponent types to avoid slow reflection overhead on Player startup.
TextMeshProImprovement
Added OnFontMaterialRequest callback to complement the existing OnFontAssetRequest callback that allows custom loading of font related resources that are not contained in a Resources folder when using the <font> and <material> markup tag variants.
Improvement
Added new variant to the <font> markup tag to allow referencing a font asset by the source font's family and style name. Example: <font familyName="Roboto" styleName="Bold">. This new variant assumes the referenced font asset has already been loaded.
Improvement
Added missing OnColorGradientRequest callback to provide the same custom loading functionality that is available with the <font> and <material> markup tags.
Improvement
Added OnCharacterRequest callback to allow loading font asset resources based on the requested character.
Improvement
Improved uGUI Canvases and Canvas renderers batching performance. They no longer invalidate their respective batches when their global transformation matrix changes as long as their transformation matrix remains the same relative to their root Canvas (or target Camera if the Canvas is set to the ScreenSpace render mode).
uGUIImprovement
Added a Find References in Scene option to the right-click context menu for visual elements in the Hierarchy window that have an authording-id.
UI ToolkitImprovement
Added a HelpBox with button to enable the Hierarchy window v2 when Hierarchy Integration is enabled.
Added an option in the UI Builder to export the UXML Attributes of elements in alphabetical order.
UI ToolkitImprovement
Added panel component details to the Profiler panel view.
UI ToolkitImprovement
Added per-batch render metrics and Details view to profiler.
UI ToolkitImprovement
Added totals row in batch detail view in UI Toolkit profiler.
UI ToolkitImprovement
Added UI Toolkit Batch Breaking Reason into the Frame Debugger.
UI ToolkitImprovement
Added TreeView support to Visual Element Reference picker.
UI ToolkitImprovement
Fields with data bindings will now be disabled and always show the live value in the inspector.
UI ToolkitImprovement
Handle package paths in UI Builder.
UI ToolkitImprovement
Improved element creation performance by using pre-allocated and static data for some common event callbacks.
UI ToolkitImprovement
Improved error handling in UXML attribute parsing. Previously silent attribute parsing failures are now reported through the importer as warnings for the UXML asset.
Improved GPU performance by reducing the area where edge antialiasing is applied on default meshes.
UI ToolkitImprovement
Improved memory usage for event callback registration.
UI ToolkitImprovement
Improved memory usage of VisualElement hierarchy data.
UI ToolkitImprovement
Improved mesh update performance.
UI ToolkitImprovement
Improved performance of USS selector matching
UI ToolkitImprovement
Improved performance of USS variable resolution.
UI ToolkitImprovement
Improved performance of VisualElement.UpdateWorldTransformInverse.
Improved performance of VisualElement.SetEnabled method.
UI ToolkitImprovement
Improved readability of batch breaking reasons in batch detail view in UI Toolkit profiler.
UI ToolkitImprovement
Improved LayoutNode initialization performance.
UI ToolkitImprovement
Reduce GC allocations when parsing USS properties the first time
UI ToolkitImprovement
Reduced garbage collection allocations during style matching.
UI ToolkitImprovement
Reduced overhead of registering element for style processing.
UI ToolkitImprovement
Reduced overhead of using numerous @import statements in a Theme or Style Sheet, getting performance closer to having all selectors inlined directly.
UI ToolkitImprovement
Reduced the memory footprint of the layout algorithm.
UI ToolkitImprovement
Removed internal reference to IMGUIContainer in the player, enabling the type to be stripped from builds.
UI ToolkitImprovement
Removed the "Element" from the Visual Element Reference picker so it no longer says "Select VisualElement Element Reference...".
UI ToolkitImprovement
The "Find References in Scene" option for Visual Elements is now always shown but disabled it when its not available instead of it being hidden.
UI ToolkitImprovement
Fix exception when creating new Tile asset when doing a drag and drop on a Tile Palette that is open for edit
Fixed normals maps for flipped Tiles when using TilemapRenderer in Chunk mode.
Move filter field outside of scroll area in Tile Palette Active Targets dropdown (UUM-143328) First seen in 6000.6.0a6.
Resize Tile Palette Active Targets dropdown when filter is active (UUM-143328) First seen in 6000.6.0a6.
Documented the steps a developer must do for the AccessibilityRole.Slider, AccessibilityRole.TextField, and AccessibilityRole.SearchField accessibility nodes to receive hardware keyboard input on Android.
Fixed accessibility node queries logging a main-thread error to the console on Android when a screen reader is enabled.
AccessibilityFixAndroid
Fixed play button enabled state not updating when another Animation Window changes preview.
Optimised a number of hot paths for asset importing and content building
Asset PipelineFix
Fixed a rare crash in Sound.getOpenState caused by a data race during asynchronous sound loading.
Fixed RootOutputInstance.IRealtime not properly running through Burst if requested, even though Burst would compile and show the associated code in the Inspector.
Add additional resources for info about using components
DocumentationFix
Fixed a crash that would sometimes happening when opening the gizmo menu in the scene view.
Fixed a crash when a scene file contains a Prefab instance with malformed added components list.
Fixed text overflowing inconsistently.
Fixed the Hierarchy renaming the wrong game object after creation. (UUM-143590) First seen in 6000.6.0a7.
Fixed the Project window navigating back to the Assets root folder when using "Add Sorting Layer..." and the other Tags and Layers dropdown shortcuts.
GraphToolkit: Fixed an issue where block nodes with only options could not be collapsed
Replace OpenJDK in-tree zips with Stevedore artifacts
EditorFix
Fixed an issue in the editor when every subscene load used to leak a duplicate of each loaded GameObject until domain reload; only the intended instances are now created. (UUM-145926) First seen in 6000.6.0b3.
Fixed Entities Memory Profiler showing duplicate components when multiple worlds share the same archetype. (UUM-146419) First seen in 6000.6.0b1.
Fixed the SubScene foldout icon disappearing in the Hierarchy window after undoing changes to the SubScene GameObject.
NullReferenceException in AsyncLoadSceneOperation.ScheduleSceneRead() when loading subscenes containing UnityObjectRef with invalid EntityIds.
Systems window "Show Full Player Loop" should be disabled by default. (UUM-146280) First seen in 6000.6.0b1.
Fix buffer-capacity int overflow on Metal in UnifiedRayTracing (UUM-145383) First seen in 6000.6.0a8.
Fixed a warning that appeared when canceling an Adaptive Probe Volume (APV) bake.
Fixed Global Illumination APV task left Not Responding on cancel.
Fixed bug where opening a subgraph for the first time would not always frame its contents. (UUM-131387) First seen in 6000.6.0a7.
If a port is connected to a variable of the wrong Type an error will now be displayed on the port. (UUM-131401) First seen in 6000.6.0a8.
Multiplayer PlayMode clone editors now adhere to the Hierarchy window version preference. When switching between Scene Hierarchy and the new Hierarchy window in the main Editor, it is now automatically reflected across all active clones.
MultiplayerFix
Fix "PhysicsShape.ShapeProxy.polygonGeometry" potential for returning a corrupted PolygonGeometry.
Fixed an issue where directly loading profiling data on macOS did not filter to relevant file types (.data, .raw).
The Profiler's Capture List foldouts now open and close when clicking the title as well as the arrow.
Dictionary Drawer now has a one-column display mode for narrow Inspectors. (UUM-146024) First seen in 6000.6.0b2.
Removed a rare managed allocation during HDR output rendering that could intermittently occur when .NET reclaimed pooled array buffers between frames.
Fixed regression that prevented multiple inspectors from updating with current alpha values when the alpha value on a CanvasGroup component was modified via the Inspector and CanvasGroupEditor
Fixed the Layout Element component, which accepted negative values in its Min/Max (and other) fields (UUM-144440) First seen in 6000.6.0a7.
Creating a new PanelRenderer will not correctly restore the PanelSettings field when undo/redo occurs.
Fixed RegisterUIReloadCallback not triggering the callback on GameObject re-enable.
Fixed rendering issues when multiple drop-shadow filters are present. (UUM-144927) First seen in 6000.6.0a7.
Fixed unqualified Style and AttributeOverrides tags being flagged as not allowed when validating a UXML file against the generated schema.
Fixed UXML Style, Template and Instance tags being incorrectly flagged as not allowed when validating against the generated XML schema.
Fixed VisualElements styled with -unity-material (and other asset-backed style properties such as background-image and -unity-font) rendering with the default shader (solid white) after the referenced asset's Addressables content was unloaded and reloaded.
Fixed World Space UI not rendering in the Scene view immediately after changing a Panel Settings Render Mode. (UUM-144940) First seen in 6000.6.0a7.
Prevent some rare crash in UI Toolkit when repainting windows during a domain reload (UUM-145384) First seen in 6000.6.0a7.
Remove AABB boundary expansion from SplitCullObjectsWithoutUmbra.
XRFix
Added support for using Unity Recorder with the 2D renderer.
Disabled icons in the Tile Palette Active Targets dropdown when the target has HideFlags.HideInHierarchy.
Fix exception when creating new Tile asset when doing a drag and drop on a Tile Palette that is open for edit
Fixed 2d light stripping for blend styles.
2DFix
Fixed a crash that occurs when painting a large number of Tiles onto a Tilemap GameObject with a TilemapCollider2D.
Fixed a crash with the Tilemap where the Tilemap is using an invalid cached ITilemap.
Fixed a performance regression in SpriteRenderer when changing sprites caused by unnecessary atomic refcount operations in Sprite BlendShape read-only methods.
Fixed a shader warning in Hidden/Light2D.
Fixed a UI inconsistency in Sprite Editor Window HelpBox.
Fixed an exception when selecting a Tile in Play mode while the Tile Palette overlay is open in the Scene View in Edit mode.
Fixed an exception when using the preview toggle in the Sprite Editor window with an imported texture smaller than the source texture.
Fixed an issue where Open Reference for the Sprite Atlas Importer button in thee Inspector window redirected to an outdated version of the Manual.
Fixed an issue where a Sprite with SpriteSkin was invisible in Editor Play mode when loading an Addressables SpriteAtlas via SpriteAtlasManager.atlasRequested with Sprite Atlas V2 packing enabled.
Fixed an issue where a SpriteRenderer's sprite reference did not revert to the original after using the Sprite Editor window preview toggle and entering Play mode. The Sprite Editor window preview toggle is now available only in Edit mode.
Fixed an issue where a SpriteSkin with no bones (for example, before running Create Bones) was not selectable in Scene view and displaying incorrectly.
Fixed an issue where Brush Picks List items are initialized with a lower height than the minimum size when the Tile Palette Brush Pick Overlay is expanded.
Fixed an issue where Brush Picks List items become malformed, causing the list to become cut off when decreasing the Pick size with the slider.
Fixed an issue where Brush Picks Names disappear after adjusting the Size of the picks and switching view mode to Grid.
Fixed an issue where Destroying assets is not permitted to avoid data loss error thrown when creating a second Tile Palette Brush Pick Asset.
Fixed an issue where padding did not apply equally along the entire boundary, mainly affecting full-rect sprites.
Fixed an issue where scrolling in Brush Picks List when a lot of Brush Picks are saved.
Fixed an issue where Select, Pick, Box, and Move tool operations on the Tilemap were not properly cancelled or finalized when the mouse button was released outside the SceneView or Tile Palette window.
Fixed an issue where sorting layer names did not refresh in the Light Batching Debugger.
Fixed an issue where Sprite Atlas textures from all included build scenes persisted in Editor memory when building the Player.
Fixed an issue where the collider shape of a Tile with collider Type Sprite generated from a TilemapCollider2D is not updated when the custom physics shape of the Sprite is changed in the Sprite Editor.
2DFix
Fixed an issue where the Light Type could not be changed in the Light Explorer.
Fixed an issue where the Sprite Editor window sometimes referenced its preview texture.
Fixed an issue where the Tile Palette shows an empty grid when the user drags and drops Sprite assets for the Tile Palette but cancels the operation to create Tile assets.
Fixed an issue with 2D shadow volumetric strength.
Fixed an issue with cleanup of BrushPickStore when BrushPickStore is a project asset.
2DFix
Fixed an issue with sprite flicker and draw call fluctuation when Sprite Skins are culled.
Fixed an InvalidCastException when using the Tile getter property for TileChangeData.
Fixed crash on ShaderPropertySheet::FindPropertyIndex when opening a specific project.
Fixed errors that occurred when adding a Lens Flare component and added support for orthographic camera.
Fixed Global Lights 2D error in URP 2D when opening a scene for preview.
Fixed GridView showing empty space after scrolling to the bottom of the GridView for Tile Palette Brush Picks.
Fixed Install 2D Package button is disabled when it should not be.
Fixed issue for the Brush Picks list view where a user can disable all columns in the list view, resulting in error messages and the loss of the SceneView.
Fixed issue where a Tile with the Collider Type Grid does not line up correctly when the Tilemap's tile anchor is different from the default cell center.
Fixed issue where the Tile Palette window is extremely zoomed in after collapsing the Tile Palette view using the separator and expanding the window by using the Brush view button.
Fixed missing lighting and shadows in the preview camera when using URP 2D.
Fixed normals maps for flipped Tiles when using TilemapRenderer in Chunk mode.
Fixed picking for sprites with -ve scale using shadergraph materials.
Fixed placement of Tiles with rotation when painting for the first time in a location of a Tilemap.
Fixed preview of Sprite when Sprite does not have a valid texture.
2DFix
Fixed Quality settings not propagating to the Camera target descriptor.
Fixed return from GetCellCenterLocal/World when the Grid has a non-zero cell gap value set
Fixed shadow caster 2D culling.
Fixed SpriteRenderer not rendering Sprite properly when the SpriteRenderer is previewing changes in the Sprite Editor and the changes are applied.
Fixed the Inspector Preview window showing black sprites.
Fixed the scene marked as modified after using the Select Tool in the Tile Palette and switching to another tool such as Paint.
Fixed Tile flickering when scaled to negative values using GridSelectionTool changing Scale.
Fixed Tile Palette Brush Picks closing when clicking on it while Close on Pick is enabled.
Fixed Tilemap.tilemapTileChanged and Tilemap.tilemapPositionsChanged sending incorrect number of Tiles when buffered while painting Tiles.
2DFix
Fixed Tiles not rendering for a TilemapRenderer when a Sprite asset is changed in the Sprite Editor.
Fixed validation of Tiles before TileBase.OnEnable is called.
Fixed Light2D and Shadow Caster 2D components displaying incorrect icons in the Inspector.
Fixed SpriteRenderer not updating when the SRP Batcher is toggled at runtime.
Improved performance of Tilemap for SetTiles with low Tile counts.
Improved performance of TilemapPerformanceTests.EditorPreview_SetTile.
Set the "Show Revert Confirmation" option to On by default in the Sprite Editor.
2DFix
Unlock Tile Palette for edit when using Delete or Backspace key to delete a GridSelection.
Vector graphics tessellation and clipping now produce profiler markers in builds. Previously the data only reached the profiler in the editor.
2DFix
Documented the steps a developer must do for the AccessibilityRole.Slider, AccessibilityRole.TextField, and AccessibilityRole.SearchField accessibility nodes to receive hardware keyboard input on Android.
Fixed accessibility frames being reset when the application window is moved or resized on desktop platforms.
Fixed accessibility node queries logging a main-thread error to the console on Android when a screen reader is enabled.
AccessibilityFixAndroid
Fixed accessibility nodes being created with duplicate IDs after wrapping around the max ID value.
Fixed player crash caused by UI Automation accessing invalid pointer on Windows 10.
Fixed AssistiveSupport playmode tests that were failing on Windows 10 and reenabled them.
Adaptive Performance Apple now works properly on Vision OS devices with version 1 and 2.
Disallow negative values for performance action delay and thermal action delay.
Fixed an issue that caused the Editor to freeze when using a long scaler profile name by limiting the name to 256 characters.
Fixed an issue where the Adaptive Performance package caused unnecessary garbage collection allocation.
Fixed profiler data is not updated for adaptive performance.
Improve documentation on urp adaptive performance toggle.
Adaptive PerformanceFix
Replace FindFirstObjectByType with FindAnyObjectByType in adaptive performance.
Fixed crash drawing debug visualisation for an agent with small radius and a far away destination.
Fixed NavMeshAgent getting stuck on corner of a box obstacle when moved with navAgent.Move.
On Linux, the "Open Agent Settings..." option in the Agent Type property of a NavMeshAgent inspector would issue an error and not open the __Navigation__ window.
When loading NavMesh data we now avoid processing existing NavMeshLinks while loading a NavMeshSurface until all tiles of the surface are loaded, reducing overhead.
Batch mode: removed auto-scanning for Android devices on Editor start if Android support is installed.
Fixed a crash that would occur when using URP with the Depth/Stencil buffer disabled in Player Settings on Android.
Fixed an issue where the input field caret moved back to the end of the text when typing.
Fixed an issue with artifacts on Pixel 10 with shaders that use discard or clip.
Fixed bidirectional synchronization between the virtual keyboard and UGUI textfield.
Fixed editText setText resets the IME's internal cursor to end-of-text, independently of the EditText's selection.
Fixed Hands-Free Profile (HFP) support on Enhanced Audio Foundation.
Fixed incorrect touch input position when the status bar is visible (part for GameActivity 4.4.0 upgrade).
Fixed mouse input when cursor is locked (part for GameActivity 4.4.0 upgrade).
Fixed problem with GameActivity based application being killed while backgrounded.
Fixed problem with MediaPlayer pause when app is suspended.
Fixed source builds when custom gradle templates are selected.
Fixed split APKs by target architecture all receiving the same version code.
Fixed Switch Pro gamepad triggers being non-functional on Android when the controller reports L2/R2 as button events instead of axis events.
Fixed typo in 'unity.javaCompatibilityVersion'. The previous misspelled unity.javaCompatabilityVersion will still be supported for existing projects.
AndroidFix
Fixed UnitySendMessage calls being dropped on Android when sent during Application.Unload or Reload in Unity as a Library (UAAL) scenarios.
Fixed Vulkan crash when backgrounding Android app with RunWithoutFocus enabled.
Fixed TouchScreenKeyboard.selection.length always returning 0.
Reverted deprecation of compileSdk for AGP 9.0.
Toggling "Run without focus" to enabled now ensures Unity activity continues running when another activity is launched, including Android activities launched from Unity.
Words won't be spammed in input field when swiping touch screen keyboard (part of GameActivity 4.4.0 upgrade).
AndroidApplication.onConfigurationChanged will correctly reflect language/country changes on GameActivity.
AndroidFix
Add explanatory text in the animation windows "Add parameter" drop down when all animatable parameters have been added.
Added a notification in the FBX Importer UI when FBX takes aren't used by any clip.
Added a Search Field to filter properties in the Animation Window.
AnimationFix
Added ellipsis for long names to default state field in entry node inspector.
Added margin to Sample Rate field.
Added maximum width constraint for the left panel in the animation window.
Added missing overload for AnimatorControllerPlayable.SetFloat.
Always update animator blend tree weight visualization when a child item is selected.
Compact animator breadcrumb trail if there is too many elements.
Fixed "Animation Clip is Read-Only" message appearing when nothing is selected.
Fixed a bug where renaming state machine from inspector would not rename corresponding layer.
Fixed a crash when an avatar had invalid hand bones.
Fixed a Model Importer visual issue where reverting import settings didn't update the root motion node selector.
Fixed an error thrown when applying changed avatar settings on Linux.
Fixed an issue in the Animation Window where changing the interpolation type of a rotation property would collapse the property group if it was expanded.
Fixed an issue where a precision mismatch in the legacy animation system caused animation events to be skipped at high frame rates.
Fixed an issue where AnimationClip rotation compression would be non-deterministic. Curve compression precision has also been improved as a result.
Fixed an issue where dangling GameObject references could be retained in the selection when entering or exiting Play mode.
Fixed an issue where dopesheet keyframes were incorrectly initialized after a domain reload.
Fixed an issue where float properties whose value is NaN or Infinity cannot be added to the AnimationWindow because these values cannot be represented on a curve, handles them by adding a keyframe with value zero instead.
Fixed an issue where some ParticleSystem properties would be causing errors and warnings when added to AnimationClips and sampled in the AnimationWindow.
Fixed an issue where the display of trigger parameters in the Animator Window's Parameter View would not update correctly when triggers were reset during gameplay.
Fixed an issue with text wrapping in the animation window missing clip panel so that long game object names are displayed properly.
Fixed animation window clip dropdown not being disabled when a single clip is selected.
Fixed Animation Window icon when switching light/dark theme.
Fixed Animation Window tab name defaulting to UnityEditor.AnimationWindow.
Fixed animator parameters window menu name.
Fixed ArgumentOutOfRangeException when selecting a transition to a short looping animation in the Animator window.
Fixed blurry ripple mode icon in the Animation window.
Fixed cogwheel icon size in the animation window in the Light Theme.
Fixed crash on invalid state machine transitions when importing project.
Fixed documentation link for entry transitions.
Fixed drop down menu entry in the AnimationWindow not displaying a checkmark on the active clip when creating a new clip.
Fixed errors when right-clicking a mix of transform and sprite keyframes in the Dopesheet.
Fixed flickering loop calculation in Transition Preview.
Fixed function name changing on Animation Event inspector on multi selection when editing another field.
Fixed input of negative frame rates in the Animation Window frame rate field.
Fixed issue where Animator Entry, exit and AnyState nodes would not have icons in the inspector.
Fixed issue where changes to Animator time update mode while the Animator is disabled were not taken into account.
Fixed labelRect calculations to avoid hover being cut by object field on object curves.
Fixed MecanimDataWasBuilt assertion when switching ModelImporter rig type to legacy.
Fixed misaligned UI in State editor.
Fixed name of shortcut to switch between curves and dopesheet views.
Fixed offset on the play button in the Animation Window.
Fixed outline of Add Behaviour dropdown.
Fixed play button enabled state not updating when another Animation Window changes preview.
Fixed selection highlight popping in a second instance of the Animation Window.
Fixed selection loss when entering play mode.
Fixed text overflow in animation window clip dropdown.
Fixed the Animation Event obscured by the playhead in the Animation Wndow.
Fixed the Animation Window staying in preview mode after undoing a clip creation.
Fixed the AnimationWindow separator color in Light mode.
Fixed the clip dropdown providing a menu item to create a new clip for animation clip selection.
Updated the Active Target dropdown menu to match the new Hierarchy Window.
2DChange
Users are now required to enable Sprite Frame field editing that are disabled by importers.
2DChange
Apple and Android subsystems logs now display in Debug, Checked and Instrumented Managed Code Variants (which can be manipulated in player settings), in addition to being defined in development builds. Non-development builds with Release Managed Code Variant keep the logging disabled.
Adaptive PerformanceChangeAndroid
Added the ability to select the IL2CPP LTO mode (Full / Thin) in Player Settings when using Master C++ compiler configuration.
AndroidChange
Raised minimum supported OpenGL ES version from 3.0 to 3.1; shader variants now compile with SHADER_API_GLES31 defined
AndroidChange
Replaced the legacy use of SessionState with a DisplayDialog for "Multiple Application Entries" warning dialog with option to opt out for this session.
AndroidChange
Updated GameActivity library from 3.0.5 to 4.4.0.
AndroidChange
Updated JDK to 17.0.18+8.
AndroidChange
Compressed In Memory setting defaults to Decompress On Load on Chromium-Based Web Browsers to avoid Memory Leaks.
replaced windows-only bee_backend mutex with a cross-platform implementation in Bee.BeeDriver2
Build PipelineChangeWindows
Burst is now a built-in part of the Unity. This means that it will no longer be necessary to include the Burst package in your project to take advantage of Burst.
BurstChange
Made EntityIds 8-bytes (making it the same size as an Entity from com.unity.entities).
Changed the Quickstart hyperlink to point at the ECS Feature Set Unity Documentation page.
DocumentationChange
Added a persistent information box for the Built-In Render Pipeline deprecation in the Graphics settings window.
EditorChange
Added a persistent information box for the Built-In Render Pipeline deprecation in the Quality settings window.
EditorChange
Added deprecation messaging and grouping for built-in shaders in the Material Editor shader selection dropdown when using Scriptable Render Pipelines.
EditorChange
Added deprecation messaging for Built-In Render Pipeline scene templates.
EditorChange
Added multi-select support for "Copy Path". Each entry is separated by a new line.
Added UX framework changes for the Built-In Render Pipeline deprecation.
EditorChange
Project Auditor: Added the ability to skip built-in analyzers for ones that have been migrated to the Project Auditor Rules package.
EditorChange
Project Auditor: Updated the welcome text.
EditorChange
Shortened the message from the Serialization Roslyn analyzer and added a link to documentation.
EditorChange
The "CompressTexture" profiler marker has been renamed to "CompressFullTexture" and now captures the full compression process of one texture, instead of only capturing the compression process of one image of a texture. The "CompressImage" profiler marker has been added to replace the old "CompressTexture" marker.
EditorChange
The "Use New Hierarchy" setting has moved from Editor Preferences to "Use Legacy Hierarchy" Project Settings, and is disabled by default (new hierarchy enabled).
EditorChange
Updated Remote Iteration to version 0.1.1-preview.26.3.27002.
EditorChange
You can now select icons based on components.
EditorChange
You can now select icons based on gizmos.
EditorChange
EntityId.ToString now prints the full ulong (don't depend on this, in the future we will change this string, so you can't just parse it back using ulong.Parse. ideally you never have to serialize an EntityId, but if you absolutely have to do it, you can use EntityId.ToULong(someEntityId).ToString(), and then EntityId.FromULong(ulong.Parse(someRawEntityIdString)) to deserialize it.).
Add an option to hide Unity-Namespaced Systems in the System window.
EntitiesChange
Added a new Scheduling column to the System window to highlight System ordering dependencies.
EntitiesChange
Added a toggle button to show or hide the detail view of a system in the System window.
EntitiesChange
Added system navigation buttons to the System window.
EntitiesChange
Entities Journaling (the data source for the Entity Journal Editor window) is now compiled into Player builds whenever the Managed Code Variant is Debug, Checked, or Instrumented. Release-variant non-development Players continue to strip Entities Journaling out, as before.
EntitiesChange
Fixed entity prefab node's color.
Fixed Runtime Content management being non deterministic across builds when clearing the entity cache.
EntitiesChange
Fixed the Inspector displaying "This Entity only exists at runtime" when selecting entities from the new Hierarchy.
EntitiesChange
Merged the Queries and Relationships tabs together in the System window.
EntitiesChange
Moved the new recently added scripts to support entities in the new hierarchy from Packages/com.unity.entities/Unity.Entities.Editor/Hierarchy/Utility to Packages/com.unity.entities/Unity.Entities.Editor/Hierarchy.
Selecting a GameObject inside a subscene in the new Hierarchy will only show its GameObject authoring representation not its runtime ECS representation if there is an entity associated to it.
EntitiesChange
Clicking on a Error/Warning/Info icon on a Node or Port will now show a stylized popup window, replacing the context menu that appeared previously.
Graph ToolkitChange
Updated SceneViewCameraWindow to use UIToolKit.
GraphicsChange
Renamed "Convert All Built-In Materials to HDRP" and "Convert Selected Built-In Materials to HDRP" to "Convert All Built-In Materials to Current SRP" and "Convert Selected Built-In Materials to Current SRP".
Generated reverse P/Invoke wrappers on BurstCompile methods.
IL2CPPChange
Moved backbuffer and swapchain handling inside the Unity Player.
iOSChange
The default iOS and tvOS Simulator Architecture in Player Settings now matches the host machine - ARM64 on Apple Silicon Macs, X86_64 on Intel Macs. Existing projects retain their current setting.
iOSChangetvOS
Snapshots now use Unity Transport's unreliable sequenced pipeline instead of a home-baked solution, allowing Netcode to benefit from recent improvements made to that pipeline. A consequence of this is that snapshots sent by previous versions of Netcode for Entities are not compatible with this new version.
Netcode for EntitiesChange
Source generators no longer log to Console.Out
Netcode for EntitiesChange
The GhostUpdateSystem's predicted ghost history backup lookup failure case now only attempts to rollback to the snapshot if said rollback isn't too severe. This change marginally worsens correctness in exceptional cases, but prevents egregiously large rollbacks.
Netcode for EntitiesChange
Analytics events are sent to the correct table for custom display dialogs.
Package ManagerChange
Rename Custom Package... to Import Assets Package... and remove the import menu.
Package ManagerChange
UPM logs now default to <ProjectPath>/Logs/upm.log, while still honoring explicit -upmLogFile overrides.
Package ManagerChange
Moved the "PhysicsCoreSettings2D" asset to 2D/Physics (Core)/ in the Asset menu.
Changed the default behavior when deleting ScriptableObjects that were loaded from AssetBundles. OnDisable will now be called before deletion unless the setting is overridden. This can be done with an entry in the boot config or a command line parameter with "call-ondisable-when-unloaded-from-bundles" set to 0.
PlayerChange
Updated the QNX platform logo.
QNXChange
Changed scripting runtime dependent "\[Mono/CoreCLR\]: successfully reloaded assembly" log message to universal one "Scripting: successfully reloaded assembly".
ScriptingChange
Disabled Code Coverage Support option for 32-bit architecture build targets.
ScriptingChange
Disabled profiling during Shader Graph code generation to fix errors that occurred in some circumstances.
Moved Particle Shader Graph sample from the HDRP package to the Shader Graph package.
ShadergraphChange
Changed console log message for Compute shader variant GPU uploads to more accurately reflect its result.
ShadersChange
Split compilation of D3D11 and D3D12 shaders so they may be compiled side-by-side for both renderers in a project regardless of whether or not D3D12 is compiled using DXC.
ShadersChange
Added material upgrade menu items for all SRP: "Convert All Built-In Materials to Current SRP" and "Convert Selected Built-In Materials to Current SRP".
Changed API shader path for NDA platforms from packages to shaders packed with the editor. Use UnityPlatforms/X/... instead of Packages/com.unity.render-pipelines.X/.... The NDA platform shaders are unchanged.
Excluded GPU Resident Drawer code in Web platform builds that only target WebGL2.
SRP CoreChange
Migrate from UIDocument to PanelRenderer at Rendering Debugger Runtime UI.
SRP CoreChange
Shader and runtime-resource stripping decisions for diagnostic content are now driven by the build's Managed Code Variant (UNITY_ENABLE_CHECKS) instead of by the native "Development Build" flag. Builds using the Checked variant retain debug shaders and runtime resources even when the native binary is non-development; builds using the Release variant strip them even when the native binary is development.
SRP CoreChange
Various Scriptable Render Pipeline diagnostic features are now compiled into builds based on the new Managed Code Variant player setting:
SRP CoreChange
Available in Debug or Checked variants (UNITY_ENABLE_CHECKS):
Change
URP shadow-request hash validation, debug-pass handler, validation handler, debug overlay code paths.
Change
HDRP volume debug data, render-graph debug data, decal debug overlays.
Change
SRP Core debug display managers, Render Graph Viewer support (audits, debug data, builds remote debug session), and the Volume panel.
Change
Available in Debug, Checked, or Instrumented variants (UNITY_INCLUDE_INSTRUMENTATION):
Change
HDRP HDDynamicResolution GPU frame-time debug overlay.
Change
Render Graph profiling sampler plumbing (RenderGraphProfilingScope, GetDefaultProfilingSampler).
Change
URP per-pass ScriptableRenderPass.profilingSampler (used by ScriptableRenderer to wrap pass execution in a profiler scope).
Change
Release variant strips these features.
Change
TextMeshPro Mesh and TextMeshPro UI Mesh now name their internal Mesh objects in all build configurations. Previously the name was only assigned in development builds and the Editor.
TextMeshProChange
Changed some undocumented runtime behaviour of TimelinePlayable.CreateTrack.
TimelineChange
When a track is created, complex name generation and disambiguation logic would run, assigning a unique name to the track.
BeforeChange
When a track is created, if a name is provided, the track will have that name. If no name is provided, the track with have an empty, non-null name
AfterChange
If you create Timeline Tracks at Runtime and you rely on their names, validate that the names of your tracks haven't changed.
Change
Move Timeline to core package.
TimelineChange
Changed uGUI and TMP elements to always instantiate at the origin of their canvas upon creation via the editor.
Updated Profiler icons for UI Canvas modules.
Changed ordering of VisualElement.GetClasses() returned values. The order may no longer match the order in which the classes were added, but it will now guarantee to match between two elements with the same classes.
UI ToolkitChange
Unity Physics integrity checks are now compiled into Player builds whenever the Managed Code Variant is Debug or Checked. Instrumented and Release-variant builds continue to strip integrity checks. Users who want to disable them entirely can still set UNITY_PHYSICS_DISABLE_INTEGRITY_CHECKS.
Unity PhysicsChange
Adjusted SSR roughness to blur curve to more closely match reflection probe's.
URPChange
Allow stripping Film Grain textures when post processing is enabled but Film Grain is not used.
URPChange
Deprecate PostProcessData.filmGrainTex, move Film Grain textures to UniversalRenderPipelineFilmGrainResources class.
URPChange
The urp_ReflProbes_BoxMax, urp_ReflProbes_BoxMin, urp_ReflProbes_ProbePosition, urp_ReflProbes_MipScaleOffset and urp_ReflProbes_Rotation shader properties are now in a persistent global constant buffer. Overriding these properties at runtime via cmd.SetGlobalVectorArray / MaterialPropertyBlock no longer affects URP rendering; the constant buffer binding takes precedence.
URPChange
The _AdditionalLightsPosition, _AdditionalLightsColor, _AdditionalLightsAttenuation, _AdditionalLightsSpotDir and _AdditionalLightsOcclusionProbes shader properties are now in a persistent global constant buffer. Overriding these properties at runtime via cmd.SetGlobalVectorArray / MaterialPropertyBlock no longer affects URP rendering; the constant buffer binding takes precedence.
URPChange
The _AdditionalLightsWorldToLights and _AdditionalLightsCookieAtlasUVRects shader properties are now in a persistent global constant buffer. Overriding these properties at runtime via cmd.SetGlobalMatrixArray / cmd.SetGlobalVectorArray / MaterialPropertyBlock no longer affects URP rendering; the constant buffer binding takes precedence.
URPChange
Added changeset and label icons to the status bar.
Version ControlChange
Improved text field focus behavior across dialogs for more consistent keyboard workflows.
Version ControlChange
Improved the empty state in the Pending Changes view.
Version ControlChange
Prevented connecting a project to a different organization by mistake.
Version ControlChange
Updated new project initialization to perform a full initial checkin.
Version ControlChange
Updated the macOS hide shortcut to Cmd+Shift+H.
Version ControlChangemacOS