Removed: Removed the obsolete LoadableObjectIdEditorUtility.ObjectToLoadableObjectId API. Use LoadableObjectIdEditorUtility.CreateLoadableObjectId instead.
Build PipelineBreaking
Obsoleted: Beginning of Forbidden API deprecation: specific AppDomain methods/events.
EditorBreaking
Obsoleted: Marked some old ApiCompatibilityLevel enum values as obsolete.
EditorBreaking
Obsoleted: Deprecated AppDomain.GetAssemblies, Assembly.Location, Assembly.Load, and BinaryFormatter APIs.
ScriptingBreaking
Removed: Removed UxmlTraits, UxmlFactory, and associated code.
UI ToolkitBreaking
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
Changed: Deprecated AssetImportContext.GetArtifactFilePath in favour of AssetImportContext.GetArtifactData.
Asset PipelineBreaking
Removed: Removed obsolete APIs.
Build PipelineBreaking
Removed: Removed the obsolete LoadableObjectIdEditorUtility.ObjectToLoadableObjectId API. Use LoadableObjectIdEditorUtility.CreateLoadableObjectId instead.
Build PipelineBreaking
Changed: Deprecated the shader compiler pragma argument #pragma enable_d3d11_debug_symbols and replaced it with #pragma enable_debug_symbols.
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: It is no longer possible to enable word wrapping in YAML files.
EditorBreaking
Obsoleted: Beginning of Forbidden API deprecation: specific AppDomain methods/events.
EditorBreaking
Obsoleted: Marked some old ApiCompatibilityLevel enum values as obsolete.
EditorBreaking
Deprecated: The static class EntitiesJournaling is scheduled for removal in a future release. It is recommended to remove dependencies on this API.
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
Changed: Changed SystemInfo.deviceName to equal SystemInfo.unsupportedIdentifier on Game Core Xbox, instead of using the incompatible Windows systeminfo::GetDeviceName implementation.
Game CoreBreakingWindowsUUM-132562
Obsoleted: NetworkDriverStore.Disconnect is obsoleted in favor of the new NetworkStreamDriver.Disconnect.
Netcode for EntitiesBreaking
Obsoleted: Deprecated AppDomain.GetAssemblies, Assembly.Location, Assembly.Load, and BinaryFormatter APIs.
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
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 UxmlTraits, UxmlFactory, and associated code.
UI ToolkitBreaking
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.
EditorBreakingUUM-133913
The entities hierarchy window is marked as deprecated. This window will be removed in a future version of Unity.
EntitiesBreaking
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
Deprecated #pragma enable_ray_tracing_shader_debug_symbols in favor of the new #pragma enable_debug_symbols.
ShadersBreaking
com.unity.xr.oculus - "This package is no longer supported on this editor version."
Added: GTK : Added API to add custom actions to the GTK main toolbar with the GraphToolbarElement attribute.
EditorAPI change
Changed: Add signature using an organization ID to exported asset package.
EditorAPI 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 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 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 GeneratorInstance.Result.isFinished and Finished() to determine whether a nested generator finished producing samples.
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
Added: Added PlayerSettings.GetRayTracingFeaturesSupportForPlatform Editor-only API for retrieving the implementation status for various ray tracing feature on specified platforms.
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: \[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
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 LoadFromJson function to GraphicsStateCollection that allows to load collections directly from a JSON-formatted string.
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
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
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 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.
Physics 2DAPI changeUUM-134952
Added: PhysicsComposer can now both get or destroy all composers using PhysicsComposer.GetComposers() and PhysicsComposer.DestroyAll() methods.
Physics 2DAPI changeUUM-134952
Added: PhysicsComposer can now convert both CircleGeometry and CapsuleGeometry to PolygonGeometry using a static method of PhysicsComposer.ToPolygons().
Physics 2DAPI changeUUM-134952
Added: PhysicsWorld, PhysicsBody, PhysicsShape and PhysicsJoint can set owner-only PhysicsUserData with SetOwnerUserData() and retrieve it with .ownerUserData.
Physics 2DAPI changeUUM-134952
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().
ProfilerAPI changeUUM-137963
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 &lt;-&gt; VectorInt2.
ScriptingAPI change
Added: Added implicit conversion between int3 &lt;-&gt; VectorInt3.
ScriptingAPI 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
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 readonly properties to GridLayoutGroup to indicate the number of rows and columns created during the last layout pass.
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

Pick your Unity version

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