Version: Unity 6.1 Alpha (6000.1)
Language : English
What's new in Unity
New in Unity 6 Preview

New in Unity 6

Unity 6 is the latest version of Unity. Unity 6 includes all the features from Unity 6 Preview, 2023.2, and 2023.1.

To find out the changes and known issues in this version of Unity, refer to the Unity 6 Release Notes.

To find the release notes for other releases, refer to the Unity download archive.

If you are upgrading existing projects from 2022 LTS, read the Upgrade Guide to Unity 6 for information about how your project might be affected.

Review the new features and improvements of Unity 6 in these areas:

2D

Changes introduced in 2023.2

  • Added overlay support to the Tile Palette editor window, which allows you to overlay the Tile Palette window on top of the SceneA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
    See in Glossary
    view to paint tiles directly in the Scene viewAn interactive view into the world you are creating. You use the Scene View to select and position scenery, characters, cameras, lights, and all other types of Game Object. More info
    See in Glossary
    .

Changes introduced in 2023.1

  • Added API to allow SpriteA 2D graphic objects. If you are used to working in 3D, Sprites are essentially just standard textures but there are special techniques for combining and managing sprite textures for efficiency and convenience during development. More info
    See in Glossary
    to get and set references to ScriptableObjects.
  • Added Brush Picks to the Tile Palette window.
  • Added options to create WhiteBox Tile Palettes.
  • Added preference option to Tile Palette Preferences for users to choose where they want to position their mouse cursor when painting on TilemapsA GameObject that allows you to quickly create 2D levels using tiles and a grid overlay. More info
    See in Glossary
    with Z Position.
  • Added Sample for Custom Geometry Generation and Vertex Colors.
  • Added Sprite/SpriteShape/TilemapRenderer as mask sources for SpriteMask.
  • Added SRP Batching for 2D Renderers and Particle Renderer to support URP.
  • Added support for cameraA component which creates an image of a particular viewpoint in your scene. The output is either drawn to the screen or captured as a texture. More info
    See in Glossary
    frustum culling to Inverse KinematicsThe geometry that describes the position and orientation of a character’s joints and bodies. Used by inverse kinematics to control character movement.
    See in Glossary
    Manager 2D.
  • Enabled opening Sprite Editor Window from SpriteRenderer inspectorA Unity window that displays information about the currently selected GameObject, asset or project settings, allowing you to inspect and edit the values. More info
    See in Glossary
    to edit the Sprite that is assigned to the SpriteRenderer.
  • Enabled ScriptablePacker to add custom packing algorithm for SpriteAtlas.
  • Added a Rigidbody2D.Slide method which allows a Rigidbody2D to move with a specific velocity over a specific integration time and perform various slide, gravity, slip, direction-change, and surface-anchoring behaviors automatically. This method works on all body typesDefines a fixed behavior for a 2D Rigidbody. Can be Dynamic (the body moves under simulation and is affected by forces like gravity), Kinematic (the body moves under simulation, but and isn’t affected by forces like gravity) or Static (the body doesn’t move under simulation). More info
    See in Glossary
    , including Static bodies. It can simply calculate a new position, change the Rigidbody2D position immediately (supports interpolation), or defer the movement by automatically calling Rigidbody2D.MovePosition(). This feature makes Character ControllersA simple, capsule-shaped collider component with specialized features for behaving as a character in a game. Unlike true collider components, a Rigidbody is not needed and the momentum effects are not realistic. More info
    See in Glossary
    easier to create.
  • Added the ability to use sub-stepping simulation when Simulation Mode is Update.
  • Enabled CompositeCollider2D to allow each Collider2D to select one of four composite operations: Merge (OR), Intersect (AND), Difference (NOT), and Flip (XOR), and a composite order for controlling the order that each Collider2D will be composited.

Accessibility

Changes introduced in 2023.2

Added a new Editor window, the Accessibility Hierarchy Viewer, that displays the active accessibility hierarchy and its nodes. To access the Accessibility Hierarchy viewer, go to Window > Accessibility > Accessibility Hierarchy viewer in the main menu.

Adaptive Performance

Changes introduced in 2023.1

Asset bundles

Changes introduced in 2023.1

  • Added capability to Asset Bundles that target Windows, OSX, and Linux platforms and the Dedicated Server subtarget so that they’re now built with the same Dedicated Server optimizations that built Dedicated Server Players receive (removing texture data and non-collision mesh data).

  • Implemented accessor for saving data to .meta files.

Asset Store

Added Verified Solutions program, a library of third-party assets and solutions that Unity curates.

Audio

Changes introduced in 2023.2

  • Added the Audio Random Container to randomize audio and ensure that volume, pitch, time and triggers can be set to non-repetitive intervals, so your game never sounds the same twice.
  • Added a VU meter to the Audio Random Container.

Editor and Workflow

Changes introduced in Unity 6

  • Implemented the drag-and-drop feature for files and assets from Unity to an external application on Linux.
  • Added the Asset Manager for Unity packages into the Package Manager > Services > Content Management section. This package allows users to easily browse, upload and import assets across unity projects.
  • Added a new Editor -upmLogFile command line argument that specifies a custom file path for UPM log output. For more information, refer to Unity Editor command line arguments.

Changes introduced in Unity 6 preview

  • Added a piercing menu that you can use to select GameObjectsThe fundamental object in Unity scenes, which can represent characters, props, scenery, cameras, waypoints, and more. A GameObject’s functionality is defined by the Components attached to it. More info
    See in Glossary
    that overlap with other GameObjects. To open the piercing menu, hold down Ctrl+Right-click in the Scene view. The piercing menu displays a list of all selectable GameObjects under the cursor.
  • Added Additional App IDs to Steam ID Provider Editor Settings for Multiple App ID support.
  • Introduced Build ProfilesA set of customizable configuration settings to use when creating a build for your target platform. More info
    See in Glossary
    to create multiple custom build configurations for each target platform.
  • The Build Profile Diagnostic checkbox is no longer available because the Build Settings window has been replaced with the Build Profile window.
  • Integrated new build profile icons.
  • Modified the Create menu to replace the C# Script menu item with three separate options:
    • MonoBehaviour Script
    • ScriptableObject Script
    • Blank Script
  • Improved the Create menu to reduce the amount of items at the root of the menu. The menu is now ordered alphabetically, and almost all items are now in a category.

Changes introduced in 2023.2

  • Added the Scene view context menu. You can now access new context menus in the Scene view by right-clicking or using a customizable keyboard shortcut. These menus, created with the UI(User Interface) Allows a user to interact with your application. Unity currently supports three UI systems. More info
    See in Glossary
    Toolkit and extensible in C#, offer easy access to frequently used commands.
  • Added the Refresh the Scene view only when the Editor is in focus option to the Scene view preferences. Enable this option to refresh the Scene view only when the Editor is in focus.
  • Added the ability to bind a keyboard shortcut to make transitions between Animator states.
  • Added basic OpenType font feature support. Currently, only kerning is enabled.
  • Added a new Cameras overlay to replace the Camera preview. You can use the Cameras overlay to take first-person control of cameras and manage cameras in the Scene view.
  • Replaced most OS contextual menus with the UI Toolkit version.
  • Added the Color Checker, which is a tool used to calibrate lighting and post process. The Color Checker is an object that the user can add through GameObject > Rendering > Color Checker Tool. The tool is meant only as a production tool for lighting artists and won’t be saved in Build.
  • Enabled the Editor to show different license notification modals.
  • Added a PropertyCollectionAttribute, which you can use to implement custom drawers for collections.
  • Added a new tool for light placement using the pan, zoom, and orbit controls of the Camera. For more information, refer to View and control a light from its perspective.

