Fixed an issue where Tilemap.tilemapPositionsChanged and tilemapTileChanged callbacks didn't invoke when SetTiles changed only the transform or color of a tile.
6000.7.0a3
Alpha · Released Jul 23, 2026 · Changeset 4e1564fc2cca · 472 release notes
38build score
Upgrade risk+17Net cleanup+16Live debt+5
cohort: alpha (35)
Fixed an issue where TilemapRenderer inherited normal maps from other Tiles when a Tile did not have a normal map.
Fixed duplicate Sprite Editor window settings appearing in project settings.
Fixed metal shader errors for RenderingLayerMask pass. (D2D-8107)
2DFix
Documented the steps a developer must do for the AccessibilityRole.Slider, AccessibilityRole.TextField, and AccessibilityRole.SearchField accessibility nodes to receive hardware keyboard input on Android.
Fixed accessibility node queries logging a main-thread error to the console on Android when a screen reader is enabled.
AccessibilityFixAndroid
Fixed double state announcement for AccessibilityRole.Toggle nodes on Android.
Fixed the main application window also being provided for secondary windows for UI Automation clients.
AccessibilityFixWindows
Fixed the screen reader being slow to navigate away from AccessibilityRole.Dropdown nodes on Android.
Fixed the Windows player crashing at shutdown once a UI Automation client (e.g. a screen reader) has interacted with the application.
As a result of an unsupported configuration, a NavMeshAgent would try to separate from its own NavMeshObstacle component by jumping in arbitrary directions. Now the agent moves in one stable direction.
NavMeshAgents created or teleported inside box NavMeshObstacles could not move out of the obstacles.
Negative values for ``Screen.brightness`` now restore the device's preferred screen brightness.
Animator.ResetControllerState(true) didn't reset non-float parameters.
Fixed a missing link to the Timeline documentation.
Fixed possible hash collision in AvatarAutoMapper.
Fixed issue with cache mechanism of compressed textures of the Accelerator not tracking texture dependency on BC7 compressor when fetching from cache. Textures were not being reimported. Improved hash calculation.
Fixed an Editor crash in WriteObjectToVector / CreateOrReloadInspectorCopy that could occur when entering Play Mode.
Fixed an import issue when creating a plugin folder (.androidlib, .bundle, .plugin, .framework, .xcframework) and adding new files in it.
Fixed an issue where small artifact data types could be incorrectly garbage collected, leading to leaks and even corruption.
Fixed asset previews staying white after a referenced texture is deleted and restored with the same GUID.
Fixed the AssetDatabase re-importing assets endlessly when an asset depended on a default asset produced after an import crash.
Building will now fail if scene callbacks throw an exception or crash, regardless of strict mode.
ContentLayout.json (produced by content directory builds) now includes an OutputLFID field on each LoadableObjectIds entry. Previously only the source object's identifier was recorded, so tools could not correlate a loadable with its exact object in the build output without also reading BuildManifest.json. The ContentLayout.json schema version is now 2.
Moved "Enable MSBuild Compilation" project setting into editor's pane.
Build PipelineFix
Fixed disappearing foldout properties in Cinemachine Orbital Follow inspector.
Hardware Dynamic Resolution on D3D12 no longer produces a bright-pixel corruption artifact on AMD GPUs caused by uninitialised placed-resource compression metadata after a resolution-scale switch.
HDRP Sample projects no longer spam D3D12 validation error (category 9, id 1422) on startup.
Placed-resource aliasing on D3D12 no longer emits repeated D3D12 validation errors (category 9, id 1422) during Hardware DRS operation.
Added analyzer rules UAC1019 and UAC1020 (both Error severity) to detect [SerializeReference] fields in serialized dictionary keys and values, which cause silent data loss or dictionary corruption. The analyzer reports an error on the dictionary field declaration at compile time.
Applications no longer hang when calling SplashScreen.Stop(FadeOut) while the splash screen is disabled.
Asset Import Workers no longer crash and Player builds no longer fail when building after deleting and recreating an active Build Profile.
Ensure the SearchDetailView actually refresh its uitk controls only when needed.
Fixed a bug where a GameObject's cut styling persisted in the Hierarchy after entering Play Mode while paste command was no longer available.
Fixed a crash that occurred when selecting the DrawTransparentObjects event in the FrameDebugger. (UUM-146553) First seen in 6000.7.0a3.
Fixed an issue where build usage read and write errors navigated to the obsolete Project Auditor UI.
Fixed an issue where ListView controls, such as the Hierarchy window, did not scroll with the mouse wheel during a drag-and-drop operation in the Windows Editor.
Fixed an issue where the Hierarchy selection highlight would disappear and global selection would not update when right-clicking on an empty space in the Hierarchy window.
Fixed an issue where the Sprite asset Inspector window was misaligned.
Fixed an issue where toggling a column control on an unselected Hierarchy row also applied the change to all selected GameObjects.
Fixed dual initialization of script compilation pipeline logic. (UUM-146548) First seen in 6000.7.0a1.
Fixed EditorWindows being opened by AssetImporter process and getting orphaned in the Taskbar.
Fixed imgui delayed field not being committed some times on focus out.
Fixed instability in test by forcing texture import each test run.
Fixed MSAA textures not rendering in the editor when OpenGLES is the active graphics API.
Fixed performance regression in IMGUI event creation.
Fixed the banner text being truncated in the WebGL build profile window at certain window sizes.
Fixed the Hierarchy expand/collapse toggles not working after the first click.
Fixed the Lighting Settings Direct, Indirect, and Environment Samples fields accepting typed values above the slider's maximum.
Fixed various issues with Sprite Assets used in ATG.
In the Project Auditor window, Ctrl/Cmd+A no longer selects the "Home" tab without refreshing the view.
EditorFix
Multiplayer: Play Mode Input Behavior setting sync from main to clone.
Project Auditor: Fixed issue where Project Auditor is missing build usage mesh read/write issues for ParticleSystemRenderer.
Project Auditor: Fixed sections not refreshing with their results until the full analysis is completed, instead of updating as soon as that section's own analysis finished. (UUM-144826).
Replace OpenJDK in-tree zips with Stevedore artifacts.
EditorFix
Show in Project (the row context menu and the inspector Select button) silently did nothing for renamed/deleted assets. Both entry points now disable the action when the asset can no longer be resolved, and surface a non-modal "Asset not found" notification if it is triggered otherwise.
The collapse repeat-count badge inherited the white selection-text color, making the count invisible on its light pill in the Light theme. The badge now sets its own theme text color.
The Overview Log column showed the entire multi-paragraph message as an auto-tooltip. The tooltip has been removed; the full message is shown in the detail pane when a row is selected.
This PR fixed a bug where reordering GameObjects showed the "+" (add) icon instead of the arrow icon by mappping DragVisualMode.Move to DragAndDropVisualMode.Link.
Updated nav agent to ignore and warning about a path being set from a navigation surface not matching the agent's Id.
Updated WinEditor's warning dialog text when running Unity with elevated privileges.
USS files that import a built-in theme are now reimported automatically when the referenced theme changes.
EditorFix
Fixed an ObjectDisposedException and leaked world nodes in the Entities Hierarchy when a world is disposed.
Fixed Entities Memory Profiler showing duplicate components when multiple worlds share the same archetype.
Fixed Ignoring invalid [UpdateAfterAttribute] warning on the ExplicitFilterSystem when disposing the Hierarchy World Handler.
Fixed the SubScene foldout icon disappearing in the Hierarchy window after undoing changes to the SubScene GameObject.
NullReferenceException in AsyncLoadSceneOperation.ScheduleSceneRead() when loading subscenes containing UnityObjectRef with invalid EntityIds.
Systems window "Show Full Player Loop" should be disabled by default.
Added a Screen Space Reflections (SSR) renderer feature to URP.
GIFix
Disabled surface cache GI in material previews and thumbnails.
GIFix
Fixed a warning that appeared when canceling an Adaptive Probe Volume (APV) bake.
Fixed an issue in the compute baker where contribution from the skybox was unexpectedly noisy when a few texels are very bright (like a sun). (UUM-146116) First seen in 6000.7.0a1.
Fixed buffer-capacity int overflow on Metal in UnifiedRayTracing.
Fixed options and ports TrySetValue with Enum.
Fixed missing additional lights in the Quad Views inner views when split culling is applied.
Fixed rendering issues on XR when dynamic resolution is enabled with an injected RenderObjects pass.
ScriptableRenderContext draws that use only SortingCriteria.OptimizeStateChanges no longer produce more SRP batches than SortingCriteria.RenderPriority for scenes that mix MeshRenderer and SkinnedMeshRenderer objects sharing a material. Previously the sort split these renderers into separate groups by renderer type, breaking SRP batches that the batcher would otherwise coalesce.
Fixed a water null exception when exiting the frame debugger.
Fixed crash on startup with the deep profiling support enabled.
Fixed typo checking VAR twice instead of MVAR.
Fixed a bug where pulling down the iOS Control Center could cause a Unity app to stop playing back audio.
Fixed performance regression by using placement new with a buffer instead of allocating memory using memory managed.
Fixed some Xbox controller inputs are mapped to different buttons than they should be in Unity Input System when the controller is connected through Bluetooth on Linux.
Fixed libMonoPosixHelper.dylib not being found in macOS server builds.
Fixed the standalone player window title not using the localized application name.
"No cameras rendering" warning can not be dismissed in Multiplayer Play Mode virtual players. (UUM-145105) First seen in 6000.7.0a3.
Console error logged when deleting the active Play Mode Scenario.
Fixed scrolling so it now works correctly when the cursor hovers over the Complexity bar.
MultiplayerFix
Fixed the install button so it no longer displays "Installing package(s)..." after users cancel the install dialog.
MultiplayerFix
Unity Transport: Fix compilation errors in WebGL builds introduced in 6000.7.0a2. (UUM-146929) First seen in 6000.7.0a3.
Unity Transport: Network interfaces are now automatically disposed of before domain reloads. Without this protection, socket handles could be leaked which would cause errors when trying to re-bind to the same port later on. Note that this isn't a replacement for properly disposing of NetworkDriver objects; it's only a protection in cases where that's not done.
Fixed a spurious "JobTempAlloc has allocations that are more than the maximum lifespan of 4 frames old" warning that appeared when baking a ghost prefab set to Owner Predicted mode without a GhostOwner component.
Netcode for EntitiesFix
Added warning log messages when importing Untrusted or Limited Trust Asset Packages in Batch Mode or CLI.
Package ManagerFix
Fixed an issue where the import status did not display for imported samples in the Sample tab.
Fixed package install operations hanging when the project contains packages with entitlement errors.
Removed the recently introduced upmSign batch-mode command. It requires more thought and validation on the product side.
Fixed an issue where ConfigurableJoint setups would jitter once they reached their distance constraint maximum, due to their contact distance not being handled correctly.
Removing double-spaces from Collider2D help-box text.
Fixed an issue where directly loading profiling data on macOS did not filter to relevant file types (.data, .raw).
Fixed crash when recording profiler data with null metadata. (UUM-146329) First seen in 6000.7.0a2.
Fixed filename and line information for GC.Alloc callstacks in Unity Profiler. (UUM-146683) First seen in 6000.7.0a3.
Memory Profiler under-reports ALLOC_TEMP_JOB_ASYNC footprint, causing unused blocks to appear as Untracked.
Fixed an issue where an activated RectTool would start throwing errors if SceneView camera zoomed out far away from the selected object.
Fixed AccessViolationException serializing ISerializationCallbackReceiver structs that contain reference-type fields on CoreCLR. (UUM-145517) First seen in 6000.7.0a2.
Fixed an issue in Dictionary serialization so it preserves entries with null keys in the same way it already preserved duplicate-key entries. The null-key rows in the UI are now marked with a warning icon as well so they can be identified and fixed (set to a valid object reference).
Fixed crash where WeakReferences were being destroyed off of the main thread, which contended with Mon's GC assumptions about WeakReferences only being freed from the main thread. This fixes an eventual crash inside the Garbage Collector.
Fixed the shader keywords to work properly in cases where one pass declares keywords as multi_compile/shader_feature and another pass declares the same keywords as dynamic_branch.
Strip early subshaders if the RenderPipeline tag does not match any present renderpipeline assets for the build target.
BatchPackedCullingViewID::GetEntityID generates the EntityID using the ulong handle directly instead of an int mask.
Gate RenderGraph UV origin validation behind the enableValidityChecks flag to allow debug tools to bypass the check when intentionally creating conflicting UV origins.
SRP CoreFix
SRP Core: Fixed render area bug for FinalBlit pass when using dynamic resolution with renderScale 1.0.
Stablize flaky inspector header test.
Fixed a LegacyRuntime memory leak.
Added some performance regressions in reading/writing some VisualElement properties and manipulating its hierarchy.
UI ToolkitFix
Creating a new PanelRenderer will not correctly restore the PanelSettings field when undo/redo occurs.
Disabled backdrop-filter on world-space UI Toolkit panels.
Enabled Open in Context button in main stage.
Exposed the method VectorUtils.BuildVectorImage(SceneInfo, Rect).
Fixed an issue where "Accessing invalid property" errors occurred when entering Play mode after modifying a UXML asset.
Fixed an issue where exporting variables with a value of zero didn't preserve the unit. (UUM-146366) First seen in 6000.7.0a3.
Fixed an issue where the border-radius and border-width header fields in the inspector could not be selected or edited by typing.
Fixed an issue where RegisterUIReloadCallback did not trigger the callback when a GameObject was re-enabled.
Fixed dropped binding attributes when editing template in context.
Fixed ListView and TreeView not scrolling horizontally to reveal the target item, so deeply indented items (such as a nested element picked in the UI Toolkit Debugger) are no longer hidden off-screen.
Fixed ObjectDisposedException being thrown when adding or removing elements in a list in the Debug Inspector.
Fixed out-of-range USS opacity values being accepted without any warning.
Fixed selection handles remaining in the UI Viewport after exiting and re-entering staging.
Fixed the class completer to include theme stylesheet in the UI Builder and IA inspectors. (UUM-146208) First seen in 6000.7.0a1.
Fixed the UI Library not displaying UXML files.
Fixed transition-delay being ignored when opacity is listed before scale in transition-property.
Fixed UI Builder Inspector not formatting the display name of an attribute defined via UxmlObjectReference. (UUM-146402) First seen in 6000.7.0a2.
Fixed UI viewport code preview panes clipping incorrectly when resizing. (UUM-146195) First seen in 6000.7.0a2.
Fixed undo when variable is set causes "Trying to read value of type" exceptions. (UUM-146459) First seen in 6000.7.0a3.
Fixed unqualified Style and AttributeOverrides tags being flagged as not allowed when validating a UXML file against the generated schema.
Fixed UXML asset corruption and import errors when selecting a built-in resource as a binding Data Source.
Fixed VisualElements styled with -unity-material (and other asset-backed style properties such as background-image and -unity-font) rendering with the default shader (solid white) after the referenced asset's Addressables content was unloaded and reloaded.
Fixed warnings about invalid URIs being thrown when a UI Builder USS Variable of type Asset Reference is left empty.
Fixed warnings about invalid URIs being thrown when the UI Builder Material field is set to null.
Hid internal UIToolkit Authoring controls from UI Library.
Made the Create > UI Toolkit asset menu item names and default file names consistent.
VisualElement Inspector Open in Context button corrupts UI Viewport window.
Fixed an issue where the "Reflect Sky" setting in URP Screen Space Reflections would cause artifacts when the reflected point lies behind a piece of geometry.
Fixed shader resolve for XR is not enabled properly in on-tile postprocessing.
Fixed SSAO throwing errors in build when a renderer has SSAO added but disabled. (UUM-146104) First seen in 6000.7.0a2.
Fixed an issue where unchanged files were automatically added to the change list when fetching files in Perforce after asset importing.
Fixed video playback failing to seek to certain frames in WebM clips.
Fixed streaming of response body in UnityWebRequest when server does not set "Content-Length" header.
Fixed issue in WebGPU Device Filter editor control layout.
Texture2D.GetPixels and ComputeBuffer.GetData will now work with WebGPU for browsers that support WebAssembly JSPI. See https://caniuse.com/wf-wasm-jspi for browser support information.
Fixed a case where in In 3D Editor mode, textures did not generate Sprite subassets when imported as SpriteSprite Generation.
Fixed an issue where changing the SpriteAtlas option in EditorSettings results in render artifacts.
Fixed an issue where Tilemap.tilemapPositionsChanged and tilemapTileChanged callbacks didn't invoke when SetTiles changed only the transform or color of a tile.
Fixed an issue where TilemapRenderer inherited normal maps from other Tiles when a Tile did not have a normal map.
Fixed duplicate Sprite Editor window settings appearing in project settings.
Fixed exception when creating new Tile asset when doing a drag and drop on a Tile Palette that is open for edit.
Fixed metal shader errors for RenderingLayerMask pass. (D2D-8107)
2DFix
Fixed normals maps for flipped Tiles when using TilemapRenderer in Chunk mode.
Fixed Tilemap not updating in the Scene view when the Sprite property of an assigned Tile asset is changed in the Inspector.
Fixed Tilemap not updating in the Scene view when the Sprite property of an assigned Tile asset is changed in the Inspector.
Move filter field outside of scroll area in Tile Palette Active Targets dropdown.
Resize Tile Palette Active Targets dropdown when filter is active.
Documented the steps a developer must do for the AccessibilityRole.Slider, AccessibilityRole.TextField, and AccessibilityRole.SearchField accessibility nodes to receive hardware keyboard input on Android.
Fixed accessibility node queries logging a main-thread error to the console on Android when a screen reader is enabled.
AccessibilityFixAndroid
Fixed double state announcement for AccessibilityRole.Toggle nodes on Android.
Fixed the main application window also being provided for secondary windows for UI Automation clients.
AccessibilityFixWindows
Fixed the screen reader being slow to navigate away from AccessibilityRole.Dropdown nodes on Android.
Fixed the Windows player crashing at shutdown once a UI Automation client (e.g. a screen reader) has interacted with the application.
As a result of an unsupported configuration, a NavMeshAgent would try to separate from its own NavMeshObstacle component by jumping in arbitrary directions. Now the agent moves in one stable direction.
NavMeshAgents created or teleported inside box NavMeshObstacles could not move out of the obstacles.
Fixed missing Tools 26.1.1 empty placeholder for windows-arm64.
Fixed split APKs by target architecture all receiving the same version code.
Negative values for ``Screen.brightness`` now restore the device's preferred screen brightness.
Animator.ResetControllerState(true) didn't reset non-float parameters.
Fixed a missing link to the Timeline documentation.
Fixed an issue where Animator transition copy paste would not paste interruption parameters.
Fixed function name changing on Animation Event inspector on multi selection when editing another field.
Fixed play button enabled state not updating when another Animation Window changes preview.
Fixed possible hash collision in AvatarAutoMapper.
Fixed issue with cache mechanism of compressed textures of the Accelerator not tracking texture dependency on BC7 compressor when fetching from cache. Textures were not being reimported. Improved hash calculation.
Fixed an Editor crash in WriteObjectToVector / CreateOrReloadInspectorCopy that could occur when entering Play Mode.
Fixed an import issue when creating a plugin folder (.androidlib, .bundle, .plugin, .framework, .xcframework) and adding new files in it.
Fixed an issue where small artifact data types could be incorrectly garbage collected, leading to leaks and even corruption.
Fixed asset previews staying white after a referenced texture is deleted and restored with the same GUID.
Fixed the AssetDatabase re-importing assets endlessly when an asset depended on a default asset produced after an import crash.
Optimised a number of hot paths for asset importing and content building.
Asset PipelineFix
Fixed a rare crash in Sound.getOpenState caused by a data race during asynchronous sound loading.
Fixed RootOutputInstance.IRealtime not properly running through Burst if requested, even though Burst would compile and show the associated code in the Inspector.
Building will now fail if scene callbacks throw an exception or crash, regardless of strict mode.
ContentLayout.json (produced by content directory builds) now includes an OutputLFID field on each LoadableObjectIds entry. Previously only the source object's identifier was recorded, so tools could not correlate a loadable with its exact object in the build output without also reading BuildManifest.json. The ContentLayout.json schema version is now 2.
Moved "Enable MSBuild Compilation" project setting into editor's pane.
Build PipelineFix
Fixed an issue with DotNetFrameworkDependentApp on CSharpTools by not using it because it wasn't needed.
Build SystemFix
Fixed disappearing foldout properties in Cinemachine Orbital Follow inspector.
Fixed Transform serialized values not being properly initialized when cloning GameObjects.
Added additional resources for info about using components.
DocumentationFix
Clarify serialization documentation for supported collection types and Dictionary<TKey, TValue>.
DocumentationFix
Fixed spacing issue in UI Toolkit documentation.
DocumentationFix
Hardware Dynamic Resolution on D3D12 no longer produces a bright-pixel corruption artifact on AMD GPUs caused by uninitialised placed-resource compression metadata after a resolution-scale switch.
HDRP Sample projects no longer spam D3D12 validation error (category 9, id 1422) on startup.
Placed-resource aliasing on D3D12 no longer emits repeated D3D12 validation errors (category 9, id 1422) during Hardware DRS operation.
Added analyzer rules UAC1019 and UAC1020 (both Error severity) to detect [SerializeReference] fields in serialized dictionary keys and values, which cause silent data loss or dictionary corruption. The analyzer reports an error on the dictionary field declaration at compile time.