Reimplemented an aggregate draw calls counter for profiling
ProfilerFeature
Added code coverage support for CoreCLR desktop standalone players.
ScriptingFeature
Added code coverage support for the CoreCLR scripting backend in the Editor.
ScriptingFeature
WebGL: WebGL IL2CPP builds now use .NET 10 base class libraries.
ScriptingFeatureWebGL
For build targets that support shader compilation via the DirectX Shader Compiler (DXC) - currently D3D12 and Vulkan, shader authors can use the new #pragma hlsl_version 2021 to enable the HLSL 2021 set of syntax enhancements detailed on the Microsoft developer blog post (https://devblogs.microsoft.com/directx/announcing-hlsl-2021/)
ShadersFeature
Updated DXC compiler to upstream main branch with Shader Model 6.10 support. Linear algebra intrinsics are now available via #include <dx/linalg.h> in HLSL shaders.
ShadersFeature
Added keyboard shortcuts and context menu items to add, replace, wrap, and unwrap elements in the UI Toolkit Hierarchy and UI Viewport.
UI ToolkitFeature
Added the box-shadow USS property, with outer and inset shadows, blur and spread radii, transitions, and UI Builder and Inspector support.
UI ToolkitFeature
Added a Project Auditor rule that reports Spot Lights that need a cookie to match the Built-in cone falloff when the light falloff mode is set to Quadratic.
URPFeature
Added OpenXR multiple Spatial containers support.
XRFeature
Added Temporal Pixel Synthesis support for XR.
XRFeature
Add vertices, indices and edge into SpriteImportData so that TextureGenerator can generate custom mesh.
2DImprovement
Added Instancing support for Deform.
2DImprovement
Android builds now use .NET 10 base class libraries.
AndroidImprovement
Internal cleanup of APK path lookup; no behaviour change.
AndroidImprovement
Removed main-thread stall when starting and stopping WebCamTexture.
AndroidImprovement
Improved the Animation Preview Model picker to preselect the model currently in use.
AnimationImprovement
TvOS builds now use .NET 10 base class libraries.
Apple TVImprovementtvOS
Improved the security of model import by updating the bundled Autodesk FBX SDK to 2020.3.11, addressing two buffer-overflow vulnerabilities in FBX file parsing.
Added a Console error when an import worker process stops before it connects to the Editor.
Asset PipelineImprovement
Improved Memory Profiler attribution of Asset Database native memory, which is now reported under named AssetDatabase roots instead of as unrooted memory.
Section headers in the Build Analysis window now highlight across their full width when hovered.
Build PipelineImprovement
Burst now enables safety checks in builds when the managed code variant player setting is set to Debug or Checked.
BurstImprovement
Improved the layout of the Burst Inspector window, with clearer toolbars and output tabs and a search bar that is always shown. Also added a function dropdown to the Burst Inspector that jumps to a function in the disassembly, and Previous and Next buttons to step through search matches.
BurstImprovement
Added a Pinned libraries section to the MSBuild and NuGet policy page that lists the libraries Unity pins and their versions.
DocumentationImprovement
Improved the error messages shown when DirectX 12 runs out of memory, which previously reported an unrecoverable GPU device error.
Reduced the render thread time of constant buffers updated every frame, which sometimes created a new GPU resource instead of reusing one of their previous ones.
DX12Improvement
Added a log message to warn when the activeBuildProfile flag is used and the build target is not supported.
EditorImprovement
Fixed reading files larger than 2GB from archives (.apk/.obb/.zip) on 32-bit Android devices.
EditorImprovementAndroid
Improved ConsistencyChecker warning for inconsistent assets. The warning now includes a hyperlink that will automatically open the previous import artifact file and the current import artifact file in a diff tool, streamlining troubleshooting of inconsistent assets.
EditorImprovement
Improved Editor startup time by avoiding an expensive full-assembly type scan during mode discovery
EditorImprovement
Improved the CacheServerV2 integration tests by spawning a single cache server for the suite of tests rather than spawning a new server for each test. This prevents the instability in restarting the server process between tests.
Shader compilation work is now captured in the buildreport.json Chrome trace profiling file that's generated during editor player builds allowing the time taken processing shaders to be visualized and inspected.
Updated layout, tooltips, and reset behaviour for some fields in the Skinned Mesh Renderer component.
EditorImprovement
Fixed performance metrics being reported without a sum, which prevented average values from being calculated.
Engine DiagnosticsImprovement
Calling BlobArray<T>.ToArray on an element type that contains BlobArray or BlobPtr fields is now reported as compile error UAC0044, in addition to the existing runtime exception.
EntitiesImprovement
Improved live baking diff performance in worlds with many entities.
EntitiesImprovement
Improved the performance of ComponentLookup, BufferLookup and TransformLookup methods that check whether an entity exists or has a component.
EntitiesImprovement
Added a Material Resolution setting to the Surface Cache Global Illumination renderer feature. New renderer features use Medium, and existing ones keep Very High.
GIImprovement
Added a World Culling view, an option to exclude the Scene view from entity culling, and culled and live entity and chunk counts to the Surface Cache section of the Rendering Debugger.
GIImprovement
Added Entity Culling settings to the Surface Cache Global Illumination volume override, which leave out entities that are beyond a distance from every camera, or smaller than a minimum size on screen, in pixels or degrees.
GIImprovement
Added material atlas usage to the Surface Cache panel of the Rendering Debugger.
GIImprovement
Added support for cutout materials in Surface Cache GI.
GIImprovement
Improved Memory Profiler attribution of lighting native memory, which was previously reported as Unrooted.
Tweaked presets in Surface Cache GI to make denoised results look better.
GIImprovement
Graph Toolkit editor windows no longer keep views and models alive in static caches after they are closed.
Graph ToolkitImprovementWindows
Improved CPU performance of ray tracing acceleration structure builds when the structure contains many static instances or has had many instances removed.
GraphicsImprovement
Improved Render Graph Viewer empty state message when connected to a player
Improved the performance of contact, trigger, body update, and joint threshold callbacks, which no longer query the engine for each event to find its callback target.
Improved the PhysicsCore2D Profiler to show timing information in a consistent hierarchy which indicates not only the times taken but also where in relation to other timings they occur.
- Improved module pinning UX in the profiler window. It is now possible to pin modules by hovering on a module chart header and clicking the pin icon, or directly from the Profiler Modules dropdown.
Profiler
Added a draggable divider below the pinned modules. When the pinned modules don't fit in the pinned area, the area scrolls and you can drag the divider to resize it.
ImprovementsImprovement
Improved native memory attribution so several kernel, plugin and file system allocations are reported against a named root instead of Unrooted in the Memory Profiler.