Changes introduced in 2023.1

  • Improved and standardized right-click context menus across items and workflows. Improvements include more consistent interactions, sorting optimizations, and an optional search field.
  • Added a new launch screen for the Linux Editor.
  • Added async test support with documentation and support for SetUp and TearDown to the test-framework.
  • Added Editor analyticsAbbreviation of Unity Analytics
    See in Glossary
    event tracking for Refresh access and New link button clicks.
  • Added the Enable PlayMode Tooltips toggle to the Preferences window. This toggle enables tooltips in the Editor while it’s in Play mode.
  • Added the Helper Bar, which displays useful keyboard shortcuts, to the status bar. Enable the Helper Bar from the General tab of the Preferences window.
  • Added the option for Scene View preferences to only refresh the Scene view when the Editor is in focus.
  • Added an optional priority argument to Shortcut and ClutchShortcut attributes.
  • Added a rebindable shortcut possibility for the Game view Stats button to the Shortcuts manager.
  • Added Stage, Scope, and Dynamic information to keywords for the Frame Debugger.
  • Added the possibility of running tests in a specified order from a test list.
  • Added the focusedWindowChanged callback to the EditorWindow class.
  • Changed to title bars on Windows for Editor. Improves upon the existing title bar feature by adding to it.
  • Displayed OneTimeSetup and OneTimeTearDown durations in the XML result under outputs.
  • Enabled adding a shortcut to enable or disable a capture for the Frame Debugger.
  • Enabled connection to PerforceA version control system for file change management. More info
    See in Glossary
    servers using accounts with MFA.
  • Enabled copying a foldout or an entire event for the Frame Debugger.
  • Enabled seeing the Original and Used shaders in an event for the Frame Debugger. This is useful for events that use USEPASS or fall back to an assigned fallback shaderA program that runs on the GPU. More info
    See in Glossary
    .
  • Enabled setting the minimum and maximum values for the Levels slider for the Frame Debugger.
  • Enabled shortcut binding to mouse wheel turns for Shortcut Manager.
  • Enabled viewing the individual meshes in a SRP Batch inside the MeshThe main graphics primitive of Unity. Meshes make up a large part of your 3D worlds. Unity supports triangulated or Quadrangulated polygon meshes. Nurbs, Nurms, Subdiv surfaces must be converted to polygons. More info
    See in Glossary
    Preview for the Frame Debugger.
  • Split the texture formatA file format for handling textures during real-time rendering by 3D graphics hardware, such as a graphics card or mobile device. More info
    See in Glossary
    for the Frame Debugger into Color Format and DepthStencil Format.

UI Toolkit

Changes introduced in Unity 6

Added an option to force Gamma rendering for the UI Toolkit in linear color space projects.

Changes introduced in Unity 6 Preview

  • Added missing UxmlAttribute converters to support UXML authoring: Gradient, AnimationCurve, ToggleButtonGroupState, Unsigned Int, and Unsigned Long.
  • Added support in PropertyField for ToggleButtonGroupState serialized properties.
  • Native Text Generator Rewrite. With the Text Generator, you can use a wide array of languages and scriptsA piece of code that allows you to create your own Components, trigger game events, modify Component properties over time and respond to user input in any way you like. More info
    See in Glossary
    , such as right-to-left (RTL) languages like Arabic and Hebrew.
  • Added a debugger for the UI Toolkit dynamic atlas.
  • Added support for deep nested attribute overrides in UXML and UI Builder.
  • Added type selector using Search.
  • Added a search field in the UI Builder Library.

Changes introduced in 2023.2

  • You can now use a new and flexible runtime binding system to effortlessly connect data values to UI element properties when you create the Editor or runtime UI. You can configure data binding in either UI Builder or C# code.
  • Added new controls such as the ToggleButtonGroup, Tab, and TabViews, and made improvements to existing controls.
  • Added icon support to the Button, ListView, and TreeView controls.
  • Added new UxmlElement and UxmlAttribute attributes. These attributes replace the existing UxmlFactory and UxmlTraits when you create custom controls. This streamlines the creation of custom controls, offering an efficient alternative through C# attributes, and eliminating the need for extensive code writing. Additionally, you can now create custom property drawers for fields in the same manner as the Inspector.
  • Enhanced UI Builder with improvements to display what drives style properties, refined canvas manipulation, and made other enhancements. The updated UI Builder now also supports the authoring of UXML Objects, enabling the editing of the MultiColumnTreeView and MultiColumnListView.
  • Added the Emojis Fallback Support field to TextElement and TextField to control the ordering of where to search for the glyph in the emoji range (primary font vs global fallback). Additionally, added basic support for the OpenType font features, with the current focus on enabling kerning.
  • Added a new Spacing field with a box model widget in the UI Builder’s Inspector.

Changes introduced in 2023.1

  • Added a Text preview to the UI Builder Inspector.
  • Added an anchor widget to the Position properties in the UI Builder Inspector pane.
  • Added basic analytics in UI Builder.
  • Added space-evenly to Justify Content property.
  • Added support for Bitmap Text.
  • Added Vertex Buffer size configuration.

IMGUI

Changes introduced in 2023.1

Removed dependency on Legacy Text stack for IMGUI so that IMGUI now renders and calculates its metrics using TextCore. Some members from TextEditor have been deprecated to accommodate for the new TextUtilities used by both IMGUI and UITK. Their meanings are the same but their names have changed (from field to property):

  • TextEditor.multiline is now TextEditor.isMultiline.
  • TextEditor.hasHorizontalCursorPos is nowTextEditor.hasHorizontalCursor.
  • TextEditor.revealCursor is now TextEditor.showCursor.

TextMeshPro

Changes introduced in 2023.2

  • Added basic Emoji support.
  • Added basic OpenType font feature support, only kerning has been enabled for now.

Changes introduced in 2023.1

  • Added support for Color Glyphs and extracting OpenType font features.

Enterprise deployment

Changes introduced in 2023.1

Entities

Changes introduced in Unity 6 Preview

  • Added serialization support for UnityObjectRef<> to enable unmanaged references to Unity assets. For example, instead of a Texture on a managed IComponentData, you can have a UnityObjectRef<Texture> on an unmanaged IComponentData.
  • The Create menu adds the following Type templates:
    • IComponentData
    • ISystem
    • IJobEntity
    • Baker
  • Changed the way that entities are stored in preparation for the consolidation of entities and GameObject workflows. Entity IDs are now globally unique and you can now move them efficiently from one entities world to another. This does not impact ECS workflows in Unity 6, but it does disambiguate debugging by always showing exact entities.
  • Applied the following fixes to the entities Hierarchy window:
    • You can select entities and systems within the hierarchy.
    • Fixed an invalid range check that failed after you removed entities from the hierarchy view in valid use cases.
    • Stopped the entities hierarchy from throwing exceptions when entities are destroyed.
    • The entities hierarchy now removes all nodes of a scene and subscenes when the scene is unloaded.
    • An exception is no longer thrown when you enter a prefabAn asset type that allows you to store a GameObject complete with components and properties. The prefab acts as a template from which you can create new object instances in the scene. More info
      See in Glossary
      from the entities hierarchy.
  • Improved the performance of baking and the creation of archetypes and entity queries in worlds with a large number of existing types.
  • Improved the performance of LocalToWorld systems and non-dirty hierarchies.
  • Fixed an issue where an EntityQuery using WithNone<T> on an enable component wasn’t inserting a necessary job dependency.
  • EntityQuery singleton methods now correctly handle cases where the query contains enableable components.
  • Fixed memory leak issues, like ones affecting world deserialization and content delivery.
  • Fixed breakpoints in jobs defined in systems with System.API.

Graphics

Changes introduced in Unity 6

Moved Unity 6 documentation for the Universal Render PipelineA series of operations that take the contents of a Scene, and displays them on a screen. Unity lets you choose from pre-built render pipelines, or write your own. More info
See in Glossary
(URP) to the Unity Engine manual. For example, documentation about lighting in URP is now in the Lighting section of the manual.

Changes introduced in Unity 6 Preview

  • Added support for indirect Dispatch Rays (part of DXR 1.1). The method is similar to RayTracingShader.Dispatch, but the three dispatch dimensions are retrieved from a GraphicsBuffer. Added RayTracingShader.DispatchIndirect and a new CommandBuffer.DispatchRays signature. Added SystemInfo.supportsIndirectDispatchRays capability status.
  • Added the GPU Resident Drawer, which automatically uses the BatchRendererGroup API to draw GameObjects with GPU instancing. This reduces the number of draw calls and frees CPU processing time.
  • Added support for SpeedTree GameObjects to the GPU Resident Drawer.
  • Added support for GPU occlusion culling of instances if they’re compatible with the GPU Resident Drawer, including culling of small meshes.
  • Adding a new per-batch layer filtering setting for the BatchRendererGroup API. You can use this setting to cull specific batches.
  • Optimized CPU performance of the Volume framework in URP and HDRP, to improve efficiency on low-end hardware and allow more precise control over quality settings.
  • Added a Force No Crunch texture compression setting in Build Profiles > Asset Import Overrides, which forces all textures to disable crunch compression and re-import.
  • Added an IRenderPipelineResources interface that allows you to add new settings groups in the Graphics Settings window. Updated the default IRenderPipelineGraphicsSettings Inspector to trigger notifications when a value in Graphics Settings is modified, and added a custom menu in IRenderPipelineGraphicsSettings.
  • Added UI Toolkit support for CustomPostProcessOrder.
  • Added the option to cache render graph system compilation for both URP and HDRP.

Changes introduced in 2023.2

  • Unity 2023.2 introduces optimizations to SkinnedMeshRenderers across all supported platforms. These optimizations aim to batch compute skinningThe process of binding bone joints to the vertices of a character’s mesh or ‘skin’. Performed with an external tool, such as Blender or Autodesk Maya. More info
    See in Glossary
    and blendshape dispatches. This can increase the amount of vertices deformed in parallel and improve the GPU performance of character and skinned mesh rendering.
  • The Progressive GPU LightmapperA tool in Unity that bakes lightmaps according to the arrangement of lights and geometry in your scene. More info
    See in Glossary
    is now out of preview and fully supported. For more information, refer to Select the CPU or GPU for baking.
  • Added APIs to move Light Probe positions at runtime.
  • Removed the Auto Generate setting in the Lighting window. Related APIs are now obsolete. To check lightmapsA pre-rendered texture that contains the effects of light sources on static objects in the scene. Lightmaps are overlaid on top of scene geometry to create the effect of lighting. More info
    See in Glossary
    while you’re editing, you can now select a Debug Draw Mode and set Lighting Data to Preview. This displays a preview of the baked lighting. The preview lightmaps are non-destructive, and you can use them after you’ve baked the scene.
  • Added BatchCullingContext.cullingFlags to specify whether to cull lightmapped shadow casters.
  • Added rendererPriority support for BatchRendererGroup.
  • Added support for building ray tracingThe process of generating an image by tracing out rays from the Camera through each pixel and recording the color contribution at the hit point. This is an alternative to rasterization. raytracing
    See in Glossary
    acceleration structures asynchronously on a compute queue. AsyncCompute CommandBuffers can now run CommandBuffer.BuildRayTracingAccelerationStructure commands. Added support for RayTracingAccelerationStructure to RenderGraph and Render Graph Viewer.
  • Enabled exposing raytracing acceleration structure build flags for balancing build times versus ray tracing speed and memory consumption on the GPU. You can customize flags from C# when creating and building a RayTracingAccelerationStructure, or via the Renderer settings.
  • Added mipmap limit support and mipmap stripping support for Texture2DArrays.
  • Added support for providing tiled EXR images to LoadImage.
  • Added Native Render Pass support for DX12.
  • Added support for GPU batched skinning for D3D12 (Windows and XBox platforms).
  • Added the Custom Vertex Streams feature for particle trails.
  • Added BakeTexture and BakeTrailsTexture scripting methods.

Changes introduced in 2023.1

  • Introduced a new graphics jobs threading mode called Split Graphics Jobs to reduce unnecessary start and end of frame synchronization between the main and native graphics job threads.
  • Introduced the new LightBaker v1.0 backend for manual lighting bakes, which makes baking more predictable and stable. Manual bakes no longer restart if you change the scene during baking, so the Editor is more responsive during baking. If you bake with the GPU backend, you can use a Baking Profile to select the tradeoff between performance and GPU memory usage.
  • Added screen space lens flaresA component that simulates the effect of lights refracting inside a camera lens. Use a Lens Flare to represent very bright lights or add atmosphere to your scene. More info
    See in Glossary
    that you can generate from all lights visible on the screen (direct, indirect, emissive surfaces, specular highlights) in just a few clicks with a single post-processingA process that improves product visuals by applying filters and effects before the image appears on screen. You can use post-processing effects to simulate physical camera and film properties, for example Bloom and Depth of Field. More info post processing, postprocessing, postprocess
    See in Glossary
    volume. These lens flares are compatible with both HDRP and URP. This feature complements the Lens Flare (SRP) component, which gives you more advanced artistic control over lens flares from lights, but which you can only use on predefined light sources (directional, point and spot lights), and can only manually associate with each one.
  • Dynamic shader variant loading provides additional user control over shader loading behavior and memory usage. This optimization enables the streaming of shader data chunks into memory, and eviction of shader data that is no longer needed at runtime, based on a user controlled memory budget. This allows to significantly reduce shader memory usage on platforms with limited memory budgets.
  • Added asynchronous compilation of pipeline state objects for shader warmup.
  • Added DirectX Raytracing (DXR) 1.1 support in compute shaders. Added the following APIs: SystemInfo.supportsInlineRayTracing, SystemInfo.supportsRayTracingShaders, ComputeShader.SetRayTracingAccelerationStructure, and CommandBuffer.SetRayTracingAccelerationStructure(ComputeShader, …).
  • Added #pragma require inlineraytracing to compute shaders.
  • Added new RayTracingAccelerationStructure.AddInstance signature that allows adding mesh instances to the acceleration structure for GPU ray tracing. This is the equivalent of Graphics.RenderMesh from the rasterizationThe process of generating an image by calculating pixels for each polygon or triangle in the geometry. This is an alternative to ray tracing.
    See in Glossary
    pipeline.
  • Added foveated rendering support for D3D12/Vulkan.
  • Added foveated rendering support for Metal.
  • Added support for loading EXR data through ImageConversion.LoadImage().
  • Added support for VK_EXT_debug_utils on Vulkan platforms.
  • Added mipmap limit groups, for more fine-grained configurability over the single value that applies to all mipmapped Texture2D assets. For more information, refer to Quality settings.
  • Enabled Ray Tracing Support in Terrain settings by default for new Terrains.
  • Implemented ScriptableRenderContext.CullShadowCasters API to kick theBatchRendererGroup culling jobs earlier in URP and HDRP.
  • Added standardized shader variant keywords for native 16-bit shader types, and wave operations. For more information, refer to Set a shader to require a shader model or GPU feature.
  • Added a debug view to visualize probe sampling in Adaptive Probe Volumes. For more information, refer to Display Adaptive Probe Volumes.
  • Merged the Adaptive Probe Volume window with the Lighting window.

URP

For a complete description of new features and improvements in URP, refer to What’s new in URP.

Changes introduced in Unity 6 Preview

  • Added the 8192x8192 option to Shadow texture resolution for the Main Light and Additional Lights.

  • Added the camera history API which lets you access per-camera history textures and use them in custom render passes. History textures are the color and depth textures that Unity rendered for each camera in previous frames.

  • Added Adaptive Probe Volumes (APV) Lighting Scenario Blending to URP.

  • Added a new config package that lets you override the maximum number of visible lights.

  • Added the Render Graph Viewer window. This tool lets you visualize how render passes use frame resources, and debug the rendering process.

  • The Rendering Debugger now contains a Mipmap Streaming section. This section lets you inspect the texture streaming activity.

  • Added C# script templates to create custom post-processing effects that use a volume component.

  • Added APV sky occlusion support for URP.

  • Added support for Spatial Temporal Post-Processing (STP) upscaling.

  • The new render graph system improves the way you customize and maintain the render pipeline. The system reduces the amount of memory URP uses and makes memory management more efficient.

  • This URP version implements the Alpha Processing setting. If you enable this setting, URP renders the post-processing output into a render textureA special type of Texture that is created and updated at runtime. To use them, first create a new Render Texture and designate one of your Cameras to render into it. Then you can use the Render Texture in a Material just like a regular Texture. More info
    See in Glossary
    with an alpha channel. In previous versions, URP discarded the alpha channel by replacing alpha values with 1.

Changes introduced in 2023.2

  • Added cross-platform HDRhigh dynamic range
    See in Glossary
    display support. The Editor and built Players now provide full HDR tone mapping and display support, across all rendering pipelines and platforms that support HDR, including mobile and XR.

  • Added per-vertex quality levels for indirect lighting from Probe Volumes so that URP renders lit environments more efficiently. On mobile platforms URP doesn’t support Lighting Scenario blending or Lighting Normalization for Reflection ProbesA rendering component that captures a spherical view of its surroundings in all directions, rather like a camera. The captured image is then stored as a Cubemap that can be used by objects with reflective materials. More info
    See in Glossary
    .

  • Added the Camera And Objects option in the Motion Blur volume component. The option uses motion vectors to blur objects that move faster than the camera’s exposure time.

  • Added support for additional directional light cookies.

  • Added the Default Volume Profile field to URP Global Settings.

  • Added the Volume Profile field to the Universal Render Pipeline Asset.

  • Added alembic velocity motion vector support for URP materials.

  • Added automatic time-based motion vector generation for Shader Graph shaders with vertex animation based only on the Time node.

  • Added support for XR rendering and orthographic projection cameras to Forward+ rendering pathThe technique that a render pipeline uses to render graphics. Choosing a different rendering path affects how lighting and shading are calculated. Some rendering paths are more suited to different platforms and hardware than others. More info
    See in Glossary
    .

  • Added support for foveated rendering in the Forward+ rendering path.

Changes introduced in 2023.1

  • Added temporal anti-aliasing (TAA) support. The feature is not compatible with MSAA, Dynamic ResolutionA Camera setting that allows you to dynamically scale individual render targets to reduce workload on the GPU. More info
    See in Glossary
    , or Camera stacking. The feature supports only fixed resolution, and does not support temporal upsampling.

  • Added support for High Dynamic Range (HDR) output.

  • Added the Detailed Stats section to URP Rendering Debugger.

  • Ported all URP passes to use the RasterCommandBuffer API.

  • Added the AO Method property to SSAO settings where you can select the options Interleaved Gradient Noise or Blue Noise.

  • Added the Blur Quality property to SSAO settings where you can select the options High (Bilateral), Medium (Gaussian), or Low (Single-Pass Kawase).

  • Added the Falloff field to SSAO settings to control the distance from the camera where the AO effect is applied.

  • Added the clustered reflection probe support to the URP Forward+ rendering path. This enables the use of more than two reflection probes per object, allows Unity to skip per-object culling of lights and reflection probes, and enables Entities Graphics and procedural draws to make use of reflection probes.

  • Added the low-code Custom Post Processing feature in URP.

  • Added Decal support to render graph API.

  • Added render graph API support to URP post-processing effects.

  • Added support for shadow rendering to 2D objectsA 2D GameObject such as a tilemap or sprite. More info
    See in Glossary
    , such as sprites, collidersAn invisible shape that is used to handle physical collisions for an object. A collider doesn’t need to be exactly the same shape as the object’s mesh - a rough approximation is often more efficient and indistinguishable in gameplay. More info
    See in Glossary
    , sprite shape, and 2D animation.

  • Added soft shadow rendering to shadow-casting 2D lights.

  • Added a limited support of Probe Volumes, with no interpolation of lighting data sets, and limited performance on lower-end hardware.

  • Improved FXAA quality. The new implementation provides better edge anti-aliasing (removing odd edge artifacts seen with the previous implementation) and better retention of texture quality. The improvement does not affect performance. The output quality is now comparable to the low and medium SMAA presets but with better performance.

HDRP

For a complete description of new features and improvements in URP, refer to What’s new in HDRP.

Changes introduced in Unity 6 Preview

  • Added support for overriding material properties such as smoothness, albedo, and normal mapsA type of Bump Map texture that allows you to add surface detail such as bumps, grooves, and scratches to a model which catch the light as if they are represented by real geometry.
    See in Glossary
    on all materials to facilitate material and lighting debugging. The material override feature in HDRP is available through the Rendering Debugger’s Lighting panel when rendering through the path tracer pipeline.
  • Added the Sky Occlusion feature to Adaptive Probe Volumes (APV), to allow time of day with static probe volumes.
  • Disabled storing of baked data as Streaming Asset in Adaptive Probe Volumes (APV) to make it compatible with Asset Bundles and Addressables.
  • Added AMD FidelityFX Super Resolution 2 (FSR2) Unity script bindings and HDRP integration.
  • Improved on existing Mipmap Streaming debug views and added more. The current offering in HDRP is consistent with what URP offers.
  • Added support for Spatial Temporal Post-Processing (STP) upscaling solution.

Changes introduced in 2023.2

  • Added HDRP path tracer support for Decals projectors. The path tracer does not support emission from decals.
  • Added the ability to stream Probe Volume data from disk at runtime. You can enable or disable disk streaming for different quality levels.
  • Made HDRP Shader Graph decals compatible with transparent objects. This means you can use decals created with Shader Graph to affect transparent objects to build procedural effects like rain drops, ripples, custom engravings, dirt effects on glass.
  • Added a night sky with stars and celestial bodies to the HDRP physical sky.
  • Added a Shader Graph output for the physically based sky and added controls to create a moon.
  • Added visualization of async compute passes and their synchronization points to the Render Graph Viewer.
  • Added beer shadow maps for volumetric clouds.
  • Added a Volume Profile field to HD Render Pipeline Asset.
  • Added a material type for thin objects with colored transmission.
  • Added the option to disable clear coat on the material for Lit ShaderGraphs.
  • Added the Global Pass API that you can use to inject custom passes in the render pipeline without any GameObjects in a scene.
  • Added the volumetric fog fullscreen debug mode output for Arbitrary Output Variables (AOV).
  • Added Adaptive Probe Volumes (APV) ability to stream data directly from the disk. This feature is only available on devices with compute shader compatibility.
  • Added the ability to use the baking API to bake Adaptive Probe Volumes (APV) independently from lightmaps or reflection probes.

Changes introduced in 2023.1

  • Light Layers and Decal Layers are now managed in similar ways in both HDRP and URP. In HDRP they now share the first 16 Rendering Layers, instead of using 8 separate bits each. Additionally, a new option in the HDRP Asset allows access to a full screen buffer that contains the Rendering Layers Masks of rendered Objects. HDRP can sample that buffer from the ShaderGraph through the HD Sample Buffer node, and use it to implement custom effects, like outlining objects on a specific rendering layer.
  • All Ray Tracing HDRP features (raytraced shadows, reflections, AO, global illumination, path tracing, recursive rendering,…) are officially out of experimental in Unity 2023.1.0.
  • Added a foam system to the HDRP Water System.
  • Probe Volumes are out of experimental. Revamped the control interface to provide a better experience when you place Probe Volumes, light dynamic objects and some static objects, stream data from GPU memory, interpolate lighting data sets, and work with volumetric fog and particles.
  • Added a third level of noise for volumetric clouds.
  • Added Generic Rendering Layer mode support.
  • Added High Quality Line Rendering which unlocks improved performance and image quality for line topology.
  • Added the ability to compute the thickness of an object.
  • Added improvements to the SSS lighting model.
  • Added Ray Tracing Terrain support for HDRP.
  • Added raytraced shadows for Pyramid and Box shaped Spot Lights.
  • Added the Ray Tracing Light Cluster to Path Tracer.
  • Added volumetric material support for local volumetric fog volumes.
  • Exposed Material Type in materials using the Lit Shader Graph.
  • Improved stripping of unused features.
  • Specular colorThe color of a specular highlight.
    See in Glossary
    on HDRP/Lit and HDRP/StackLit below 2% can be used to suppress specular lighting completely when “Specular Fade” is enabled.
  • Improved the water rendering system in the following ways:
    • Added functionality to Water Mask so it dynamically removes water from inside a boat or in a cave in the middle of an island.
    • Modified the water deformer to dynamically deform water locally. For example, to deform water around a moving ship, deform waves near shores, or deform water in a vortex.
    • Added flow maps to create local currents, to manage surface waves that follow currents, and the water query API to allow objects to drift.
    • Added a water line to manage the transition for cameras that are half underwater.
    • Improved visual quality of water.
    • Improved the UX of the water system.
  • Added an extra optional pass to compute thickness of transparent objects at runtime to get more accurate refraction and transparency rendering.
  • Improved visual quality when using temporal anti-aliasing (TAA) with two new options to perform sharpening. The first option is a post-process pass that offers higher quality sharpening, control over the amount of sharpening, and an option to reduce possible ringing artifacts. The second option is to run Contrast Adaptive Sharpening from AMD FidelityFX.
  • Specular light can now be completely faded when using a specular color workflow using the HDRP/Lit and HDRP/StackLit shaders by toggling a new option that can be found in the HDRP Global Settings under Miscellaneous/Specular Fade.
  • Added Rendering Layers support to Adaptive Probe Volumes (APV) to address light leaking issues in interior/exterior scenarios.
  • Added a new Leak Reduction Mode for Adaptive Probe Volume sampling called ‘Quality’, which ensures that no invalid probes are sampled.
  • Implemented an anti-seam mechanism to smooth transitions between multiple subdivision levels in Adaptive Probe Volumes.

Multiplayer

Unity 6 Multiplayer features are designed to simplify and accelerate multiplayer game development in a way that prepares you for future integration with Multiplayer Services and supports the growth of engaged player communities over time.

Multiplayer Center Core

The new Multiplayer Center makes it easier to set up and develop multiplayer games. Prompts and workflows use parameters and requirements for your game to suggest relevant packages and services before generating dynamic templates you can use to start your project.

You no longer need to leave the Editor to set up a multiplayer game. Personalized interactive guidance, educational materials, and shortcuts make it easier to experiment and respond to feedback early and often.

Multiplayer Widgets

New Multiplayer Widgets make it easier to integrate Multiplayer Services into your multiplayer game. You can access the widgets as a standalone package or from the new Multiplayer Center.

Included widgets for services such as Multiplay, Relay, Lobby, Vivox make it easier to find compatible, relevant integrations. For example, integrating the Relay service into the Editor makes it easier to create sessions and connect users earlier in the development process.

Multiplayer Services

The newly released Multiplayer Services package makes it easier to manage dependencies across multiplayer services. For example, you can:

  • Quickly add multiplayer elements that integrate Unity Gaming Services into your game.
  • Set up Lobby, Relay, Distributed Authority, Matchmaker and Multiplay Hosting. A new session system provides a simple shared cloud-side backing for a multiplayer game loop that groups players together and manages a shared session/player state.
  • Create and manage peer-to-peer (P2P), Dedicated Game Server, and Distributed Authority hosted online sessions. Players can join sessions through matchmaking, a Join Code, or by browsing a list of active sessions.

To make configuration easier, sessions now integrate directly with Netcode for GameObjects, Netcode for Entities, and the Unity Transport package.

Multiplayer Tools

Changes introduced in Unity 6

The Multiplayer Tools package version 2.2.1 improves workflows for multiplayer game development in Unity, performance with Netcode for GameObjects 2.0, and adds support for Distributed Authority.

Changes introduced in Unity 6 Preview

Updated the Multiplayer Tools package to version 2.1.0, adding Network Scene Visualization as a new visual debugging tool. For more information, refer to the Multiplayer Tools documentation.

Multiplayer Play Mode

The Multiplayer Play Mode package is designed to reduce iteration cycles, make it easier to validate implementation choices, and improve gameplay quality early across runtime processes.

Changes introduced in Unity 6

New Play Mode Scenarios in Unity 6 integrate test cycles into production environments to help you deliver a first-playable experience with real players earlier.

Changes introduced in Unity 6 Preview

Updated Multiplayer Play Mode to version 1.0. Use it to test multiplayer functionality without leaving the Unity Editor. For more information, refer to the Multiplayer Play Mode documentation.

Dedicated Server package

The Dedicated Server package consolidates the dedicated game server workflow in the Editor to make it easier to deploy dedicated servers locally and to Multiplay hosting.

Changes introduced in Unity 6

New Multiplayer roles give you control over which multiplayer role (Client, Server) you use in each build target:

  • Content Selection: Provides UI and API for selecting which content (GameObjects, Components) should be present/removed in the different multiplayer roles.
  • Automatic Selection: Provides UI and API for selecting which component types should be automatically removed in the different multiplayer roles.
  • Safety Checks: Activates warnings that help detect potential null reference exceptions caused by stripping objects for a multiplayer role.

Changes introduced in Unity 6 Preview

Released the Dedicated Server package that you can use to switch a project between the server and client role without the need to create another project. For more information, refer to the Dedicated Server package documentation.

Netcode for GameObjects

Netcode for GameObjects is a high-level networkingThe Unity system that enables multiplayer gaming across a computer network. More info
See in Glossary
library built for Unity for you to abstract networking logic.

Changes introduced in Unity 6

Netcode for GameObjects version 2.0 now supports Distributed Authority (Beta) and includes improvements to promote best practices in multiplayer game development. For information about basic Netcode for GameObjects features with practical examples for individual APIs and systems, refer to the Multiplayer Use Cases Bitesize Sample.

Changes introduced in Unity 6 Preview

  • Added Distributed Authority mode in Netcode for GameObjects clients have distributed ownership of or authority over spawned Netcode objects during a game session. With Distributed Authority, the clients have the governed authority to spawn network objects which is announced to the cloud state service and conveys state updates to all connected clients. A highly optimized cloud state service maintains the overall state of a network session between clients.
  • Added a new RPC attribute that can perform the functions of both Server and Client RPCs, as well as enabling client-to-client RPCs.
  • Added many utility methods, which include NetworkManager.OnConnectionEvent, -ServerIsHost, -InstantiateAndSpawn, and more.

Changes introduced in Unity 2023.2

  • Added the Refresh In-Scene Prefab Instances option in the Network Object component context menu. Use this property to update the GlobalObjectIdHash value for prefab instances in the scene that existed before they had a NetworkObject component. This property affects all scenes included in the build list.
  • Added the NetworkManager methods SetPeerMTU and GetPeerMTU to give full control over Maximum Transmission Unit (MTU) sizes. Use this for custom protocols in Netcode for GameObjects.
  • Improved network prefab identification generation (for example, GlobalObjectIdHash) to fix issues where Unity assigned invalid values.
  • Improved the serialization API and codegen pipelines in the following ways:
    • Added the GenerateSerializationForTypeAttribute method that you can apply to any class or method to ensure the specific type is included in the codegen serialization process.
    • Added the GenerateSerializationForGenericParameterAttribute method that you can use to include generic type(s) wrapped by a NetworkVariable type in the codegen process.
    • Exposed additional NetworkVariableSerialization methods to improve custom NetworkVariable creation without any boxing cost. You can use the NetworkVariableBase.MarkNetworkBehaviourDirty method to mark NetworkVariables as dirty.
  • RPCs in generic NetworkBehaviour types can now serialize parameters of the class’s generic types.
  • Improved support for 32-bit ARMv7 in Netcode.
  • Added additional NetworkManager events OnServerStarted, OnServerStopped, OnClientStarted, and OnClientStopped to provide better notification of the NetworkManager initialization process.

Netcode for Entities

The Netcode for Entities, part of the Unity’s Data Oriented Technology Stack (DOTS), provides a server authoritive with client prediction framework that you can use to create multiplayer games.

Changes introduced in Unity 6

Netcode for Entities version 1.3 includes several usability improvements and the new Megacity Metro demo game which shows how Unity 6 makes setting up multiplayer services, networked vehicle implementation, configurable rule-based matches, and immersive player communications faster and easier.

Changes introduced in Unity 6 Preview

  • Added support for GameObjects to render debug bounding boxes.
  • Added the NetCodeConfig ScriptableObject which contains most NetCode configuration variables that you can customize without needing to modify code.
  • You can now disable the automatic bootstrapping in the following ways:
    • Disable automatic bootstrapping in the ProjectSettings.
    • Add the new OverrideAutomaticNetcodeBootstrap MonoBehaviour to your first build scene.
  • Added AlwaysRelevantQuery that you can use to specify general rules for relevancy without specifying it ghost by ghost.
  • Added BatchScaleImportanceDelegate, a new version of the importance scaling function that works in batches. It is not required to set both the ScaleImportance and the BatchScaleImportance function pointers. If the BatchScaleImportance is set, it is the preferred.

Package Manager

Changes introduced in Unity 6 Preview

Improved the behavior of Project manifestEach Unity project has a project manifest, which acts as an entry point for the Package Manager. This file must be available in the <project>/Packages directory. The Package Manager uses it to configure many things, including a list of dependencies for that project, as well as any package repository to query for packages. More info
See in Glossary
files by repopulating them with default dependencies if the files are empty or full of whitespace.

Changes introduced in 2023.1

  • Added functionality to track assets imported from an Asset Store package:
    • Added an Imported Assets tab in the package details view (My Assets) to visualize imported assets.
    • Added a Remove button and window for Asset Store packages, to selectively remove imported assets.
  • Enhanced the user experience for deprecated packages. The Unity Editor notifies users at startup if their project has any deprecated packages. Updated the Package Manager window to identify two types of package deprecation:
    • Packages that reach their end of life and are no longer supported in the given Editor.
    • A specific version of a package marked as deprecated.
  • Added Web3 as a category in the Filters menu when viewing My Assets.
  • Changed the default sorting in the My Assets view to Purchased date, to match the default sort method in Asset Store.
  • Changed the install menu items to start with Install instead of Add.

Package cache management

Changes introduced in 2023.1

  • Changed the default location and structure of the global cache.
  • The registry data cache is now limited to a default maximum size of 10 GB. You can override the default by customizing the global cache.

Package Manager window

Changes introduced in 2023.2

  • Added a navigation panel:
    • Added a panel to improve the navigation between views of package subsets. In earlier versions, these contexts were stored in the Packages dropdown menu.
    • Added Services as a dedicated entry in the Package Manager navigation panel.
    • Added Updates as a nested entry beneath In Project in the navigation panel. This nested view lists all the packages in your project that have updates available.
    • Added individual scoped registries as nested entries beneath My Registries in the navigation panel.
  • Enhancements to the list panel:
    • Added a Packages - Asset Store expander in the list panel of the In Project context, so you can view and manage Asset Store packages from the In Project view.
    • Relocated the search box and changed its behavior so it recalls your search terms on a per-context basis.
  • Enhancements to the details panel:
    • Improved the flow for managing packages in the My Assets context by streamlining the action buttons in the details panel. The most common action appears as the default action in a menu button, with additional actions listed in the menu. Also added an In Project label to clearly indicate when an Asset Store package is already imported into your project and up-to-date.
    • Updated the label of the Import button when viewing an Asset Store package. After you download an updated Asset Store package, the main action button label is Import update #.# to project, so it’s clear that you need to import the update to your project.
    • Updated the behavior of the Documentation link for packages that you installed from a registry. You can now right-click the link and choose to Open in browser or Open locally.
    • Added a button to sign in with your Unity ID when you’re logged out and try to view the details of an Asset Store package.
  • Other enhancements:
    • Updated the values in the Filters menu when you’re viewing the My Assets context.
    • Updated the label for the Filters control so it shows the selected value rather than the parent category.

Platforms

Android

Changes introduced in Unity 6 Preview

  • Added a new Build setting to embed debug symbols into an app bundle when uploading .aab files to the Google Play Store. You have an option to upload the symbols package separately as a zip file with your .apk or .aab files. You can create symbol files with .so.sym or .so.dbg and the legacy .so extensions.
  • Added a new Player setting to display warnings when the symbol’s package size exceeds the specified threshold.
  • Added a new property in .androidlib Plug-inA set of code created outside of Unity that creates functionality in Unity. There are two kinds of plug-ins you can use in Unity: Managed plug-ins (managed .NET assemblies created with tools like Visual Studio) and Native plug-ins (platform-specific native code libraries). More info
    See in Glossary
    Inspector to specify dependencies for unityLibrary. You can now configure .androidlib to depend on unityLibrary, and thus expand an activity by overriding UnityPlayerActivity.
  • Added a new Player setting to allow or deny Android devices from using the Vulkan graphics API. With Android Vulkan Allow Filter List, you can allow certain devices to use Vulkan as the default graphics API. Alternatively, with Android Vulkan Deny Filter List, you can limit certain devices from using the Vulkan API.

Changes introduced in 2023.2

  • Added Addressables for Android package (com.unity.addressables.android) to provide Play Asset Delivery support for Addressables.
  • Added texture compressionA method of storing data that reduces the amount of storage space it requires. See Texture Compression, Animation Compression, Audio Compression, Build Compression.
    See in Glossary
    format targeting support through Addressables for Android package to pack multiple texture compression3D Graphics hardware requires Textures to be compressed in specialized formats which are optimized for fast Texture sampling. More info
    See in Glossary
    formats to Android asset packs. At install-time, an APKThe Android Package format output by Unity. An APK is automatically deployed to your device when you select File > Build & Run. More info
    See in Glossary
    is built only using the optimal texture compression formats based on the device’s mobile GPU to load and render textures quicker and with less memory.
  • Added ApplicationExitInfo API to provide information on application crashes and application not responding (ANR) errors.
  • Made these improvements:
    • Made GameActivity as the default application entry point to provide more control over the interaction between Android and your application.
    • Raised the minimum supported Android version to 6.0 (API level 23).

Changes introduced in 2023.1

  • Added support for texture compression targeting which compresses textures multiple times using different formats. This helps to serve optimized APKs for different Android devices. For more information, refer to Texture compression targeting.
  • Added the Android Project Configuration Manager which is a flexible and robust way to modify custom GradleAn Android build system that automates several build processes. This automation means that many common build errors are less likely to occur. More info
    See in Glossary
    project files in your Android project. For more information, refer to Android Project Configuration Manager.
  • Added support for GameActivity, which is an application model available for Android projects powered by Android’s Game Development Kit. It provides more control over the essential parts of an application, gives more freedom and flexibility in the core code, and minimizes the amount of JNI that an application needs to use. It also improves how games work with Jetpack components, enables you to overlay native elements, and helps you more easily take advantage of new platform features. For more information, refer to The GameActivity application entry point.
  • Extended Unity’s Memory API to take advantage of Google Memory Advice library. This provides you with fine-grained information on memory usage which you can use to adjust your application accordingly.
  • Exposed Android’s reportFullyDrawn API so you can get more accurate information on your application’s startup time, one of the major metrics of user experience. This gives you a better understanding of your application’s cold and warm start rates across devices which you can use to further optimize the application.
  • Added build_fingerprint information to Android builds.

iOS

Changes introduced in Unity 6 Preview

  • Added .xcframework plugins support.
  • Removed Custom XIB Launch Screen Type from Player settingsSettings that let you set various player-specific options for the final game built by Unity. More info
    See in Glossary
    .
  • Added a new Player setting to support 64 bit ARM and 64 bit Intel/AMD simulator architectures. The ARM 64 and x86_64 support is also added to the Plugin Importer.

visionOS

Changes introduced in Unity 6 Preview

Added support for Apple’s visionOS platform.

Web platform (previously WebGL)

Changes introduced in Unity 6 Preview

  • Implemented the following LocationService methods and properties in Web platform:
    • Start()
    • Stop()
    • isEnabledByUser
    • lastData
    • status
  • Added the ability to copy and paste to and from the Unity player.

  • Added support for WebAssembly 2023. For more information, refer to WebAssembly 2023. WebAssembly 2023 includes support for up to 4GB of heap memory and is a collection of the following WebAssembly language features:
    • WebAssembly native exceptions
    • WebAssembly Single Instruction Multiple Data (SIMD)
    • Optimized data operations
    • BigInt
    • WebAssembly.Table
    • Non-trapping float to int conversions
    • Sign extension
  • Implemented the following LocationService methods and properties:
    • GetLastHeading()
    • SetHeadingUpdatesEnabled()
    • IsHeadingUpdatesEnabled()
    • GetHeadingStatus()
    • IsHeadingAvailable()
  • Added support for the Compass API.

  • Added support for mobile browsers.

  • Implemented the Emscripten 3.1.38 toolchain.

Changes introduced in 2023.2

  • Unity web builds now take advantage of the latest size and performance optimizations in the Emscripten toolchain.
  • Added support to specify the browser type and its executable path that you want your application to launch at runtime. You can specify this either using the command line or the GUI setting in the Build Settings window.

Changes introduced in 2023.1

  • Extended the diagnostics overlay in web builds with more metrics and graphs.
  • Improved console error message logs when Content-Encoding: gzip is not properly set on server, or when a web browser has a bug that prevents it from being able to decompress gzip content.

Windows

Changes introduced in 2023.1

Enabled Windows ARM64 Player compilation. For more information, visit the System Requirements page.

Physics

Changes introduced in 2023.2

  • Added ArticulationBody.jointPosition pointer lines to the JointA physics component allowing a dynamic connection between Rigidbody components, usually allowing some degree of movement such as a hinge. More info
    See in Glossary
    Angular Limits
    gizmoA graphic overlay associated with a GameObject in a Scene, and displayed in the Scene View. Built-in scene tools such as the move tool are Gizmos, and you can create custom Gizmos using textures or scripting. Some Gizmos are only drawn when the GameObject is selected, while other Gizmos are drawn by the Editor regardless of which GameObjects are selected. More info
    See in Glossary
    to show the exact position of the joint in the Scene view.

Productivity tools

ProBuilder

Changes introduced in Unity 6 Preview

  • Created the ProBuilder tool context which you can activate in the Tools overlay in the Scene view. The ProBuilder tool context enables ProBuilder-specific actions in the Scene view.
  • Removed the ProBuilder window. The ProBuilder tool context used in conjunction with the Scene view context menu provides a more streamlined workflow for ProBuilder actions.
  • Moved the Vertex, Edge, and Face edit modes to the Tool Settings overlay in the Scene view. To display ProBuilder edit modes in the Tool Settings overlay, enable the ProBuilder tool context in the Tools overlay.
  • Moved ProBuilder actions that rely on element selection, such as Bridge, Weld Vertices, and Grow Selection, to the Scene view context menu when the ProBuilder tool context is active in the Tools overlay.
  • Moved ProBuilder actions that apply to the entire ProBuilder mesh component, such as Export, Subdivide, and Center Pivot, to the Scene view context menu.
  • Moved creation and editing tools to the Tools overlay.
  • Added a preview option for most ProBuilder actions.
  • Moved these tool options from the ProBuilder toolbarA row of buttons and basic controls at the top of the Unity Editor that allows you to interact with the Editor in various ways (e.g. scaling, translation). More info
    See in Glossary
    to the Tool Settings overlay:
    • Select Hidden
    • Orientation: Normal
    • Rect: intersect
  • Improved creation tools:
    • Hold Shift after using a create shape tool to create a copy of the shape you just created.
    • After you use Create PolyShape, you can now draw multiple shapes without leaving the tool.

Profiler

Changes introduced in Unity 6 Preview

Released version 1.1.0 of Memory ProfilerA window that helps you to optimize your game. It shows how much time is spent in the various areas of your game. For example, it can report the percentage of time spent rendering, animating, or in your game logic. More info
See in Glossary
. Refer to the Memory Profiler package documentation for details.

Changes introduced in 2023.2

  • Added a Highlights module to the Profiler window.
  • Added a new Inverted Hierarchy view for the CPU Profiler.
  • Added metadata support for RenderTextures in Memory Profiler.

Changes introduced in 2023.1

  • Added metadata support for AudioClip and Shader in Memory Profiler.
  • Improved graphics memory tracking in Memory Profiler.

Programmer tools

Kernel

Changes introduced in 2023.1

Added functionality to control player connection listen port.

Scripting

Changes introduced in 2023.1

Added an option to display C# source code line numbers in call stacks in player builds.

Ray tracing API

Changes introduced in 2023.2

  • Ray Tracing Acceleration Structure Build Flags: New Raytracing Acceleration Structure build flags were introduced to Unity’s renderers and RTAS API. These flags allow you to control the tradeoffs between ray tracing memory usage, RTAS build time and ray tracing performance. Developers and artists can use the new flags to fine tune the ray tracing performance in their scenes and renderers.
  • Inline Ray Tracing in Shaders: You can now use in-line ray tracing in rasterization and compute shaders when targeting DXR1.1-capable Windows platforms, Xbox Series X/S, and Playstation 5. You can issue ray queries from within shaders to traverse the bound Raytracing Acceleration Structure and perform intersection testing. This allows you to implement all kinds of hardware accelerated raytracing effects and simulations.

Changes introduced in 2023.1

The Ray Tracing API is officially out of experimental status in Unity 2023.1. The Ray Tracing API includes stability and performance improvements to additional compatibility with the engine’s existing feature setA feature set is a collection of related packages that you can use to achieve specific results in the Unity Editor. You can manage feature sets directly in Unity’s Package Manager. More info
See in Glossary
.

Sentis

Use Sentis to run machine learning models directly within Unity applications and make use of the real-time AI-driven features for optimized performance. To learn more, refer to the Sentis documentation.

Shader Graph

Changes introduced in Unity 6

Added a new set of Production Ready sample content shaders to the Shader Graph package.

Changes introduced in Unity 6 Preview

  • Added a new sample content pack that can be installed with the Package Manager. The samples contain descriptions, examples, and break downs for a majority of the nodes in Shader Graph. These samples help you understand the inner workings of the nodes and see examples of how they work and how to use them.
  • Added new shortcuts for adding new nodes and toggling sub-window visibility, and moved several existing shortcuts to the Shortcut Manager.
  • Added a zoom step size option in the user preferences.
  • Added a customizable Heatmap color mode, which by default displays the estimated performance impact of each node in a Shader Graph.
  • Added the Feature Examples Sample to Shader Graph to show users how to achieve specific effects in Shader Graph.

Changes introduced in 2023.2

  • Added UGUI support for Shader Graph. Shader Graph now has subtargets for Canvas in both URP and HDRP. UI artists can create custom shaders for their UI elements using Shader Graph. Define the overall look and style of UI elements, create animated UI effects, and define custom button states while using less texture memory.
  • Enabled Shader Graph Canvas Master Node to allow users to create UI shaders for Canvas in HDRP, URP, and Built-in.

Changes introduced in 2023.1

Variant Keyword Prefiltering introduces the early exclusion of “multi_compile” keywords, based on Prefiltering Attributes driven by Render Pipeline settings. This greatly reduces the amount of variants being enumerated for potential stripping and compilation. The result is a significant reduction in shader processing time.

SpeedTree

Changes introduced in Unity 6 Preview

Added the SpeedTree9Importer, which supports .st9 files exported by SpeedTree Modeler 9 and includes the following:

  • Support for SpeedTree Games Wind and SpeedTree Legacy Wind effects.
  • The ability to configure wind strength and direction responsiveness through the Importer Settings.
  • New SpeedTree9 shaders for built-in (.cg), URP, and HDRP renderers (.shadergraph).
  • New shaders for the new wind effects, but no major changes to lighting.

Changes introduced in 2023.2

Improved SpeedTree visual quality in HDRP using a Transmission Mask to apply subsurface scattering only on leaves. HDRP/Nature/SpeedTree8.shadergraph to use its Subsurface Map for the Transmission Mask node to remove the unintended light transmission from tree barks and twigs. This also fixes the overly bright billboardA textured 2D object that rotates so that it always faces the Camera. More info
See in Glossary
lighting not matching the 3D geometry’s lighting.

Changes introduced in 2023.1

HDRP/Nature/SpeedTree8.shadergraph now uses its Subsurface Map for the Transmission Mask node to remove the unintended light transmission from tree barks and twigs. This also fixes the overly bright billboard lighting which didn’t quite match the 3D geometry’s lighting.

Splines

Changes introduced in 2023.2

You can now store personalized data on Spline objects. Additionally, the interface for editing points in the Inspector has been enhanced and certain APIs have been made available to the public. When you work on splines, you can now use the new Scene view context menu.

Terrain

Changes introduced in 2023.1

  • Migrated Terrain Tools to the Overlays toolbar framework to ensure that users have consistent and predictable Editor Scene authoring workflows.
  • Added Quality Settings to control various Terrain settings at different quality levels.

Test Framework

Changes introduced in 2023.2

  • Enabled retrying and repeating tests based on test level. Soon as the test finishes running its first iteration, the Editor now retries or repeats the test. Pass the command line arguments to the Editor to:
    • Repeat x runs the test x amount of times or until it fails. This is useful for testing unstable tests.
    • Retry x if a test fails. This run the test x amount of times or until it succeeds.
  • You can now run the tests in a randomized order, by using the Editor command line new argument -randomOrderSeed x, where x is an integer different from 0. If a new test is added to the project, the Test Framework keeps the random order passing the same seed, and places the new test in the random list accordingly.
  • Added TestFileReferences.json to generate on a build step of the player, so that Test runners can consume it to enrich data for the run step.
  • The UTF version now automatically updates for SRP tests.

Version Control

Changes introduced in Unity 6

  • Added an option to delete non-empty branches that you haven’t merged anywhere.
  • Added a setting to automatically add any new files to source control.

Changes introduced in Unity 6 Preview

Added a new tab view to list and manage locks in the Version Control feature of Unity.

Changes introduced in 2023.2

Added a project option to support tracking packages that exist on disk outside of the project’s root folder.

Changes introduced in 2023.1

  • Added a new Branch Name column in the Changesets view.
  • Added changelist related options to pending changes context menu.
  • Added option to enable changelists and display them in pending changes tab.

Visual Scripting

Changes introduced in 2023.1

  • Added a confirmation dialog when you reset assemblies and types in Project settingsA broad collection of settings which allow you to configure how Physics, Audio, Networking, Graphics, Input and many other areas of your project behave. More info
    See in Glossary
    .
  • Added a confirmation dialog when you reset Project settings and Editor preferences.
  • Added Sticky Notes for ScriptGraph and StateGraph.
  • Added support for parameter renaming in code used by API nodes.
  • Added support for nodes to have a button which triggers a custom action in their Inspector description.
  • Added support to convert nodes with an unknown type to placeholder nodes. These nodes return to normal when their original type is redefined, or if you replace the node.

VFX Graph

Changes introduced in Unity 6 Preview

  • Improved the Shader Graph Cross Pipeline workflow.
  • You can now handle built-in and custom attributes from the blackboard panel.
  • Allowed instanced rendering of VFX that have exposed textures or graphic buffers.
  • Strips now support the “Indirect draw” option. “Indirect draw” renders only the particles that are active, instead of full capacity.
  • Added support for per-particle sorting in strips.
  • Added new profiling/debugging panels in the VFX window.
  • Added Camera Buffer Access support in VFX with URP.
  • Support of ShaderKeyword declared in Shader Graph.
  • Reworked Flipbook player block.
  • Added collisionA collision occurs when the physics engine detects that the colliders of two GameObjects make contact or overlap, when at least one has a Rigidbody component and is in motion. More info
    See in Glossary
    events that allow specific processes upon contact.
  • The following improvements have been made to shortcuts in VFX Graph:
    • Registered the shortcuts in the global Unity Shortcut window.
    • Synced shortcuts with ShaderGraph where possible.
    • Added new shortcuts.
  • Added particle count readback for strips, which also allows strips to go to sleep state.
  • Enabled Frustum Culling for strips.

Changes introduced in 2023.2

  • Added VFX Graph assets with a predefined effect to the template window. You can use these templates as a starting point for your own effects.
  • Added Custom HLSL blocks and operators. Custom HLSL nodes let you execute your own code during particle simulation. You can use an operator for horizontal flow or a block for vertical flow in the VFX Graph context.
  • Added URP Decals with VFX Graph. URP Lit decal output are now supported in VFX Graph, making it possible to create stunning decal effects on URP that matches correctly your scene lighting and materials
  • Added lighting for Shader Graph smoke effects in HDRP and URP. This means that you can create custom smoke shaders that use six-way lighting in lit shaders.
  • Extended the Camera Depth and Color buffer behavior in URP. This means you can use the depth bufferA memory store that holds the z-value depth of each pixel in an image, where the z-value is the depth for each rendered pixel from the projection plane. More info
    See in Glossary
    for depth-based collisions or sample the color buffer to create custom effects.
  • Added support for motion vectors in URP.
  • Added support for motion vectors with Shader Graph.
  • Added the ability to use VFX Graph’s Shade Graph integration to use the material variant workflow to override settings in the VFX Output.
  • Enabled VFX instancing with exposed textures, meshes, or graphic buffers.

Changes introduced in 2023.1

  • Added a new output to modify the volumetric fog of HDRP.
  • Added VFX integration in Ray Tracing.
  • Fixed the six-way lighting and lightmap remapping options.
  • Optimized CPU and GPU VFX runtime in VFX Instancing.

XR

Changes introduced in Unity 6

Changes introduced in Unity 6 Preview

Added support for Foveated Rendering on Vision Pro.

Changes introduced in 2023.2

  • Added Hololens Automation Support.
  • Extended Unity’s integrated support for tone-mapping and outputting to HDR Displays in URP, HDRP and the built-in render pipeline to provide support for XR devices that have a HDR display.

Additional resources

What's new in Unity
New in Unity 6 Preview