Unity 2020.2.0 Beta 2

Released:
Select the runtime platforms of your choice from the list below (the desktop runtime is included as standard) or, to install the full complement of runtime platforms, use the download assistant installer above.

Known Issues in 2020.2.0b2

  • AI: A NavMeshAgent GameObject teleports to a near NavMeshSurface when collided with a moving NavMeshObstacle (1072945)

  • Asset Bundles: [Performance Regression] AssetBundleLoadAllAssets - Load_Prefabs_AllAssets is significantly slower than 18.4 (1203512)

  • Asset Bundles: [Performance Regression] AssetBundleLoadSingleAssets : LoadAsync_Prefabs_SingleAssets is significantly slower than 18.4 (1203511)

  • Asset Import Pipeline: "Failed copying file" error message appears while dragging file from Explorer to the Editor (1270452)

  • Asset Import Pipeline: Project Startup time slow due to unmatched Custom Dependencies (1276078)

  • Asset Importers: [Performance Regression] Importing an fbx model is noticeably slower when the model contains Animations (1265275)

  • Audio: Unity crashes in Play Mode at FMOD_Resampler_Linear (928576)

  • Build Pipeline: Building subscenes without platform package doesn't work (1270120)

  • GI: Fix a synchronization issue that caused GI bakes to never complete when using the GPU lightmapper on MacOS. (1204412)
    Fixed in 2020.2.0b3.

  • Global Illumination: [GPU PLM] OIDN produces noisy results (1272954)

  • Global Illumination: [GPU PLM] Optix denoiser produces noisy results (1272950)

  • Global Illumination: [OSX] Crash on 'Preparing Bake' stage when rebaking GI after changing lighting settings and clearing baked data (1271626)

  • Global Illumination: [PLM] - Editor crashes after switching lightmapper, turning off auto-mode (1270355)

  • Global Illumination: [macOS] BugReporter doesn't get invoked when the project crashes (1219458)

  • Graphics - LowLevel: Gfx.WaitForPresent / Gfx.WaitForPresentOnGfxThread huge spikes in Profiler when in Play Mode with vSync set to "Don't Sync" (1108469)

  • Graphview: The majority of the Graph View functionality stops working when adding a Node into the Stack Node (1275569)

  • IL2CPP: UnityLinker strips classes used with the SerializeReference attribute (1232785)

  • Linux: Performance Regression in Play Mode while using the Editor on Linux. Play mode is unable to reach more than 10FPS. (1271213)

  • Linux: [Linux editor] crash on opening old project's layout file (1275287)

  • MacOS: [OSX] Shader import in an external exFAT drive crashes Unity (727114)

  • Mobile Rendering: [URP] Low performance on some Android devices when rendering only one terrain/texture (1261629)

  • Mono: Crash with various stack traces when exiting Play Mode after recompiling scripts (1238859)

  • Packman: Editor crashes when upgrading/downgrading between 2020.1 and 2020.2 (1276565)

  • Particles: Fixes a crash caused by changing the duration in the editor during playmode. (1273529)
    This has already been backported to older releases and will not be mentioned in final notes.
    Fixed in 2020.2.0b3.

  • Scene Hierarchy: Create Objects at Origin property is not visible in the Preferences/General window (1276118)

  • Scene Management: Allocated memory is not cleared when loading and unloading scenes (1275751)

  • Scene Management: Building project when two identical scenes are open crashes the editor (1266194)

  • Scene Management: Reordering children in the Hierarchy does not dirty the scene nor record undo (1269464)

  • Scene Management: Undo-Redo of "Convert to prefab" operation crashes Editor (1272148)

  • Scene Template: "Layout update is struggling" error thrown continuously on creating "Scene Template" in the Project window (1275253)

  • Scripting: Building a project crashes when a Script Component has serialized array of a type that contains a serialized PropertyName field (1267271)

  • Scripting: Switching targets in SRP projects will cause XR errors on some platforms (1196164)

  • Scripting: [CompilationPipeline] Project recompile and package changes takes a long time when Project includes a lot of packages (1272396)

  • Scripting: [SerializedField] fields produce "Field is never assigned to..." warning (1080427)

  • Scripting: [Virtual Texturing][HDRP] VT cache settings cannot be edited in HDRP asset (1274526)

  • Serialization: Prefab changes are not applied and an error occurs when changing fields that have SerializeReference attribute (1237191)

  • Serialization: [Performance] Slow asset refresh when modifying any script, 45 seconds on one line change (1270910)

  • Serialization: [SerializeReference] Polymorphic instances are always recreated when applying any inspector value change (1193322)

  • Shadows/Lights: Skybox lighting is not rendered after creating gameobjects in the new scene until the lighting is rebaked (1250293)

  • Shadows/Lights: [Regression] Directional light shadow artefacts in 2020.2.0a21 (1271048)

  • Shuriken: Editor crashes in ParticleSystemRenderer::UpdateVertexInputLayout when instantiating particles with Render type "Mesh (1274851)

  • Universal RP: [URP Template] Major performance drop in the Editor during Play Mode (1277222)

  • Version Control: Unity crashes when connecting to a perforce server with an invalid workspace name in the Project Settings (1275466)

  • Vulkan: [Graphics]"Gfx command not handled" error thrown continuously on switching editor to Wireframe mode using Vulkan Graphics API (1276056)

  • WebGL: [Linux] WebGL build always fails and throws a FileNotFoundException (1268262)

  • Window Management: [window layout] cannot load editor layout, stuck in infinite loop of "failed to load window layout" (1275270)

  • Windows: Crash on D3D12SwapChain::CreateHWND when CreateSwapChainForHwnd returns E_INVALIDARG (1223896)

  • iOS: [UaaL] UnityFramework with 3rd party plugins triggers watchdog termination after launch (1262272)

  • iOS: [iOS 14] VideoPlayer crashes on EXC_BAD_ACCESS or signal SIGABRT when audioOutputMode is set to APIOnly or Audio Source (1274837)

New 2020.2.0b2 Entries since 2020.2.0b1

Fixes

  • AI: Fixed an editor crash when retrieving the names of NavMesh agent configurations from a corrupt NavMeshAreas.asset file. (1257220)

  • Android: Fixed an issue with GrabPass when Blit Type was Auto. (1271765)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Animation: Fixed a flicking issue where the whole animator transition inspector window was resizing. (1233111)

  • Animation: Fixed an issue where the additive scaling would have unexpected behavior if the referenced clip did not contain that scaling property. (1267981)

  • Asset Import: Fixed a for crash in Material::ClearUnusedProperties when assigning a loaded shader in OnPostprocessMaterial/ (1267717)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Bug Reporter: Fixed an issue that allowed temporary files to be uploaded. (1220950)

  • Build Pipeline: Fixed a build corrupted issue when a field coming from an assembly override was serialized in assets/scenes. (1265330)

  • Build Pipeline: Fixed a build error issue when many assemblies are passed to UnityLinker or BuildPlayerDataGenerator. (1267783)

  • DX12: Fixed Standalone applications freezing sometimes when ray tracing effects are used in HDRP. (1272952)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Editor: Fixed a Null reference exception issue with New Scene Dialog IsPlaying. (1272121)
    This is a change to a 2020.2.0a19 change, not seen in any released version, and will not be mentioned in final notes.

  • Editor: Fixed an issue where a GameObject that was copy pasted to a different parent did not have the same world position as the original GameObject. (1268152)

  • Editor: Fixed an issue where bundle identifier did not update on changing the company and product name in the Player Settings. (1268158)
    This is a change to a 2020.2.0a20 change, not seen in any released version, and will not be mentioned in final notes.

  • Editor: Fixed an issue where dragging from a closed window in the mac Editor would crash. (1257002)

  • Editor: Fixed an issue where the Editor Windows would not stay open if there is an exception thrown during the save process. (1255998)
    This is a change to a 2020.2.0a15 change, not seen in any released version, and will not be mentioned in final notes.

  • Editor: Fixed an issue where the inspector was not displaying state and transition properties that were not migrated. (1251586)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Editor: Fixed an issue where the Line Renderer Simplify toggle would not refresh the scene view. (1258815)

  • Editor: Fixed an issue where the Linux editor main window would not correctly remember saved window layout. (1258663)

  • Editor: Fixed an issue where the Scene View's Select All would not taking into account scene picking/visibility state. (1250345)

  • Editor: Fixed an issue with restoring of Rect Transform on UNDO after a render mode change. (1246899)

  • Editor: Fixed an issues related to labels that disappeared and Overlaping of labels in Layer Collision Matrix. (1259361)

  • Editor: Fixed an issuey where the Editor toggle boxes' height did not adjusted to align with their label. (1260494, 1267326)

  • Editor: Fixed an object sixing issue when the Center scale handle was not given an initial scale that was [1,1,1]. (1264038)

  • Editor: Fixed an overflow issue where keycode mappings were not using the std maps. (1270330)

  • Editor: Fixed the Collider component alignment issue. (1254624)
    This is a change to a 2020.2.0a15 change, not seen in any released version, and will not be mentioned in final notes.

  • Editor: Forces normal windows to open in the active space (on top of the editor) when editor is full screened on mac. This prevents a 'hidden' window. (1218891)

  • Editor: Game tab no longer undocks when switching between tabs while cursor is locked. Cursor no longer locks on focus, only on a click in the Game tab. Also fixes an issue where cursor lock would not function properly (e.g. lock without hiding) when moving docked window to a new location in the editor. All fixes are specific to the editor on Windows. (1246445)

  • Editor: In the linux editor, guiviews no longer gain focus on scroll events (scroll still occurs), which has the effect of preventing the editor from stealing focus on scrolls over guiviews that were previously unfocused. (1270605)

  • GI: Fixed a crash in the lightmapper when using a rendertarget as a cookie texture. (1261117)

  • GI: Fixed an issue where the Force Stop button to was not stopping when baking with the progressive lightmappers and composite lightmaps were in their current state. (1069481)

  • GI: Fixed and issue where users were not allowed to select UV colors for the Lightmap Preview. (1252445)

  • Graphics: Fixed a memory corruption issue when calling GetPixels on a compressed texture trying to get a top mipmap (1x1,2x2,..) where the dimension that was lower than the used texture compression block size (typically 4x4). (1266511)

  • Graphics: Fixed a potential crash when enabling hardware dynamic resolution using DX12 renderer. (1158661)

  • Graphics: Fixed a shader compilation for OpenGL ES issue when using shadow samplers. (1271470)
    This is a change to a 2020.2.0a11 change, not seen in any released version, and will not be mentioned in final notes.

  • Graphics: Fixed an int32 overflow issue that occured during RenderTexture runtime memory calculations (1263913)

  • Graphics: Fixed an issue where anisotropic UI was being disabled in the texture inspector. (1271794)
    This is a change to a 2020.2.0 change, not seen in any released version, and will not be mentioned in final notes.

  • Graphics: Fixed an issue where color writes would not work during a shadow pass when a color attachment was present. (1259973)

  • Graphics: Fixed an issue where copying compressed volume textures did not uses correct volume slice sizes. (1266585)

  • Graphics: Fixed an issue where GetPixels on Texture2D was compressed with Crunch would throw an exception and crash. (1257655)

  • Graphics: Fixed an issue where RenderTexture.Create with bindTextureMS option would fail silently if the used MSAA antiAliasing value was unsupported with the active graphics device.

  • Graphics: Fixed an issue where scene view wireframe mode did not works correctly in editor when using Vulkan with a terrain. (1205332)

  • Graphics: Fixed an issue where skinning on feature level D3D10.x would not fallback to CPU. (1269149)

  • Graphics: Fixed an issue where some of the fields on the SkinnedMeshRenderer were missing tooltips. (1263903)

  • Graphics: Fixed an issue where vulkan scratchbuffer int32 overflowed. (1272953)

  • Graphics: Fixed buffer over-read when decoding BC4/5 texture data. (1270857)

  • Graphics: Metal: Fixed a compatibility issues with MSAA/filtering on Apple Silicon and macOS 11.

  • IL2CPP: Avoid calling a default constructor during marshaling for reference types that are not out parameters. (1263916)

  • IL2CPP: Fixed a crash on startup with script debugging enabled with deeply nested generics. (1226831)
    This has already been backported to older releases and will not be mentioned in final notes.

  • IL2CPP: Fixed an error "Attempting to constrain an invalid type" when making a constrained call on a by ref parameter with a modreq or modopt modifier. (1265192)

  • IMGUI: Fixed a scroll bar thumb overlapping with arrow icons issue in the console window. (1269928)

  • License: Fixed an issue where Report/log licensing errors were not sent by the client. (1273213)

  • Linux: Fixed an issue where keypad period was not associated with the correct keycode. (1267430)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Linux: Fixed an issue where Nvidia GPUs would not properly support GPU based lightbaking. (1263018)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Linux: Fixed an issue where the eyedropper tool in the color picker did not work on Linux. (1174814)

  • Linux: Fixed several crashes in the Linux Download Assistant. (1248265)
    This has already been backported to older releases and will not be mentioned in final notes.

  • macOS: Fixed an issue where shader pre-warming woulc crash when a fragment shader returns something else than the usual 4 components. (1264839)

  • Package Manager: Fixed an issue where Asset Store package download progress tracking UX was inconsistent in the Package Manager window. (1272970)

  • Package Manager: Fixed an issue where the version numbers in Package Manager UI and Asset Store did not match for certain packages. (1267050)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Particles: Fixed s hang when viewing sub-emitters on a Particle System Preset. (1266963)
    This is a change to a 2020.2.0a20 change, not seen in any released version, and will not be mentioned in final notes.

  • Particles: Fixed the Stop Action setting to consider children and sub-emitters before triggering its event. (1261459)

  • Prefabs: Fixed a crash when loading a scene with a legacy disconnected prefab. (1270456)

  • Prefabs: Fixed a crash when using the logging functionality before instantiating prefabs in an enumerator. (1257683)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Prefabs: Fixed an issue where the "Removed Component" title bar in the Inspector was not removed when a prefab instance was unpacked. (1263892)
    This is a change to a 2020.2.0a4 change, not seen in any released version, and will not be mentioned in final notes.

  • Profiler: Fixed an issue where the Profiler chart counters were not preserved their enabled states when being reordered via the Module Editor. (1254867)
    This is a change to a 2020.2.0 change, not seen in any released version, and will not be mentioned in final notes.

  • Profiler: Fixed an issue where the profiler was not counting number of draw calls correctly when using CommandBuffer. (1115727)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Profiler: Fixed an issue with multi-dimensional arrays of reference types not having their metadata type being reported (1273416)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Profiler: Fixed an issue with player to editor serialization getting corrupted, due to the addition of missing root references to the memory profiler backend. (1271829)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Scripting: NativeArrayUnsafeUtility.ConvertExistingDataToNativeArray documentation now correctly states the its length parameter is in number of elements, not bytes.

  • Shaders: Fixed an issue where HLSLcc was doing bad precision downgrading in some cases. (1228687)

  • Terrain: Fixed a crash that occurs when modifying terrain data asset during terrain callbacks. Disables destruction of terrain data during callbacks. (1152858)

  • Terrain: Fixed a null exception thrown from the Paint Texture terrain tool. (1268578)

  • Terrain: Fixed an incorrect error message "A tree couldn't be loaded because the prefab is missing" that was printed during asset importing. (1191833)

  • Terrain: Fixed an issue where 'Control Texture Resolution' and 'Base Texture Resolution' were not saved. (1258969)

  • Terrain: Fixed an issue where tree colliders were not rotated according to their mesh when random rotation was applied. (1248407)

  • UI: Fixed an issue where AspectRatio was not able to be set when the mode was none in the editor. (1264569)

  • UI Toolkit: Fixed an issue where PropertyField's label width calculation did not match IMGUI. (1230326)

  • Universal Windows Platform: Fixed an incorrect error generated by Reference Rewriter tool for certain array types. (1254820)

  • Universal Windows Platform: Fixed an issue where Burst was not working in ExecutableOnly builds. (1271694)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Universal Windows Platform: Fixed an issue where bursted code was falling back to non-burst path. (1271195)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Universal Windows Platform: Fixed an issuey where plugin .pdb files were not getting packaged into .appxsym package when creating a build to be uploaded to the Windows Store. (1271695)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Windows: Fixed an issue where audio would not pause when the Editor was minimized by clicking the taskbar. (1208758)

  • XR: Fixed a stereo skybox rendering issue when a sphere was used instead of a cube. (1223567)

  • XR: Fixed an issue where GetStereoViewMatrix and GetStereoProjectionMatrix would not return the same value in both eyes in Multi Pass mode. (1262524)

API Changes

  • Build Pipeline: Added: Added public API to capture performance data from the ContentBuildInterface methods.

  • Graphics: Changed: Auto Graphics API for Mac is now Metal only, unless running the Editor on a VM without Metal support. OpenGL is being deprecated, but can still be enabled explicitly. Editor and native player running on Apple Silicon will require Metal.

  • Scripting: Added: Language version added to ScriptCompilerOptions

Changes

  • Android: Force MSAA support for R11G11B10 on Adreno drivers where we force R11G11B10-support. (1265267)

  • Audio: Audio with channel counts larger than 2 specified to be encoded as XMA are now automatically encoded as Vorbis due to limitations in the XMA decoder. (1251528)
    This is a change to a 2020.2.0a12 change, not seen in any released version, and will not be mentioned in final notes.

  • Editor: Updated com.unity.ide.rider package to version 2.0.7 as verified.

  • IL2CPP: Support IPv6 addresses in Dns.GetHostAddress on Windows (1258695)
    This has already been backported to older releases and will not be mentioned in final notes.

  • Player: Added ToString override to PlayerLoopSystem to show system type.

  • XR: Updated Oculus XR Plugin package to version 1.4.3.

Improvements

  • Android: Improved logging when trying to find a plugin that is missing. (1268172)

  • Asset Pipeline: Added documentation for: GetCacheServerEnableDownload GetCacheServerEnableUpload GetCacheServerNamespacePrefix RefreshSettings

  • Asset Pipeline: Added documentation to CanConnectToCacheServer GetCacheServerAddress GetCacheServerPort IsCacheServerEnabled IsConnectedToCacheServer

  • Asset Pipeline: Moved API documentation from Experimental and Added API examples for:
    GetAvailableImporterTypes
    GetImporterOverride
    SetImporterOverride
    ClearImporterOverride

  • Editor: Layers 3, 6 and 7 are no longer treated as reserved by Unity. (1264751)

  • IL2CPP: Enable Parallel IL2CPP Conversion as default to improve IL2CPP build performance.

  • Particles: Improved performance when using Rigidbody velocity mode. Previously a search for a valid Rigidbody was made every update, we now only perform the search once and cache the result. (1268442)

  • Particles: Removed unnecessary calls to ParticleSystemRenderer::UpdateCachedMesh, to improve performance, particularly when enabling/disabling ParticleSystemRenderers that use meshes consisting of Triangle Strip geometry. (1271169)

  • Profiler: Aligning Memory and Rendering module detailed panel test with runtime counter names.

  • Profiler: Burst Jobs now have a different color from normal jobs in Unity Profile Timeline view.

  • Profiler: Fixed profiler window not processing small frames immediately when they come to Profiler Window. (1260269)

  • Terrain: Improved error messages when parsing BaseMapGen shader passes. (1224162)

  • XR: Reduced unnecessary Vulkan backbuffer allocations.

Preview of Final 2020.2.0b2 Release Notes

System Requirements Changes

Fixes

  • 2D: Added Grid GameObject to Tilemap GameObject without a parented Grid when opened in Prefab Mode. (1268269)

  • 2D: Colliders should also respect Pivot property of Edge Sprites in Sprite Shape

  • 2D: Ensure SpriteShape are not generated when not in view on Runtime.

  • 2D: Fix Bounds/RectInt.allPositionsWithin returning positions with a size 0 for any axis (1227811)

  • 2D: Fix generation of collider shapes for TilemapCollider2D with AnimatedTiles while tile is animated

  • 2D: Fixed "Unapplied import settings" doesn't prompt when Apply button is clicked on the TextureImporter when changes are made both in Sprite Editor Window and TextureImporter (1244077)

  • 2D: Fixed an issue where an item was nog able to be added on Resetting the Preset of the SpriteShapeProfile. (1242910)

  • 2D: Fixed an issue where math expression evaluated prematurely in Sprite Frame module's integer fields. (1250883)

  • 2D: Fixed an issue where Shift-Erase was not returning to the Paint Tool when painting with the Tile Palette.

  • 2D: Fixed an issue where Sprite GetVertexAttribute (TexCoord0) did not return correct uv data if Sprite was not rendered yet. (1266065)

  • 2D: Fixed an issue where the preview of a deleted secondary texture entry was still visible in Sprite Editor. (1211176)

  • 2D: Fixed an issue where the Sprite Packed image was blank in loaded AssetBundle after Editor re-focus. (1243177)

  • 2D: Fixed an issue where the vertical scrollbar of the Secondary Textures panel in Sprite Editor did not react to the mouse wheel. (1204429)

  • 2D: Fixed an issue where there was a broken documentation URL of the Component for PixelPerfect components.

  • 2D: Fixed an issue where there was not a tooltip for Tile Palette Gizmos button. (1254646)

  • 2D: Fixed auto-sizing for the Tile Palette when the Tile Palette is set to YXZ swizzle.

  • 2D: Fixed broken documentation links in inspectors for com.unity.2d.animation package

  • 2D: Fixed exception after reverting from creating new vertices and edges in Skinning MOdule

  • 2D: Fixed OnDrawGizmos to Get/Release RenderTexture through CommandBuffer.

  • 2D: Fixed PSDImporter broken documentation links in inspectors

  • 2D: Fixed PSDImporter creates empty GameObject in certain cases

  • 2D: Fixed Sprite asset used by SpriteSkin in Scene is being deleted

  • 2D: Fixed Sprite deformation not updated when GameObject is being enabled with SpriteSkin component

  • 2D: Fixed Sprite Editor doesn't show the Sprite when the Inspector is locked and the Sprite is not selected in the Project window (1215581)

  • 2D: Fixed SpriteSkin always deform even when culled by adding alwaysUpdate option to SpriteSkin to determine if SpriteSkin execution should occur even when the associated SpriteRenderer is culled

  • 2D: Fixed visual defect after undoing changes to Bone Transform properties in SpriteSkin's Inspector

  • 2D: Make layout of Tiles in the Tile Palette to be equal in width and height where possible when dragging in Sprites and Tiles to Tile Palette.

  • 2D: Retain cells set in the GridBrush when doing a Move (1244347)

  • 2D: Set active editor tool to Paint tool when Shift Key is released before Mouse Button is released when painting or erasing from a Tile Palette (1231123)

  • 2D: SpriteShapeController leaks memory when zero control points are used

  • 2D: [SpriteAtlas V2] Fixed an editor crashes when packing Sprites. (1259149)

  • 2D: _NormalMap Secondary Texture is streched to AtlasSize when Atlas Texture size is larger than Normal Map texture size (1167829)

  • AI: Added OffMeshLink component Reset functionality (1155287)

  • AI: Baking ignores FBX files with Mesh Compression set to Low or Medium when baking NavMesh (1152594)

  • AI: Fixed a crash when specified node pool size for a new NavMeshQuery is too small. (1104755)

  • AI: Fixed an editor crash when retrieving the names of NavMesh agent configurations from a corrupt NavMeshAreas.asset file. (1257220)

  • Android: Avoid using depthClamp on GPUs that don't support it when using Vulkan

  • Android: Fix depth when rendering to backbuffer with BlitType Auto/Never

  • Android: Fix RenderPass API implementation when using OpenGL ES (1219327)

  • Android: Fixed a regression with playing back uncompressed, on-disk asset bundles on Android versions before Pie.

  • Android: Fixed a Vulkan validation error when using Optimized Frame Pacing with Vulkan. (1255060)

  • Android: Fixed an error when exporting a gradle project that contained .aar files in the same location. (1246663)

  • Android: Fixed an issue that caused wrong colors for particles when using instancing on Android. (1256567)

  • Android: Fixed an issue where Android cutout's y coordinate in windowed mode. (1248638)

  • Android: Fixed an issue where Multithreaded Rendering setting would use the incorrect platform settings.

  • Android: Fixed an issue with android's window pixel format when rendering over native UI. (1244553)

  • Android: Fixed artifacts on older Adreno devices when using compute skinning with blend shaped with OpenGL ES. (1260887)

  • Android: Fixed Autoconnect Profiler option when device is connected with USB only (1244618)

  • Android: Fixed BuildOptions.ConnectToHost option, when Android is only connected to PC via USB and Wifi is disabled. Previously BuildOptions.ConnectToHost would only work through Wifi connection, now the app should automatically connect to Editor. (1233567)

  • Android: Fixed performance regression on Mali GPUs when using CBUFFERs. (1157313)

  • Android: With sporadic freeze when using Vulkan on Mali devices

  • Animation: Added documentation for AnimatorControllerPlayable methods. (1195131)

  • Animation: Animation count in Scene from the Stats window does not drop down when all of the Animation are finished in the Scene (1201251)

  • Animation: BlendTree node with any number of empty Motion fields now trigger an update of neighbouring node positions. (1193229)

  • Animation: Crash in AnimationCurveTpl<Vector3f>::EvaluateClamp when animation.Play(AnimationPlayMode.Queue) is called in Update() (1218218)

  • Animation: Fixed a crash that happened when destroying AnimationPlayables (1231355)

  • Animation: Fixed a crash that would happen when calling the GetBoneTransform on a humanoid with no left finger (1228811)

  • Animation: Fixed a crash where the animation clip custom target was null as it was still in a transform binding mode (1228823)

  • Animation: Fixed a flicking issue where the whole animator transition inspector window was resizing. (1233111)

  • Animation: Fixed a memory leak when clearing a playable output notification queue while iterating over this queue. (1266586)

  • Animation: Fixed an issue where a rename would be accepted in the Animation Window even if the ESC key is pressed (1157048)

  • Animation: Fixed an issue where blending playables that animated different set of properties would not correctly blend with the scene values. (1252312)

  • Animation: Fixed an issue where OnStateEnter was not being called when StateMachineBehaviour stop Timelines. (1257833)

  • Animation: Fixed an issue where the additive scaling would have unexpected behavior if the referenced clip did not contain that scaling property. (1267981)

  • Animation: Fixed an issue where the editor crashes when opening Animator transition settings with specific hierarchy. (1242608)

  • Animation: Fixed an issue where the layout of the Animator Window would not persist properly. (1197028)

  • Animation: Fixed an issue where threshold values with commas would not save in blend tress (817322)

  • Animation: FIxed playable graph with animations breaking when 'Disable Unity Audio' is enabled. (1187693)

  • Animation: Fixed root transform offsets introduced on nested humanoid characters running Animation C# Jobs. (1259490)

  • Animation: Hidden Animator Layers/Parameter view opens back again after entering Play Mode (1219412)

  • Animation: Memory leak occurs due to TransformStreamHandle memory not being deallocated when deactivating GameObjects (1167280)

  • Animation: OnStateUpdate will not be called when a new AnimatorControllerPlayable is attached by the first time (1168332)

  • Asset Import: AssetDatabaseExperimental.GetAvailableImporterTypes returns all expected registered importers for a given asset path. (1218830)

  • Asset Import: Fixed a memory leak and console errors when using ClearImporterOverride on Model assets (fbx files and other formats using the ModelImporter). (1218841)

  • Asset Import: Fixed an issue in ModelImporter when the Preserve Hierarchy was ignored in some cases after applying a Preset to it. (1243047)

  • Asset Import: Fixed an issue that was throwing errors in the console when Rig settings of multiple models were all changed at once. (1264463)

  • Asset Import: Fixed an issue where RE2 generated warnings on old versions of macOS. (1259551)

  • Asset Import: Fixed AssetImportWorker taking autoconnect player connections.

  • Asset Import: Importers does not lose selection anymore when the imported asset changes its type. (1182598)

  • Asset Import: LoadImage now returns PNGs in the authored colorspace when gAMA block is authored, instead of gamma 2.0. A new static flag has been added to the ImageConversion class to disable this behavior. See Texture2D.LoadImage for additional details. (1199896)

  • Asset Import: Removed blend shape delta normals on non-deformed vertices when importing legacy FBX in FBXImporter/Mesh.cpp. (1203080)

  • Asset Pipeline: A imported asset dependency on a source asset could lead to a wrong import.

  • Asset Pipeline: ArtifactID is now unique for an import result (1193231)

  • Asset Pipeline: Changed behavior in Refresh

    • Empty folders that don't have .meta files get deleted if the folders were known before.

    • If an orphaned .meta file is marked as folderAsset the folder is recreated.
      These changes address issues related to creating/deleting folders in certain (p4, git) version controlled projects where empty folders don't get created/deleted when the user gets latest version on the client.

  • Asset Pipeline: Changing the platform is not propagated to the asset import worker process

  • Asset Pipeline: Fix for instability where .meta files are not parsed right. (1214122)

  • Asset Pipeline: Fixed a crash in GetHashOfImportedAssetDependencyHints when scripted importer returns null inside GatherDependenciesFromSourceFile during unity startup (1234968)

  • Asset Pipeline: Fixed a scalability issue of increasing number of revisions of long dependency chains (e.g. iterating on nested prefabs). (1250294)

  • Asset Pipeline: Fixed a small performance regression when batch copying assets via scripts (1238732)

  • Asset Pipeline: Fixed an issue where an unused artifact dependency would lead to infinite import.

  • Asset Pipeline: Fixed an issue where Artifacts for deleted asset didn't get deleted in artifact garbage collection.

  • Asset Pipeline: Fixed an issue where custom dependencies changes are rejected in initial domain load.

  • Asset Pipeline: Fixed an issue where Forced import of an new asset which already have a meta file (and thereby a GUID) don't get force reimported.

  • Asset Pipeline: Fixed Binary to YAML UInt16 conversion error when importing a specific binary serialized package into a project with Force Text serialization enabled (1225913)

  • Asset Pipeline: Fixed issue where postprocessors with version 0 wouldn't be used

  • Asset Pipeline: Having information that says "version 2" is selected, can be confusing, since users could assume that the "version 1" of the asset import pipeline could be selected. This has been removed completely as 2020.1 can on the Asset Import Pipeline that was re-written for 2019.3

  • Asset Pipeline: If the license is not valid asset import worker processes will fail and block the main editor (1224855)

  • Audio: Changing audio mixer attenuation to or from 0 dB resulted in popping / spiking sounds (1101442)

  • Audio: Chorus and Flange filters didn't apply initial parameters correctly under certain situations when used in the audio mixer or as audio filter components. (579690)

  • Audio: Fixed an issue where an audio clip played on the Timeline and routed out via an Audio Component was not correctly using a Mixer asset when the output Audio Component's state was toggled. (1213824)

  • Bug Reporter: Added a name of the file causing the error to the project packer error message (1223660)

  • Bug Reporter: Fixed an issue that allowed temporary files to be uploaded. (1220950)

  • Build Pipeline: Added scroll viewer to build settings. (1211918)

  • Build Pipeline: Added support for baked collision mesh writing in the Scriptable Build Pipeline.

  • Build Pipeline: Fixed a build corrupted issue when a field coming from an assembly override was serialized in assets/scenes. (1265330)

  • Build Pipeline: Fixed a build error issue when many assemblies are passed to UnityLinker or BuildPlayerDataGenerator. (1267783)

  • Build Pipeline: Fixed an edge case issue where generated sprite texture case were being mangled and caused build errors on case sensitive file systems.

  • Build Pipeline: Fixed bug in the Managed SpookyHash algorithm that was causing some bytes at the end of the buffer to not be incorporated into the hash for specific buffer sizes.

  • Build Pipeline: Reduced amount of garbage collection performed inside the ContentBuildInterface.

  • Burst: Fix a regression that could break usage of native plugins.

  • Burst: Fixed a compatibility issues between burst and older linux distros.

  • Burst: Fixed a potential error when running the linker with a failure on lld command.

  • Burst: Fixed an issue preventing player builds to succeed when burst compilation is disabled.

  • Burst: Fixed an issue that prevented burst from resolving functions on platforms when it's statically linked such as iOS.

  • Burst: Fixed an issue where if a path to the package contained spaces, then native command execution would fail. This manifiested as weird errors with 'lld' or 'vswhere' or other native tools.

  • Burst: Fixed Debug.Log by re-enabling it when used in function pointers or jobs.

  • Burst: Fixed errors when opening Inspector with a non-public Execute method on a job producer type

  • CodeEditor: Add project generation for Xbox One build target (1156114)

  • CodeEditor: Added support for solution folders.
    Only bind the messenger when the VS editor is selected.
    Warn when unable to create the messenger.
    Fixed an initialization issue triggering legacy code generation.
    Allow package source in assembly to be generated when referenced from asmref.

  • CodeEditor: Fixed and issue where teh assembly references to package assemblies break IDE projects.

  • CodeEditor: RIDER - "The specified path is not of a legal form (empty)"

  • CodeEditor: RIDER - Guarantee that sln and csproj files are present, when OpenProject is called

  • CodeEditor: Xbox One platform generates broken .Player.csproj files (1139068)

  • Core: Fixed an issue where handle recursive exceptions were being raised whilst running burst compiled code. (1263781)

  • Core: Fixes crash when IME Strings got too long. (1226610)

  • DX12: Fixed a performance issue when invoking dynamic vertex buffer updates. (1204804)

  • DX12: Fixed an issue with MSAA which resolved on 2D texture arrays.

  • DX12: FrameTimingManager now works on DX12 Windows Standalone and UWP. (1212335)

  • Editor: "Generate all .csproj files" setting needs to be toggled on every startup for all the csproj files to actually be generated

  • Editor: 'Create Empty Parent' added to the hierarchy window context menu

  • Editor: 'Cut' and 'Paste As a Child' functionality added to Scene View (1215583)

  • Editor: (case 1215825) UnityEngine.Diagnostics.ForceCrash does not produce crash dump when editor exits due to fatal error log message (1215825)

  • Editor: Active Tool window now saves properly in the layout (1224432)

  • Editor: Allow pasting float numbers with a trailing f into number fields.

  • Editor: Automatic "unity is busy" progress dialogs on Windows no longer steal focus or pop up while the editor is not the active application.

  • Editor: Changed CTRL click in Hierarchy so it's changes the active object to reflect the scene view behavior (1154444)

  • Editor: Changed the title of the splash screen window to clarify activity name on CentOS. (1232562)

  • Editor: com.unity.test-framework does not print any messages when loaded into a project. (1214217)

  • Editor: Do not generate invalid project files when 'Open by file extension' is chosen. (1246567)

  • Editor: Don't display blank GameObject preview for Camera Prefab Assets. Instead, treat it the same as other Prefabs that don't have renderer components. (1182438)

  • Editor: Ensur EditorSettings works as preset (1223623)

  • Editor: Fix assembly hot reload inside the editor. (1251134)

  • Editor: Fix camera speed slider not getting to min-max when setting min/max values with more than 2 decimals (1190430)

  • Editor: Fix disappearing "Edit..." button next to Shader dropdown list on Material UI.

  • Editor: Fix dragging on Empty Favorites (1224386)

  • Editor: Fix error in import by adding support for the conversion of SkinWeights using UNorm16 and SNorm16 format. (1218889)

  • Editor: Fix foldout alignment in Physics2D Settings window (1228331)

  • Editor: Fix Transform manipulator to use Undo.RecordObject so it works with livelink.

  • Editor: Fixed "Handles.Repaint called outside an editor OnGUI" error when folding out an Avatar Mask's Node Name property. (1244003)

  • Editor: Fixed 3D texture preview drag rotation

  • Editor: Fixed a border for no eye dropper ColorField issue. (1244882)

  • Editor: fixed a bug where UTR fails with "No tests have been selected to run message" when in fact we attempt to run playmode tests in standalone player and connection times out.

  • Editor: Fixed a canceling rect selection that was breaking the inspector. (1253694)

  • Editor: Fixed a class of GTK warnings showing up in the editor log when running the Linux editor. (1268468)

  • Editor: Fixed a crash if importing an additional SceneVisibilityState.asset into the project. (1238870)

  • Editor: Fixed a crashed when a Transform was accessed during OnValidate. (1114911)

  • Editor: Fixed a performance regression caused by Preferences 'Developer Mode' writing and reading preferences each frame. (1261270)

  • Editor: Fixed a race condition during input shutdown when unloading an input library on Windows. (1250096)

  • Editor: Fixed a ShortcutWindow profile dropdown that was missing the dropdown arrow. (1232757)

  • Editor: Fixed a Unity crash in BroadcastMessageAny when parenting RectTransform in OnCanvasHierarchyChanged. (1255755)

  • Editor: Fixed an alignment issue with the sorting group component in the inspector. (1264073)

  • Editor: Fixed an issue by adding null check. (1211302)

  • Editor: Fixed an issue by Calling UpdateCachedData to get updated info before updating the m_traker. (1202591)

  • Editor: Fixed an Issue by displaying proper error message, if user enter library name with colon. (1254007)

  • Editor: Fixed an issue by setting the font size property value to zero in reset function. (1239786)

  • Editor: Fixed an issue in the Linux editor where mouse input in one window could create undesired visual changes in other windows upon repaint. (1131492)

  • Editor: Fixed an issue on Linux where the prefab overrides popup could overflow the available vertical screen space. (1119679)

  • Editor: Fixed an issue to enable scroll down automatically when first frame of logs does not fit in console window. (1241533)

  • Editor: Fixed an issue wehre tvOS player settings would not work with presets. (1254898)

  • Editor: Fixed an issue when importing an Asset from a .unitypackage that has the same GUID as an existing Asset in the project wasn't displaying a warning. (1250673)

  • Editor: Fixed an issue when Right-clicking assets in the Hierarchy and Project window would not correctly highlight and select before displayed the context menu. (1222945)

  • Editor: Fixed an issue where a GameObject that was copy pasted to a different parent did not have the same world position as the original GameObject. (1268152)

  • Editor: Fixed an issue where a prefab selection in the Scene View was not respecting user set picking flags. (1234665)

  • Editor: Fixed an issue where AllowSceneActivation was not respected during enter playmode. (1153187)

  • Editor: Fixed an issue where Alt+numpad Unicode character input would not works in the Windows editor. (1174605)

  • Editor: Fixed an issue where certain dropdowns are misaligned in the player settings preset editor (1218668)

  • Editor: Fixed an issue where clicking the right edge of textures icon in material inspector would open a asset selection window. (1248553)

  • Editor: Fixed an issue where dragging from a closed window in the mac Editor would crash. (1257002)

  • Editor: Fixed an issue where error is thrown when a new swatch preset library is created with name containing "/" (1254004)

  • Editor: Fixed an issue where extra symbols were added to the field, when double clicking on non-equal values and trying to type over them. (1256909)

  • Editor: Fixed an issue where iOS player settings were not working with presets. (1232103)

  • Editor: Fixed an issue where meta file info was not preserved when drag-copying assets in the Project Window. (1220825)

  • Editor: Fixed an issue where multiple EventSystem instances could be created from a prefab in one scene (1210254)

  • Editor: Fixed an issue where no warning was occurring when duplicating an Asset from the Packages folder. (1265856)

  • Editor: Fixed an issue where plugin resolution would fail if a plugin had two chained library extensions (1217894)

  • Editor: Fixed an issue where ProBuilder window stole focus on MacOS. Also ensures Application.isFocused only returns true in the Editor when GameView is focused (as is the documented behavior). (1254752)

  • Editor: Fixed an issue where SearchField style of custom editors does not match with other Search Fields in the editor. (1243420)

  • Editor: Fixed an issue where selected text is not replaced in Input Field. (1253193)

  • Editor: Fixed an issue where snapping didn't work only lines were showing.

  • Editor: Fixed an issue where switching between different Tabs in Preferences Window resizes Cinemachine Tab's UI (1258316)

  • Editor: Fixed an issue where the Build Settings window was not dockable. (1259782)

  • Editor: Fixed an issue where the context menu Reset was not functioning as intended with Assembly Definition and Reference files. (1217217)

  • Editor: Fixed an issue where the Editor crashed when maximizing and minimizing the docked IMGUI debugger window. (1257185)

  • Editor: Fixed an issue where the Gizmos FoldOut does not expand until the mouse cursor is moved. (1228330)

  • Editor: Fixed an issue where the Handles.Button prevented Scene View navigation. (1250996)

  • Editor: Fixed an issue where the keyboardLayout was not returning correct value on linux. (1167021)

  • Editor: Fixed an issue where the Line Renderer Simplify toggle would not refresh the scene view. (1258815)

  • Editor: Fixed an issue where the Linux editor main window would not correctly remember saved window layout. (1258663)

  • Editor: Fixed an issue where the Save Asset window does not close automatically after saving all assets. (1222647)

  • Editor: Fixed an issue where the Scene View's Select All would not taking into account scene picking/visibility state. (1250345)

  • Editor: Fixed an issue where the toolbarsearchfield width was not fixed in SettingsWindow. (1257235)

  • Editor: Fixed an issue where the Windows menu item was not always second from the last. (775676)

  • Editor: Fixed an issue where there were duplicate results from AssetDatabase.FindAssets. (1242371)

  • Editor: Fixed an issue where when "Add Component" button jumps in the inspector when resizing if has custom expandable UI Group elements. (1230277)

  • Editor: Fixed an issue where width of the border of the Alpha Value is not enclosed within boundary in the color picker (1237286)

  • Editor: Fixed an issue where windows overlap over other windows on resizing. (1255867)

  • Editor: Fixed an issue with "Select Shader" option in inspector shader context menu. (1231531)

  • Editor: Fixed an issue with Component being hidden in Inspector even when the attached script is deleted (1250355)

  • Editor: Fixed an issue with execution of first item when pressing enter even if nothing selected. (1258382)

  • Editor: Fixed an issue with Linux using FitRectToScreen instead of FitWindowRectToScreen (1263999)

  • Editor: Fixed an issue with Material Validation color swatches were not rendering after domain reload. (1250913)

  • Editor: Fixed an issue with object sorting in Profiler Window. (1240861)

  • Editor: Fixed an issue with Properties in the Canvas Scaler component not matching with the properties in its Preset. (1252603)

  • Editor: Fixed an issue with restoring of Rect Transform on UNDO after a render mode change. (1246899)

  • Editor: Fixed an issues related to labels that disappeared and Overlaping of labels in Layer Collision Matrix. (1259361)

  • Editor: Fixed an issuey where the Editor toggle boxes' height did not adjusted to align with their label. (1260494, 1267326)

  • Editor: Fixed an object sixing issue when the Center scale handle was not given an initial scale that was [1,1,1]. (1264038)

  • Editor: Fixed an overflow issue where keycode mappings were not using the std maps. (1270330)

  • Editor: Fixed Android Icons PlayerSettings to work with presets (1232114)

  • Editor: Fixed Android Target DPI player setting to work with presets (1254906)

  • Editor: Fixed cancel of multiple objects rename that would set their names to "<multi>" instead of keeping their original names. (1218183)

  • Editor: Fixed flickering when multiple windows were shown on macOS Editor (1221722)

  • Editor: Fixed float point imprecision with rect tool (1246267)

  • Editor: Fixed Frame Debugger to show Compute Shader dispatch information properly.

  • Editor: Fixed Highlighter APIs. (1223530)

  • Editor: Fixed incorrect GUI style for Influence Mask field in the ParticleSystem External Forces Module

  • Editor: Fixed iOS Icons PlayerSettings to work with presets (1232101)

  • Editor: Fixed issue where an incorrect mesh index count was being displayed in the Mesh Inspector. (1268635)

  • Editor: Fixed issue where the free move's surface snap (shift+control) didn't use the new HandleUtility.PlaceObject extendable API.

  • Editor: Fixed issue with event data not being reset on subsequent clicks after the first one (1219722)

  • Editor: Fixed issues with AspectRatioFitter component (1199877)

  • Editor: Fixed main editor window is no longer maximized when resetting the layout. (1179646)

  • Editor: Fixed New InputSystem not handling absolute mouse positions including those sent over RDP.

  • Editor: Fixed Preset incompatibilities in Player Settings (Default/Standalone) (1232067)

  • Editor: Fixed property dropdown of "Surface Effector 2D" doesn't expand until the mouse cursor is moved in Properties Window. (1243958)

  • Editor: Fixed property window cascading even though no property windows are opened. (1251625)

  • Editor: Fixed rare unstable asset hash

  • Editor: Fixed rebuilding gizmo renderers caused an performance regressions. (1238713)

  • Editor: Fixed Scene View not accepting input after Maximizing and Un-maximizing while holding the right mouse button. (1186624)

  • Editor: Fixed script execution order values being cropped when using certain UI scaling values (mostly 125%). (1182109)

  • Editor: Fixed skybox persisting in scene after drag cancellation

  • Editor: Fixed test ShortcutEntryConstructor_MethodWithShortcutArgs_FromAttribute in debug mode. (1233242)

  • Editor: Fixed Texture 2D Array support to the Render Texture Editor. (1238898)

  • Editor: Fixed the Click Offset area for a GUI Button. (1240174)

  • Editor: Fixed the coverage issue in enum data utility (1215827)

  • Editor: Fixed the FillOrigin Enumpopup issue. (1254876)

  • Editor: Fixed the issue where the Grid opacity Input field is highlighted on changing the Grid Axis from the scene view grid settings window (1221530)

  • Editor: Fixed the Object Selector window preventing object selection in the Scene View when searching for certain types. (1241020)

  • Editor: Fixed the warning thrown by the Clang compiler at Line 134 of "RuleSetFiles.cpp" "warning- returning reference to local temporary object
    [-Wreturn-stack-address]
    return core::string("");"

  • Editor: Fixed toggling Scene View from 2D to 3D locking the camera motion to the last direction of movement. (1232270)

  • Editor: Fixed tvOS Icons PlayerSettings to work with presets (1232093)

  • Editor: Fixed Unity Editor existing fullscreen mode when layout is changed. (1232706)

  • Editor: Fixed unselected Scene Views not respecting the mouse scroll wheel zoom shortcut. (1216819)

  • Editor: Fixed usage of restore_saved_layout when bottom_view and top_view are null for an editor mode dynamic layout. (1244524)

  • Editor: Fixed vertex snapping incorrectly snapping to objects hidden by Scene Visibility flags. (1222442)

  • Editor: Fixed EndLayoutGroup errors when GUI items are highlighted by PrefixLabel. (1238526)

  • Editor: Fixes an issue where an exception was thrown when trying to show the contextual menu for an unloaded scene in the hierarchy window (1233432)

  • Editor: Fixes issues caused when components required by other components do not exist. (876288, 887641, 888143, 1086961)

  • Editor: Fixes the crash when "Right click" is used to close an undocked preview window on Windows. (1231889)

  • Editor: Forces normal windows to open in the active space (on top of the editor) when editor is full screened on mac. This prevents a 'hidden' window. (1218891)

  • Editor: Game tab no longer undocks when switching between tabs while cursor is locked. Cursor no longer locks on focus, only on a click in the Game tab. Also fixes an issue where cursor lock would not function properly (e.g. lock without hiding) when moving docked window to a new location in the editor. All fixes are specific to the editor on Windows. (1246445)

  • Editor: GameObjects are not draggable when using the scroll wheel in macOS (1175328)

  • Editor: Gizmo icons are now displayed on all objects all the time unless object is selected (1223375)

  • Editor: Hierarchy items are not considered hovered when scrolling the vertical scrollbar. (1229149)

  • Editor: Implemented Getter and Setter for Blocking Mask property, so that it can be accessed through script. (1210118)

  • Editor: In the linux editor, guiviews no longer gain focus on scroll events (scroll still occurs), which has the effect of preventing the editor from stealing focus on scrolls over guiviews that were previously unfocused. (1270605)

  • Editor: Including a trailing semi-colon in a testName filter no longer results in all tests being run (1171200)

  • Editor: Inspector property copy/paste no longer allows pasting unrelated enum values. (1222717)

  • Editor: Internal

  • Editor: Light icons in scene view now update immediately after light type is changed in inspector (1229003)

  • Editor: Made arrays reorderable by default and non-reorderable arrays are presented using legacy control.

  • Editor: makes sure proper selected items are within hierarchy view after "selecte prefab root" and "invert selection", previously items would be properly selected but not in view of the hierarchy. (1228117)

  • Editor: Mouse hover event is fixed in situations when windows are overlapping on macOS (1222681)

  • Editor: Presets modifications array inconsistent size when excluding some properties. (1229273)

  • Editor: Profile Analyzer (com.unity.performance.profile-analyzer) Updated to version 1.0.1 with many issues fixed and updated documentation. (1253426, 1254017, 1254572, 1254868, 1254869, 1254870, 1256243)

  • Editor: Project does not contain all .csproj files when "Generate All .csproj files" option is selected in preferences

  • Editor: Re-add Mesh info to the Mesh Inspector Preview

  • Editor: Removed extra spacing added to some fields in the inspector (1235884)

  • Editor: Static Analysis found I missed a spot to check if a pointer was NULL (1229276)

  • Editor: The projection property in the Camera inspector is now properly getting the blue indicator, if changed in a prefab. (1197771)

  • Editor: The tool-tip for the Disable button now shows the correct text. (1240815)

  • Editor: Transform shift rotate always reset the rotation value when used (1221620)

  • Editor: Unity remote is no longer deprecated in the editor

  • Editor: Update cancel button when using SetValueWithoutNotify (1246292)

  • Editor: Update settings provider example and doc so the example showing how to write UI for a SettingsPRovider would actually save the property editing. (1263452)

  • Editor: Updated the Doc URL server with the official public server. (1255912)

  • Editor: Updates Collab package to 1.3.9. See the package changelog for full details.

  • Editor: We now always show the index column in the LineRenderer editor positions view. (1260526)

  • Editor: When attempting to create a new file beginning with a dot, auto-convert the character to an underscore, similar to what we do for other invalid characters, instead of displaying an error. (1117029)

  • Editor: When creating a new asset in the project window of the Editor Unity will now no longer add the required file extension if the entered name already ends with it. So for example creating a script called "Foo.cs" in the project will now create the file "Foo.cs" rather than "Foo.cs.cs". The behaviour when the file extension is omitted is unchanged - creating the script "Foo" will create the file "Foo.cs" as normal. (1251423)

  • Editor: When deleting the last subfolder of an expanded folder, the icon stays the expanded folder one.
    In fact the expanded status of the folder is not updated.
    This updates the status correctly. (1233024)

  • Editor: [GameView] VSync gets disabled after Maximize on Play is disabled and Play Mode is unpaused after pausing (1230428)

  • GI: Added convergence stats for additional probes in the Lighting window.

  • GI: Faster light probe and additional probes baking.

  • GI: Fix case where Editor hangs on close and when baking is canceled. (1235769)

  • GI: Fix for case when TempBuffer<RenderTexture> is not released in memory when using deprecated Realtime Global Illumination

  • GI: Fixed a broken shadow angles issue for GPU lightmapper. (1240991)

  • GI: Fixed a crash in the lightmapper when using a rendertarget as a cookie texture. (1261117)

  • GI: Fixed an issue where moving an Object while baking would break directionality while using GPU progressive lightmapper. (1238156)

  • GI: Fixed an issue where the Force Stop button to was not stopping when baking with the progressive lightmappers and composite lightmaps were in their current state. (1069481)

  • GI: Fixed an issue with an overlapped title in Lightmap thumbnail preview. (1113043)

  • GI: Fixed and issue where users were not allowed to select UV colors for the Lightmap Preview. (1252445)

  • GI: Fixed crashes occurring when inspecting a mesh renderer with no vertex buffer or no index buffer. (1197692)

  • GI: Fixed debug Editor failing in CheckAutoLDA.AssertLightprobesInAutoLDA. (1216793)

  • GI: Fixed Editor crash in RadeonRays::PlainBvhTranslator::Process when using GPU Lightmapper for neighboring Terrains (1198965)

  • GI: Fixed invalid miss marker for the first ray when doing bounces.

  • GI: Fixed issue where a NullReferenceException is thrown after creating the new scene when the Light Explorer window is opened. (1244688)

  • GI: Fixed issue where a rounding issue break the Inspectors Float Range slider in linear colour space on gamma properties. (1245429)

  • GI: Fixed issue where RGB, R, G and B button does nothing in Lightmap thumbnail preview. (1199790)

  • GI: Fixed issue where the ContributeGI flag acts faulty in a Preset inspector. (1223708)

  • GI: Fixed issues where Custom Cache Folder Location didn't update correctly. (1228137)

  • GI: Fixed issues where LightmapParameters was null on a new scene, and how it was not accessible for the API. Added "pushOff" to the API as well, and corrected the docs. (1215629)

  • GI: Fixed missing tooltips for Light Probe Proxy Volume. (1245432)

  • GI: Fixed prefab issues with Mesh Renderer (1179530)

  • GI: Fixed SceneLights memory leak on shutdown in EnlightenBakeManager and ProgressiveRuntimeManager.

  • GI: Fixed Static Analysis Defect: missing CL_CHECK's for EnqueueClearBuffer calls. (1245120)

  • GI: Fixes an issue in the GPU->CPU fallback logic when no valid OpenCL context could be created. (1208704)

  • GI: Fixes incorrectly set distance on lodded objects.

  • GI: GPU Lightmapper produces invalid texels in a certain scene (1217996)

  • GI: GPU lightmapper wrong OpenCL kernel argument in prepareLightRays.cl

  • GI: GPU memory not released following a GPU progressive light bake. (1204993)

  • GI: Info message is added when an unavailable denoiser is selected. (1254973)

  • GI: Made sure that the Sun fields enum is the correct width. (1244279)

  • GI: Make Experimental.Lightmapping.Bake and BakeAsync docs less confusing. (1246519)

  • GI: Static Batching Corrupts Baked Lightmap scene visualization on Play. (1059722)

  • GI: Updated labels for Contribute/Receive GI mode labels in the scene view. (1261852)

  • Graphics: - Fixed performance slowdown when releasing large amounts of buffers at once in Vulkan. Affects SRP batcher the most. (1102159)

  • Graphics: Add parameter to SkinnedMeshRenderer.BakeMesh(Mesh mesh, bool useScale) to take scaling into account when baking a mesh. By default this value is set to false to keep backwards compatibility. (1013310)

  • Graphics: Add ScriptableCamera that allow to extend a Camera by inheritence.

  • Graphics: Added a warning message when intermediate renderers reset non-finite bounds to zero. (1225021)

  • Graphics: Added additional return code validation to various QueryInterface calls (1229903)

  • Graphics: API to modify Virtual Texturing settings was changed to be more user friendly and finer grained.
    Changing settings will now cause existing caches to be recreated instead of only affecting the sizes of new caches.

  • Graphics: CopyTexture with explicit mips and regions now copies the full texture when both textures have no mips specified and Texture Quality is not FullRes. This also adds a warning when Texture Quality is set and CopyTexture is used to copy textures with mismatched mips. (1215135)

  • Graphics: Correct the condition that is used to display the copy texture warning about mip inconsistency (1254356)

  • Graphics: Enable valid tessellation behavior for HDRP on Metal API platforms

  • Graphics: Ensure that when you have > 63 material inspectors displayed that they will render and not throw an exception. (1156199)

  • Graphics: Expose EmitGeometryForCamera to C# for SRP UI rendering. (1155022)

  • Graphics: Fix a crash in the Editor when switching from HDRP to builtin pipeline in Graphics Settings. (1246590)

  • Graphics: Fix a crash when calling Graphics.DrawMeshNow without first having called material.SetPass successfully. (1236602)

  • Graphics: Fix an issue where in some cases, Custom Render Textures would not be rendered (generally with asset bundles or in a standalone build)

  • Graphics: Fix crash when null is passed in to Material.GetTexturePropertyName().

  • Graphics: Fix crash when null is passed in to Material.GetTexturePropertyNameIDs(). (1238775)

  • Graphics: Fix DXGI swapchain update regression from 2020.1.0a21, changed texture format could cause a crash

  • Graphics: Fix Editor crash when using 2bpp PVRTC for 3D textures

  • Graphics: Fix Frame Debugger when using RenderPass API

  • Graphics: Fix half precision support in compute shaders (1227467)

  • Graphics: Fix issue where one object in the scene would need ReceiveShadows set to true for Screen Space Shadows to be enabled when using deferred path. (1218683)

  • Graphics: Fix Metal RenderPass crash when there is no depth

  • Graphics: Fix potential rendering issue with SRP Batcher + PolyBrush meshes (1220956)

  • Graphics: Fix RenderBufferLoadAction.Clear when using SRP RenderPass API (1225431)

  • Graphics: Fix RenderPass API Validation, SystemInfo.supportedRenderTargetCount is per subpass

  • Graphics: Fix the ObjectToWorld matrix used by the BatchRendererGroup when the shader opts for nomatrices instancing.

  • Graphics: Fix unintentional built-in shader build time regression

  • Graphics: Fix validating textures without mips (1232782)

  • Graphics: Fixed a crash on DirectX11 when creating a texture with a partial mip chain. (1213005)

  • Graphics: Fixed a crash when running Virtual Texturing with NativeGfxJobs enabled. (1254545)

  • Graphics: Fixed a crash when using invalid ScriptableCullingParameters inside a custom SRP. (1218248)

  • Graphics: Fixed a memory corruption issue when calling GetPixels on a compressed texture trying to get a top mipmap (1x1,2x2,..) where the dimension that was lower than the used texture compression block size (typically 4x4). (1266511)

  • Graphics: Fixed a missing memory barrier issue when abimage was repeatedly bound for writing between dispatch calls.

  • Graphics: Fixed a potential crash in VFX when effect was updated out of frustum in indirect mode (1256791)

  • Graphics: Fixed a potential crash when enabling hardware dynamic resolution using DX12 renderer. (1158661)

  • Graphics: Fixed a prefab creation issue of non-MonoBehaviour ManagedObject component.

  • Graphics: Fixed a slow destruction of RenderTexture's internal resources when using Vulkan.

  • Graphics: Fixed a SystemInfo.minConstantBufferOffsetAlignment return type issue. (1191780)

  • Graphics: Fixed a TextureID leak when async loaded to a texture that was already loaded. (1266477)

  • Graphics: Fixed an int32 overflow issue that occured during RenderTexture runtime memory calculations (1263913)

  • Graphics: Fixed an issue in RenderTargetIdentifier when comparing instances with different default values for m_DepthSlice. The default value is now -1, which is required by XR code.

  • Graphics: Fixed an issue where color writes would not work during a shadow pass when a color attachment was present. (1259973)

  • Graphics: Fixed an issue where copying compressed volume textures did not uses correct volume slice sizes. (1266585)

  • Graphics: Fixed an issue where CopyTexture might not respect the ignore texture limit flag resulting in wrong copies.

  • Graphics: Fixed an issue where Cubemap.CreateExternalTexture was not correctly marking the native texture as cubemap during SRV creation. (1215635)

  • Graphics: Fixed an issue where GetPixels on Texture2D was compressed with Crunch would throw an exception and crash. (1257655)

  • Graphics: Fixed an issue where rendertarget readback was not respecting channel layout. (1256612)

  • Graphics: Fixed an issue where RenderTexture.Create with bindTextureMS option would fail silently if the used MSAA antiAliasing value was unsupported with the active graphics device.

  • Graphics: Fixed an issue where scene view wireframe mode did not works correctly in editor when using Vulkan with a terrain. (1205332)

  • Graphics: Fixed an issue where skinning on feature level D3D10.x would not fallback to CPU. (1269149)

  • Graphics: Fixed an issue where some of the fields on the SkinnedMeshRenderer were missing tooltips. (1263903)

  • Graphics: Fixed an issue where tree billboards were not rotated correctly when the camera was moving on mobile platforms. (1242389)

  • Graphics: Fixed an issue where unexpected continue was causing a missing update in VisualEffect after Reset Override. (1206890)

  • Graphics: Fixed an issue where vulkan scratchbuffer int32 overflowed. (1272953)

  • Graphics: Fixed an issue with drag and drop of non-MonoBehaviour ManagedObject's child component onto inspector

  • Graphics: Fixed an issue with invalid state transitions in DX12 back-end. (1259951)

  • Graphics: Fixed an issue with missing support for texture 2d (ms) arrays.

  • Graphics: Fixed an issue with packed miptails on D3D11/12 tiled resources. (1220572)

  • Graphics: Fixed and issue where RenderPass api did not sample stencil input attachment.

  • Graphics: Fixed buffer over-read when decoding BC4/5 texture data. (1270857)

  • Graphics: Fixed crash when trying to assign RenderTexture as input for a VT stack (1235243)

  • Graphics: Fixed crash when using out-of-bounds indices with RenderPass API (1226312)

  • Graphics: Fixed incorrect NativeArray aliasing when using CPU PVT (1232623)

  • Graphics: fixed Indirect drawcalls on Metal binding buffers with wrong offset (1211151)

  • Graphics: Fixed initialization of Camera's state which was causing an issue on Camera's child component's Reset.

  • Graphics: Fixed invalid GLSL code generation with result variable participating in comparisons. (1229297)

  • Graphics: Fixed offline texture processing with ARGB texture format on PS4

  • Graphics: Fixed offset calculations of volume slices for compressed texture formats (1249421)

  • Graphics: Fixed ScreenCapture.CaptureScreenshotAsTexture crashing on Metal under some circumstances. (1262959)

  • Graphics: Fixed several performance issues with reflection probe anchors when reloading scenes.

  • Graphics: Fixed shader codegen for countbits (1227474)

  • Graphics: Fixed some VFX failing validation on metal, crashing editor/player (1231313)

  • Graphics: Fixed static analysis defect - class member not initialized in constructor (1240445)

  • Graphics: Fixed static analysis defect - class members not initialized in constructor (1248294)

  • Graphics: Fixed transparent shaders with no _MainTex property not having offset and scale uniforms set when rendering for picking in the Scene View. (1232257)

  • Graphics: Fixed uninitialized variable in MeshRenderer (1226229)

  • Graphics: Fixed various bugs when rendering into texture2darray slices as well as resolving texture2dmsarray into a non-multisampled texture on Nintendo Switch.

  • Graphics: Fixes for UVMeshMetric calculation (1248992)

  • Graphics: Fixes incorrect gamma decoding at import of LDR textures that target a HDR graphics format in a gamma colorspace project

  • Graphics: fixes static analysis defect - invalid error check (1262795)

  • Graphics: Fixing flipped view when using RenderPass API

  • Graphics: GrabPass does not support Depth targets. Only a single color target is supported. This applies to all platforms that we have. Added error check to prevent editor from crashing. (1208293)

  • Graphics: Ignore points/line topology when raytracing mesh in editor for selection (1183667)

  • Graphics: made export to png use grayscale image for R8 (1239813)

  • Graphics: Metal: Fixed a compatibility issues with MSAA/filtering on Apple Silicon and macOS 11.

  • Graphics: Metal: Fixed a constant buffer binding issue with HDRP 9.x Decals shader.

  • Graphics: Metal: Fixed a regression with Time.deltaTime and disabling vsync.

  • Graphics: Metal: Fixed a system instability/hang issue with texture versioning. (1256106)

  • Graphics: Metal: Fixed HLSL compatibility issue with DrawProceduralIndirect. SV_InstanceID always starts at 0 but with Metal, a base instance was not subtracted for equal behavior.

  • Graphics: Metal: Fixed MSAA ResolveDepthIntoTexture to use the resolved texture as a source when doing blit into destination

  • Graphics: Metal: Fixed shader compiler warnings that could appear on macOS 11 Big Sur/iOS 14.

  • Graphics: Removed a hitch on creation of large textures on DX12

  • Graphics: Removed a unneeded PIX related assert.

  • Graphics: Shader Memory usage optimization in player (1223610)

  • Graphics: SRP Batcher doesn't break at first element anymore when rendering hybrid v2 objects (1263322)

  • Graphics: The DX12 renderer performance has been improved by only adding IASetPrimitiveTopology to a command list when the topology has changed.

  • Graphics: This fixes the crash during command buffer reading in d3d12 mode. (1233711)

  • Graphics: Thread safety fix to texture streaming manager (1229887)

  • Graphics: Throw an exception when creating mesh with more streams than supported for mesh (1226104)

  • Graphics: tipfix uninitialized variables in TextureUploadMemoryDX11 (1231159)

  • Graphics: TotalTime is inconsistent with sum of deltaTime (1237608)

  • Graphics: Updated message that is shown in Inspector when using a mesh without animation data for SkinnedMeshRenderer. (1229548)

  • Graphics: Updated QualitySettings.streamingMipmapsRenderersPerFrame to support setting at runtime (1222432)

  • Graphics: When creating shaders for desktop metal, do not forcibly generate constexpr shader for comparison (this is needed for ios where older devices do not support setting comparison from the application side) (1201857)

  • Graphics: [RenderPass] Fixed incorrect input attachment indexing on fallback platforms

  • Graphics: [RenderPass][Vulkan] Fixed crash when using shader pass uses not first input attachment

  • IL2CPP: Avoid calling a default constructor during marshaling for reference types that are not out parameters. (1263916)

  • IL2CPP: Avoid emitting C# comments into the generated C++ code stream when source code annotations are enabled. (1251077)

  • IL2CPP: Fix building Universal Windows Platform player when using Windows SDK versions 15063 or 16299.

  • IL2CPP: Fix memory corruption accessing generic structs with StructLayoutAttribute.Size in arrays. (1254451)

  • IL2CPP: Fixed an error "Attempting to constrain an invalid type" when making a constrained call on a by ref parameter with a modreq or modopt modifier. (1265192)

  • IL2CPP: Properly throw an exception from a finally block nested in a try/catch block. (1248673)

  • IL2CPP: Respect the DllImportAttribute.PreserveSig property on PInvoke definitions.

  • IL2CPP: Respect the PreserveSigAttribute on COM interop types. (1202914)

  • IL2CPP: Throw a TypeLoadException for a recursively defined type. (1259566)

  • IMGUI: Fixed a scroll bar thumb overlapping with arrow icons issue in the console window. (1269928)

  • IMGUI: Fixed an issue where NotImplementedException is thrown on double clicking instructions from Inspected view when mode set to Clip. (1251517)

  • IMGUI: Fixed an issue with pop up menus needing additional click to switch. (1247542)

  • IMGUI: Fixed IndexOutOfRangeException when loading the editor. (1241206)

  • IMGUI: Fixed the issue where the last selection is shown as focused even after selection another window. (1241127)

  • IMGUI: Fixed the popup clickable area issue in MinMaxGradient with EditorGUI.indent level greater than 0. (1262838)

  • IMGUI: Fixed the slider thumb artifact when multi editing. (1256600)

  • iOS: Fixed a xcode warning when UnityAppController.h was included in .m file. (1267931)

  • iOS: Fixed an issue where active/visible status of ipad floating keyboard were mishandled. (1217147)

  • iOS: Fixed an issue where GetKeyUp and GetKeyDown functions were returning true on every frame. (1218784)

  • iOS: Fixed an occassional crash on exit coming from iOS calling [UIViewController prefersHomeIndicatorAutoHidden] or [UIViewController preferredScreenEdgesDeferringSystemGestures] after unity has been killed.

  • iOS: Fixed default specular cubemap format for iOS and tvOS to be PVRTC.

  • iOS: Fixes sound becoming muted after quickly swapping to voice dictation and back to app. (1176463)

  • iOS: Prevent a possible hang on shutdown after UnityWebRequest is used with TLS. (1233486)

  • Kernel: AlignOf<T> returns C# required structure alignment, instead of 4.

  • Kernel: Fixed an issue where worldPositionStays argument was missing from Undo.SetTransformParent. (1247086)

  • Kernel: Fixed issue with debug assert raised in unique_ptr, when move-from is either default constructed or already moved-from. (1226908)

  • Kernel: Fixed rounding when undoing parenting. (1214246)

  • Kernel: NativeArray.Dispose behavior to not throw when Allocator.None is used.

  • License: Fixed an issue where Report/log licensing errors were not sent by the client. (1273213)

  • Linux: Disable unstable DrawHeader_WhenInvokedManually_FromPrefabOverridesTreeView_InvokesCallback test for case 1179487

  • Linux: Fix UnitySetup -L option incorrectly showing defaults (1160471)

  • Linux: Fixed a highlighting issue in the hierarchy window while dragging assets. (1251614)

  • Linux: Fixed an Editor crashes if there was not a X11 window desktop environment. (1264934)

  • Linux: Fixed an issue where the eyedropper tool in the color picker did not work on Linux. (1174814)

  • Linux: Fixed keyboard modifiers from being incorrectly munged while moving between editor windows. (1218006, 1236681)

  • Linux: Fixed sporadic errors in the console due to sending invalid drag events. (1251591)

  • macOS: CPU usage decreased for Player built with 'Run in Background' (1240835)

  • macOS: Fix issue on MacOS where VSync was not locking framerate when in fullscreen. (1239354)

  • macOS: Fixed a -screen-quality command line argument issue for the player on all desktop platforms. (1094263)

  • macOS: Fixed a mouse position in fullscreen issue when black bars are present. (1254446)

  • macOS: Fixed an issue where shader pre-warming woulc crash when a fragment shader returns something else than the usual 4 components. (1264839)

  • macOS: Fixed an issue where the Build Settings window would not minimizes with the editor window. (1199503)

  • macOS: Fixed assets cannot be saved if the project name contains certain Unicode characters (1229500)

  • macOS: Fixed console window lose focus when status bar is clicked to show it (1227963)

  • macOS: Fixed issue where using the CanvasScalar with Physical Constraint set would cause a performance regression. (1241982)

  • macOS: IME works in both editor and player in the proper location

  • Mobile: Fix iOS/tvOS bundle ID format restrictions to match Apple requirements. (1240017)

  • Mobile: Fix ProjectCapabilityManager adding corresponding frameworks to the wrong target. (1245194)

  • Mobile: Fixed several InputField errors when selecting text with Hide Mobile Input enabled. (1247399)

  • Mobile: Removed Game SDK 3.1 initialization due to issues in GameSDK 3.1. Any other GameSDK version is still supported.

  • Mobile: Removed notification package from Tests/GeneratedTests/PackageIsolationTests/Assets/Resources/ExemptionList.json to clean the console test. (1252209)

  • Multiplayer: Adding and/or fixing range validation of indexes coming from network to be in-bound before using them.

  • Nintendo Switch: Fixed texture corruption caused by offline texture procession and re-enabled the feature.

  • Package Manager: Adjusted package 'Preview' and 'Verified' tag colors in Light mode to meet minimum legal contrast requirements.

  • Package Manager: Changed function signature and comments

  • Package Manager: Changed Package Manager window to use UIElements VisualSplitter instead of custom splitter class. This makes the window behave more consistently with other application windows with a split view, i.e. Preferences Window. Split view resizing with window resizing now works in Package Manager window.

  • Package Manager: Created a proxy for AssetDatabase, such that in the test environment we never rely on the state of the real AssetDatabase

  • Package Manager: Fix AssetStore package display issue with poor internet connection

  • Package Manager: Fix Package Manager dialog box could be empty if the error message was too long

  • Package Manager: fix scroll for package dev description

  • Package Manager: Fix the blurry dropdown button for preview packages

  • Package Manager: Fix the superposition of the text packages and load next in package load bar

  • Package Manager: Fixed a possible null error in console when listing samples.

  • Package Manager: Fixed an issue in the UnityEngine.PackageManager.Client.Pack method did not properly use the contents of .gitignore when .npmignore was missing.

  • Package Manager: Fixed an issue in the UnityEngine.PackageManager.Client.Pack method which could sometimes result in file permission issues.

  • Package Manager: Fixed an issue where a deleted custom package still was displayed in project window. (1266789)

  • Package Manager: Fixed an issue where a network requests sometime mislabeling the host as undefined when unsuccessful.

  • Package Manager: Fixed an issue where Asset Store package download progress tracking UX was inconsistent in the Package Manager window. (1272970)

  • Package Manager: Fixed an issue where download and import was enabled for an asset that was not available on the Asset Store.

  • Package Manager: Fixed an issue where npm authentication configuration was ignored when there was an extraneous slash at the end of the configured registry URL.

  • Package Manager: Fixed an issue where samples showed randomly when package was not installed and Sample.FindByPackage API did not work if the package manager window was not open.

  • Package Manager: Fixed an issue where the Diagnose button in the critical startup failure dialog would not launch a diagnostics window on Linux.

  • Package Manager: Fixed an issue where the Unity Package Manager could take more time to start up than the 10 seconds allotted by Unity.

  • Package Manager: Fixed an issue where the Client.GetAllPackageInfo method would silence errors and return an empty list of packages when there were registry reachability issues.

  • Package Manager: Fixed an issue where tooltip doesn't show up for the GroupName label.

  • Package Manager: Fixed an issue where PackageManager.Client.Remove request was still proceeding after input package name contained unsupported characters like carriage return or line feed failed validation.

  • Package Manager: Fixed an null error issue in Scoped Registries Settings.

  • Package Manager: Fixed and issue with label superposition of the toggle button when using 4k screen. (1243974)

  • Package Manager: Fixed defect in AssetStorePackage reported by static code analysis (1237761)

  • Package Manager: Fixed defect in AssetStoreProductInfo reported by static code analysis (1237762)

  • Package Manager: Fixed issue where 'user not logged in' error sometimes occurs on opening Unity Editor with Package Manager window opened to My Assets.

  • Package Manager: Fixed issue where Package Manager UI shows empty list when there's an error in ScopedRegistry settings

  • Package Manager: Fixed potential null error in Package Database

  • Package Manager: Fixed the issue where ArgumentException will be thrown when opening Asset Store page in Package Manager window when Charles Proxy is running.

  • Package Manager: Fixed the issue where Packman UI won't refresh on package.json update

  • Package Manager: Fixed when viewing offline docs not working if there is no program associated to markdown files in the operation system

  • Package Manager: Fixed PackageInfo.FindForAssetPath performance overhead. (1221526)

  • Package Manager: grey out package in inspector

  • Package Manager: Internal changes, moved DownloadImageAsync function into AssetStoreCache class so it is with the Load and Save Image functions.

  • Package Manager: Match download bar to windows size

  • Package Manager: Moved storage of npm credentials from system/global configuration to user configuration. The file format was also changed to TOML.

  • Package Manager: Removing a custom package in development was not updated in the UI.

  • Package Manager: set actif remove button when element present

  • Particles: Add error message when using sub-emitters outside the hierarchy of the parent system (1230728)

  • Particles: Disabled Particle System "Open In Editor" button when editing a preset.

  • Particles: Fixed particle lights being re-rendered over multiple frames

  • Particles: Fixed the Stop Action setting to consider children and sub-emitters before triggering its event. (1261459)

  • Particles: Hide scene view controls from the Particle System Inspector when viewing Prefab overrides. (1242874)

  • Particles: Hide the noise preview Texture when viewing Prefab overrides. (1242905)

  • Particles: isEmitting script API should return false if the emission module is disabled (1240811)

  • Physics: Fix ArticulationBody.jointPosition crash that happened sometimes in articulations more than two objects deep

  • Physics: Fixed an issue with ray casts not working correctly with colliders that have attached ArticulationBody components.

  • Physics: Fixed an issue with the Cloth component's virtual particles being set incorrectly at creation.

  • Physics: Fixed ArticulationBody.immovable property setter to have effect when set during runtime.

  • Physics: Fixed Component Reset functionality for: Hinge Joints (all parameters relating to Motor, Spring, Limits), Joints (Enable Collision, Enable Preprocessing, Break Force, Break Torque), Character Joints (Swing Axis, Enable Projection) (1157026)

  • Physics: Fixed crash while accessing Collider.attachedRigidbody property if ArticulationBody component is attached instead of Rigidbody.

  • Physics: Fixed various crashes related to activation/deactivation of ArticulationBody components attached to game objects, like changing game object parent, enabling/disabling of game objects, enabling/disabling/removal of ArticulationBody components, removal of game objects with ArticulationBody attached.

  • Physics: Update the profiler entry name for Physics.CheckSphere (1215381)

  • Player: Changes AsyncReadManagerMetricsFilters to be passed by reference in relevant methods. (1242611)

  • Player: Explicitly stopping games after test runs to ensure clean test environment.

  • Player: Fixed issue where output from Stadia commands were not printing stderr.

  • Player: Re-enable OnAudioConfigChanged and AudioRenderTest tests on the Stadia Platform.

  • Player: Updated automation player to use most recent stadia sdk

  • Plugins: Fixed an issue where the XboxOne native extension dll to fail gracefully if required dll's are not found.

  • Prefabs: "Find References In Scene" did not work with nested prefabs (1213528)

  • Prefabs: An issue is fixed where changes to hidden components like ParticleSystemRenderer and VFXRenderer were not handled correctly in all cases when applying or reverting component modifications, added component overrides, or removed component overrides on Prefab instances. (1263007)

  • Prefabs: Fix baked Occlusion Culling data affects Prefab Mode (1136698)

  • Prefabs: Fix Overrides dropdown comparison view remaining open if last override has been applied or reverted via context menu. (1071433)

  • Prefabs: Fix SerializableObject.GetIterator() throws ArgumentNullException when UnpackPrefabInstance() is called on an instantiated Prefab in Inspector logic (1164099)

  • Prefabs: Fix: Crash when calling PrefabUtility.SaveAsPrefabAsset with absolute path outside of project's Assets folder. (1210526)

  • Prefabs: Fix: PrefabUtility.SaveAsPrefabAsset() freezes the editor when called from OnValidate() method. (1127313)

  • Prefabs: Fixed a crash when loading a scene with a legacy disconnected prefab. (1270456)

  • Prefabs: Fixed a PrefabImporter crash when it could not allocate a preview scene. (1246844)

  • Prefabs: Fixed an editor crash caused by adding objects on prefab instance in combination with required components. (1226180)

  • Prefabs: Fixed an issue where a parent prefab might fail to correctly override changes to its nested children (1195496)

  • Prefabs: Fixed Inspector window flickers when Tag or Layer of a Prefab Asset is changed (1240896)

  • Prefabs: Fixed placement of Prefab override margin lines for controls that are inside GUI clipping groups. (1197808)

  • Prefabs: Fixed preview material getting permanently set when dragging over Prefab instance with missing Asset. (1124308)

  • Prefabs: Fixed removing MonoBehaviours with missing scripts on prefab assets.

  • Prefabs: Fixed suppressed components on Prefab instances incorrectly appearing as if they're removed components. For example if a Prefab instance has an added Rigidbody component and a Rigidbody is later added to the Prefab Asset as well, the one from the Asset will be suppressed (not be created) on the instance so avoid there being two Rigidbodies on the same GameObject. The suppressed one would previously appear as if it was a removed component override, even though it wasn't. (1240146)

  • Prefabs: Fixes a test instability (1101428)

  • Prefabs: If the user destroys the root game object of a prefab, Unity editor would crash. Now an error message is printed instead (1218129)

  • Prefabs: Overrides Window: Fix overrides in nested instances are collapsed when one override is applied (1112995)

  • Profiler: Fixed an issue in the Profiler window whereby the splitter separating charts and the details pane could not be adjusted on monitors with a scaling factor set. (1250806)

  • Profiler: Fixed an issue where Audio and Video memory stats were incorrectly reporting values which belong to other shared allocators.

  • Profiler: Fixed an issue where Profile Capture data files were not loaded if they were made with Unity 2017.4 - 2018.3. (1193516)

  • Profiler: Fixed an issue where there were duplicate AsyncReadManager.ReadFile markers. (1258822)

  • Profiler: Fixed an issuw where warnings in package that were causing users with warnings as errors enabled to fail. (1266375)

  • Profiler: Fixed GC Allocations not displaying values less than 1024 bytes in Memory chart of ProfilerWindow

  • Profiler: Module Editor - Fixed an issue where restore defaults when the Module Editor is open would not refresh the UI with the latest list of modules. (1256874)

  • Profiler: Profile Analyzer (com.unity.performance.profile-analyzer) updated to version 1.0.2, fixing a bug where 2 versions of the profiler could appear. (1244366, 1250860, 1257547)

  • SceneManager: Fixed an issue where the editor would freezes for couple of seconds when using SceneManager.LoadSceneAsync while the Hierarchy was open. (1093359)

  • Scripting: - Fix Burst SharedStatic<T> to be initialized to zero after a domain reload.

  • Scripting: Access platform using Environment.Platform rather than probing the file system (1267836)

  • Scripting: Added dll verification to loading routine to prevent the editor from loading corrupt dlls. (1231038)

  • Scripting: Added missing tooltips for some scripting related settings in the Build Player Window. (1264507)

  • Scripting: Allow duplicate enum members to refer to same underlying value as long as one is non-obsolete. (1218124)

  • Scripting: Correct an error in the UnityLinker with System.Text.Json.dll is used. (1241237)

  • Scripting: Ensure Roslyn server (VBCSCompiler.exe) is terminated when Editor is closed to prevent locked files. (1183240)

  • Scripting: Fix crash when large amount of dynamic code is generated, potentially for XML serialization. (1191533)

  • Scripting: Fix job reflection data creation could sometimes crash the editor

  • Scripting: Fixed a hang that would occurred when there was an incorrectly set time zone data in the windows registry. (1256569)

  • Scripting: Fixed a random crash on OSX due to thread_get_state failure. (1268952)

  • Scripting: Fixed a runtime crash when accessing an invalid address under debugging. (1269030)

  • Scripting: Fixed an issue wher GarbaageCollector.Collectincremental was not always triggering a new incremental collection.

  • Scripting: Fixed an issue where scripts containing attributes with explicit namespaces were not correctly imported. (1243839)

  • Scripting: Fixed an issue where scripts containing preprocessing directive in the last line were not correctly imported. (1261028)

  • Scripting: Fixed an issue where WebCamTexture.updateCount was not automatically incrementing when streaming video. (1247198)

  • Scripting: Fixed an issue where X509Chain.ChainStatus would throw a NotImplementedException.

  • Scripting: Fixed Debug.Log* printing Debug.Filename.h after the stacktrace in IL2CPP/Mono with no PDB. (1099724)

  • Scripting: Fixed many UnityEngine.Random documentation issues. Aaddressed feedback from public comments, documented performance and detailed behavior of properties and methods, and improved code sample quality.

  • Scripting: Fixed possible crash caused by race condition during startup when the script debugger and profiler systems are enabled.

  • Scripting: Improved error messages for errors in generated code coming from the jobs debugger and safety system

  • Scripting: NativeArray.ReadOnly indexer now correctly validates its index

  • Scripting: NativeArrayUnsafeUtility.ConvertExistingDataToNativeArray documentation now correctly states the its length parameter is in number of elements, not bytes.

  • Scripting: Unable to delete NewAssembly from Assembly Definition References list in Test Import Setting (1217184)

  • Security: Fixed a security vulnerability. (CVE-2017-12939)

  • Security: Fixed a security vulnerability. (CVE-2019-9197)

  • Serialization: Fixed an issue where assigning a null managed reference and to an object did not apply. (1256341)

  • Serialization: Fixed an issue where instance deserialization was stopped when there was an exception during the managed ref deserialization process and still had a valid instance created. (1256991)

  • Serialization: Made sure that when objects are created as part of a deserialization process we call class default initializers. (1253433)

  • Serialization: Make sure that managed instances stored in array are not reinflated or reset to null when applying through a SerializedProperty (1254060)

  • Serialization: Make sure to support resolution loops and empty messages in System.Obsolete for the API upgrading path (1222795)

  • Services: Display of newer version of In-App Purchasing Package now correctly displays newest pre-migration version (prior to 3.X) if still on version 2.X or older. Verstion installed when selecting Update and Migrate also now function as intended.

  • Shaders: Added precise keyword support on generated GLSL (1227113)

  • Shaders: fix static analysis issues ShaderCompiler Preprocessr code (1217178)

  • Shaders: Fixed an issue to use the error shader when a variant failed to compile, thus not rendering anything. (1253968)

  • Shaders: Fixed an issue where HLSLcc was doing bad precision downgrading in some cases. (1228687)

  • Shaders: Fixed an issue where the Loading shader wasn't used in the player while waiting for a variant to compiled. (1254843)

  • Shaders: Fixed an issue which would causes shader requirements not to be serialised correctly.

  • Terrain: Added NavMesh Lod index in TreePrototype. The index is used to select LOD Level in LODGroup for NavMesh generation. (1193073)

  • Terrain: Export raw terrain now shows up immediately in Project Folder view (1178342)

  • Terrain: Fixed a crash that occurs when modifying terrain data asset during terrain callbacks. Disables destruction of terrain data during callbacks. (1152858)

  • Terrain: Fixed a null exception thrown from the Paint Texture terrain tool. (1268578)

  • Terrain: Fixed an assertion error that occured when painting speed trees in prefab editor when the light is being baked. (1081131)

  • Terrain: Fixed an incorrect error message "A tree couldn't be loaded because the prefab is missing" that was printed during asset importing. (1191833)

  • Terrain: Fixed an issue where 'Control Texture Resolution' and 'Base Texture Resolution' were not saved. (1258969)

  • Terrain: Fixed an issue where instanced terrain was rendering when the player was built with -nographics command line argument. (1195302)

  • Terrain: Fixed an issue where tree colliders were not rotated according to their mesh when random rotation was applied. (1248407)

  • Terrain: Fixed preview when multiple TerrainLayers are selected (1148952)

  • Terrain: Fixed Terrain to properly switch from base map to splat map rendering when splats are in a dirty modified state (1178928)

  • Terrain: Fixed undo tracking for Terrain to be correctly record multiple different Paint operations in the same Undo operation, and properly Undo adding Terrain Layers (1138273)

  • Terrain: Fixing baked shadow masks for terrain with more than 4 materials (1148970)

  • Terrain: Fixing Terrain Brush list to update when brushes are modified, and adding tooltips to the Brush properties (1170563, 1170565, 1170567)

  • Terrain: Increased the Undo buffer size to better handle Terrain modifications. (1067258)

  • TextCore: - Updated FontEngine to improve performance as well as reduce memory allocations.

    • Fixed Font Asset Creation process not using Multi-Threading in the Editor when using SDF8, SDF16 and SDF32 modes.

    • Fixed memory allocation issue when retrieving glyph adjustment pairs.

    • Fixed PairAdjustmentRecords returning a value of infinity with certain font files.

    • Fixed incorrect PairAdjustmentValues when using SDF8, SDF16 and SDF32 modes.

    • SDF, SDF8, SDF16 and SDF32 modes no longer use hinting to improve glyph sampling at low point size.

  • TextCore: Added Multi-Threading to Font Asset Creation process in the Editor.

  • Timeline: Fixed an issue where changes in the PlayableDirector Inspector would not allow the user to view and delete unused bindings. (1234687)

  • Timeline: Fixed warning in Timeline caused by assigning bindings in prefab editor (1235781)

  • UI: Add dirty call when setting pixelsPerUnitMultiplier so the verts are rebuilt (1245967)

  • UI: Adding ability to use Ctrl + Insert to copy text and shift + instert to paste text. (1226349)

  • UI: Fixed an issue where AspectRatio was not able to be set when the mode was none in the editor. (1264569)

  • UI: Fixed an issue where new windows always loaded on the first connected monitor instead of the current monitor that the main window is in. (1148729)

  • UI: Fixed an issue where scene needs to be saved twice when creating an instance of a Prefab having a Layout Group component and a child UI GameObject (1195283)

  • UI: Fixed an issue where the update button onclick link would point to an inproper proper file.

  • UI: Fixed issue where GetModifiedMaterial would get root canvas even if not maskable causing performance spikes.

  • UI: Fixed issue where Text Mesh color was not reset properly upon calling "Reset" (1223055)

  • UI: Fixed issue where UIZTestMode was not initially set which could cause first frame render issues or issues if the GameView wasn't visible. (1235078)

  • UI: Fixed issue with indexedSet array access

  • UI: Fixed issue with Selectable OnDrag not resetting to proper position as it used localPosition instead of anchoredPosition.

  • UI: fixing issue where if a dropdown was part of a nested overrideSorting canvas it would grab the very root canvas which could have the wrong sorting layer data

  • UI: Update uGUI package documentation to include EventSystem

  • UI Elements: Enabled MSAA on inspector windows to provide antialiased UIElements content. (1215973)

  • UI Elements: Fix event currentTarget being null when event is sent only to target.

  • UI Elements: Fixed Editor memory leak on EditorWindow docking/undocking.

  • UI Elements: Fixed issue with right-click passing through the inspector preview if it's drawn over other inspector components. (1226328)

  • UI Elements: Fixed padding that caused truncated text in UIElements debugger search bar. (1233009)

  • UI Elements: Fixed radial gradients on metal. (1225848)

  • UI Elements: Fixed right-click on titlebar outside of open or failed-to-load tabs not supposed to show context window. (1228991)

  • UI Elements: Fixed the SubUpdatesDoesntBreakNextElements test to work on OpenGL and Vulkan on Windows. (1222743)

  • UI Elements: Item height is now excluded from the ListView view data. (1225888)

  • UI Elements: Limiting the relative mouse position to account for the max size as well.
    Added automated tests for the Visual Splitter (1215097)

  • UI Elements: Limiting the relative position of the splitter to always be between 0f and 0.999f.
    Added automated test to make sure the bug can never be reproduced. (1227342)

  • UI Elements: now the UIElements Debugger no longer sends a ChangeEvent when updating the VisualElement's Text field. (1185718)

  • UI Elements: Optimize StyleVariablesContext hash computation

  • UI Elements: Setting twice a TextValueField (without notify) would sometimes skip display updates and result in displaying the wrong values (the field's value itself is ok, but not the text that represents the value). (1202400)

  • UI Elements: The Scrollbar is one item behind when using ScrollToItem method. (1219416)

  • UI Toolkit: Changed the blending equation to allow blending of the resulting RenderTexture

  • UI Toolkit: Fixed an exception that was thrown when the Sprite Editor window was opened after transiting to play mode. (1249369)

  • UI Toolkit: Fixed an issue where .isPasswordField was not updating. (1251000)

  • UI Toolkit: Fixed an issue where PropertyField's label width calculation did not match IMGUI. (1230326)

  • UI Toolkit: Fixed an issue where the GraphView edges disappeared when resizing the visual element container height smaller than a certain threshold. (1240884)

  • UI Toolkit: Fixed an issue where the use of "Random" was affecting the state. (1188214)

  • UI Toolkit: Fixed an issue with ScrollView / ScrollTo. (1205850)

  • UI Toolkit: Fixed an issuw where ListView mouse events weren't replaced with pointer events. (1231301)

  • UI Toolkit: Fixed WebGL rendering glitches caused by sub-range buffer updates.

  • UI Toolkit: Removed cyclic dependency with Input System package (1262723)

  • UI Toolkit: Renamed "Update UIElements Schema" menu item to "Update UXML Schema"

  • UI Toolkit: Reverting a Toggle's text to null won't throw an exception (1238606)

  • UI Toolkit: Slider's text field displayed value is not properly updated when value is set through code (1263147)

  • UI Toolkit: The text value of TextValue based fields is now updated as soon as new formatString rule is set. (1244514)

  • UI Toolkit: Unhandled CommandEvents are now propagated to the EditorWindow's OnGUI() (1231271)

  • Universal Windows Platform: Expose EnableFrameTimings in Player Settings for Universal Windows Platform. (1163531)

  • Universal Windows Platform: Fixed a Player crash when calling WebcamTexture.devices during Update. (1251067)

  • Universal Windows Platform: Fixed an incorrect error generated by Reference Rewriter tool for certain array types. (1254820)

  • Universal Windows Platform: Fixed an issue where file types [array] preset were incompatibility in Player Settings (UWP). (1267108)

  • Universal Windows Platform: Fixed Preset incompatibilities in Player Settings (UWP) (1232071, 1232087)

  • Version Control: Fixed an issue where asset renames were not being detected in Collab until the asset were reimported. (1232838)

  • Version Control: Fixed not being able to set VCS mode when running editor session with -vcsModeSession argument

  • Version Control: Provider.CheckoutIsValid correctly returns false for exclusively locked files by remote user.

  • Version Control: Removed the VCS "Lock" and "Unlock" buttons in various menus when the enabled VCS system does not support those operations. (1174664)

  • Video: Addresses an instability in video playmode tests (VideoPlaybackCanPlayAudio).

  • Video: Fix VideoPlayerTimeReference playmode test instability.

  • Video: Fixed a race condition that could result in a crash when running play mode tests on Mac. (1254242)

  • Virtual Texturing: Fixed an isssue where the Engine would hang at startup with certain VT cache sizes. (1243957)

  • Virtual Texturing: Fixed an issue where the default project settings caused an error in PS4. (1244037)

  • Virtual Texturing: Fixed an issue where VT with hybrid v2 renderer gave "A Hybrid Renderer V2 batch is using a pass from the shader, which is not SRP batcher compatible" error. (1252572)

  • Virtual Texturing: Fixed an issue with texture corruption with VT on certain texture formats. (1259642)

  • Web: [UnityWebRequest] Fixed rare cases where request would fail when using File download or upload handler

  • WebGL: Added check for Linux to use the correct version of the Brotli compression library (1241347)

  • WebGL: Fix an issue where Transform.position of an element on a canvas could return incorrect value in Start method in WebGL. (1234614)

  • WebGL: Fix WebGL builds for projects with utf-8 symbols (1179135)

  • WebGL: Fixed an issue where the video started playback before the mute property was set, which resulted in an error and the video not to play. (1241584)

  • WebGL: Fixed an issue with PlaySchedule. (912244)

  • WebGL: Fixed issue with gzip compression being broken for CentOS7. (1168715)

  • WebGL: Fixed the issue which prevented usage of ES6 in user jspre plugins in WebGL. (1211536)

  • WebGL: Fixed WebAssembly streaming for compressed WebGL builds when naming files as hashes. (1223772)

  • Windows: Adds support for VideoCapture API to Windows Standalone Player and Editor (1195027)

  • Windows: Fixed a built project crash when Screen.SetResolution() method was used with height or width set to 0. (1242757)

  • Windows: Fixed a couple of crashes when closing custom modal dialogs. (1235986)

  • Windows: Fixed an issue when running player when not monitor is connected to the system. (1228505)

  • Windows: Fixed an issue where audio would not pause when the Editor was minimized by clicking the taskbar. (1208758)

  • Windows: Fixed an issue where the cursor was not updating in the Player when using NewInput. (1238158)

  • Windows: Fixed an UWP certificate generation issue where key container was unusable. (1235410)

  • Windows: Fixed issue where Overrides window stays stuck open when user returns to the Scenes. (1233487)

  • Windows: Fixed issue where the wrong window would sometimes get mouse click events if they were overlapped. (1242368)

  • XR: Add missing Vulkan device flush from XRDisplay

  • XR: Disable watermarks when rendering to VR device with XR SDK

  • XR: Fix regression introduced in render pass fix. (1225548)

  • XR: Fix zero-initialization for ScriptableCullingParameters

  • XR: Fixed a case where the camera does not respect near/far clipping plane settings

  • XR: Fixed a crash by preventing B10G11R11 texture format usage on Oculus Quest.

  • XR: Fixed a crash with MockHMD (multipass) when a terrain was present. (1228228)

  • XR: Fixed a Quest app crash with URP 10 package due to the memory leak. (1269108)

  • XR: Fixed a stereo skybox rendering issue when a sphere was used instead of a cube. (1223567)

  • XR: Fixed a Vulkan framebuffer layer count logic issue when using multiview. (1256388)

  • XR: Fixed an issue where GetStereoViewMatrix and GetStereoProjectionMatrix would not return the same value in both eyes in Multi Pass mode. (1262524)

  • XR: Fixed an issue where partial viewport clear on texture arrays on platforms that can't clear non-fullscreen.

  • XR: Fixed an issue where the XR splash screen was missing when using SRP. (1230976)

  • XR: Fixed an issue where XRDevice, XRSettings, and XRStats were not providing valid data with scriptable render pipelines.

  • XR: Fixed an issue with Texture2DMSArray shader compilation with OpenGL.

  • XR: Fixed an URP XR crash when "Optimized Frame Pacing" was selected. (1264046)

  • XR: Fixed application of MSAA in Vulkan Multiview.

  • XR: Fixed MirrorView BlitMode C# out of sync with XR display header.

  • XR: Fixed multipass color resolve to right eye in certain circumstances.

  • XR: Fixed Sprite Mask not working in URP XR (1195098)

  • XR: fixes automatic upgrading for URP and HDRP projects

  • XR: Make sure GetInstanceCountMultiplier() is used correctly in DrawNullGeometry() and DrawIndexedNullGeometry() with OpenGL

  • XR: Modifying scripts in play mode nolonger causes Subsystems to unload.

  • XR: No longer emitting deprecation warnings for subsystem infrastructure. (1238848)

  • XR: Set the appropriate Vulkan usage flag for the fragment density map.

  • XR: Update XR Plugin Management for improved user workflow.

API Changes

  • 2D: Added: Added an overload for GenerateGridSpriteRectangles with an extra parameter (bool keepEmptyRects) to allow users to keep empty rects as Sprites.

  • 2D: Added: Added API to access SpriteSkin deformed buffer

  • 2D: Added: Added transparencySortMode and transparencySortAxis to GridPalette

  • 2D: Changed: Changed method TilemapCollider2D.HasTilemapChanges to property TilemapCollider2D.hasTilemapChanges.

  • Android: Added: Added UnityEngine.Android.Permission.RequestUserPermission(string permission, PermissionCallbacks callbacks), allows you to subscribe for permission request results

  • Android: Changed: Application.RequestAdvertisingIdentifierAsync does nothing now

  • Animation: Added: Published the AnimationWindow API.

  • Animation: Added: Removed IAnimationWindowPreview from experimental namespace.

  • Asset Bundles: Added: Added reading metrics to the AsyncReadManager and APIs to retrieve them from script.

  • Asset Import: Added: Using AssetDatabaseExperimental.SetImporterOverride after an Undo.RegisterImporterUndo call allows reverting the importer type change operation.

  • Asset Import: Added: Using AssetDatabaseExperimental.SetImporterOverride after an Undo.RegisterImporterUndo call allows to revert the importer type change operation.

  • Asset Import: Changed: Move all types in UnityEditor.Experimental.AssetImporters namespace into UnityEditor.AssetImporters

  • Asset Import: Changed: ScriptedImporterAttribute has an updated API to declare supported extensions and override extensions. See the documentation on ScriptedImporterAttribute for more details.

  • Asset Pipeline: Added: Add APIs to the Asset Database that take and return UnityEditor.GUIDs instead of strings

  • Asset Pipeline: Added: Introduced AssetImportContext.DependsOnArtifact for setting up artifact dependencies

  • Asset Pipeline: Changed: Rename AssetDatabase GetArtifachHashXXX functions to ProduceArtifact counter parts

  • Asset Pipeline: Deprecated: Deprecate certain methods in the AssetDatabaseExperimental namespace

  • Build Pipeline: Added: Added ContentBuildInterface.GetPlayerAssetRepresentations API to return the asset representations without triggering a load of the asset itself. Improving performance for certain build cases.

  • Build Pipeline: Added: Added public API to capture performance data from the ContentBuildInterface methods.

  • Build Pipeline: Added: Expose Sysroot class so that other platform extensions can use it and co-exist with each other.

  • Editor: Added: Add EditorTool.OnActivated and EditorTool.OnWillBeDeactivated

  • Editor: Added: Add HandleUtility.pickGameObjectCustomPasses, allowing external code to augment the Scene View picking function.

  • Editor: Added: Add new Scene Template workflow to the editor.

  • Editor: Added: Added a pausable progress API
    https://unity3d.atlassian.net/browse/EC-749

  • Editor: Added: Added an API to report progress with steps instead of percentage.
    https://unity3d.atlassian.net/browse/EC-750

  • Editor: Added: Added an API to specify a task's priority.
    https://unity3d.atlassian.net/browse/EC-751

  • Editor: Added: Added API to allow for a save dialog to pop up when the user closes a tab or editor window.

  • Editor: Added: Added MeshUtility.AcquireReadOnlyMeshData(). Mirrors Mesh.AcquireReadOnlyMeshData() found in the run-time, but bypasses the read/write check to permit reading data from a non-readable Mesh in the editor.

  • Editor: Added: Added CameraProjectionCache for efficiently projecting points to screen or GUI space in tight loops.

  • Editor: Added: Expose Tools.viewToolActive, allowing external tools to appropriately react to Scene View navigation tool overrides.

  • Editor: Added: JIRA case: https://unity3d.atlassian.net/browse/EC-704
    This is part of our Editor Query Framework epic : https://unity3d.atlassian.net/browse/EC-696

  • Editor: Added: Make ChannelService API public

  • Editor: Added: make some internal properties public, required to fix case 1226204

  • Editor: Added: Scripting: Creating localized GUIContent become easier than ever for Package.:

    • L10n.TextContent(string str)
      and so forth.
  • Editor: Added: [GraphView] BlackboardField.BuildFieldContextualMenu can now be overridden

  • Editor: Changed: Added the ability to filter what is shown in a custom object picker with new attributes.
    https://unity3d.atlassian.net/browse/EC-724

  • Editor: Changed: New Guids are added on search contexts to support multiple searches.
    https://unity3d.atlassian.net/browse/EC-728.

  • Editor: Changed: Provide more context when formatting Help URL so redirection can happen on the server.

  • Editor: Changed: Rename SceneViewState.showMaterialUpdate to alwaysRefresh. (1230092)

  • Editor: Removed: Handles.DrawCapFunction and associated method overloads are removed.

  • Editor: Removed: Remove Progress.RunTask API.

  • GI: Changed: Lightmapping.lightingSettings.bounces is obsolete, use Lightmapping.lightingSettings.maxBounces instead.
    Lightmapping.lightingSettings.russianRouletteStartBounce is obsolete Use LightingSettings.minBounces instead.

  • Graphics: Added: Add control on display of shadow mask option and reflection probe option in quality settings

  • Graphics: Added: Added an API on GraphicsSettings class name defaultRenderingLayerMask to allow to control the default value use for the RenderingLayerMask of Renderer at creation time.

  • Graphics: Added: Added an API that allows for SRP's to implement a picking callback for various types of picking. See Camera.SubmitRenderRequests

  • Graphics: Added: Added an overload to CommandBuffer.GenerateMips that takes a RenderTargetIdentifier parameter.

  • Graphics: Added: Added an override to SearcherAdapter for populating all children of search entries.

  • Graphics: Added: Added API to the Searcher package for entry synonyms to enabled searching Shader Graph nodes with related queries (eg: searching "scalar" will populate with the "vector 1" node).

  • Graphics: Added: added api to UnityEngine.Apple.FrameCapture to capture next frame as a whole: CaptureNextFrameToFile and CaptureNextFrameToXcode

  • Graphics: Added: added Mesh.SetSubMeshes to set all submeshes in one go avoiding all kinds of corner cases when updating existing mesh

  • Graphics: Added: Added new AddInstance overload to RayTracingAccelerationStructure which accepts a GraphicsBuffer defining a given number of AABBs, and, optionally, an instance transform for those AABBs.

  • Graphics: Added: Added new signature for ScriptableRenderContext.DrawRenderers() to allow custom tag name to be used for render-state overrides.

  • Graphics: Added: Added RayTracingAccelerationStructure Build and Update overloads that take in a relative origin for the acceleration structure. By default (when no origin is passed in), this origin in (0, 0, 0). Camera-relative ray tracing is enabled by passing in the camera position as the relative origin every time Build or Update is called.

  • Graphics: Added: Allow infinite frustum when performing shadow culling. This is useful when shadows are not updated every frame and cannot be view dependent.

  • Graphics: Added: API Added to allow native plugins to register and unregister 3D Textures with Unity

  • Graphics: Added: Image encoders that use NativeArray as input/output added.

  • Graphics: Added: NativeArray and NativeSlice support for LineRenderer and TrailRenderer

  • Graphics: Added: New API to allow the implementing Custom Render Textures on C# side, skipping completely the builtin Updates.

  • Graphics: Added: Read GPU data into NativeSlice objects using AsyncGPUReadback.RequestIntoNativeSlice.

  • Graphics: Added: When binding a depthStencil buffer as read-only resource, a new flag to separately handle depth and stencil resources has been added. This solves an issue several platforms that do not allow sampling a depth resource that is also partially bound for rendering (stencil write) unless specific flags are specified.

  • Graphics: Changed: Auto Graphics API for Mac is now Metal only, unless running the Editor on a VM without Metal support. OpenGL is being deprecated, but can still be enabled explicitly. Editor and native player running on Apple Silicon will require Metal.

  • Graphics: Changed: Extension API added for CommandBuffers to control the placement of render targets in fast GPU memory (where it is supported by the platform)

  • iOS: Added: Added function PBXProject.GetEntitlementFilePathForTarget()

  • iOS: Removed: Removed the breaking interface change to IUserProfile (gameID)

  • Mobile: Added: Adding the new iPhone SE 2nd gen to enum with iOS device generations.

  • Package Manager: Added: Added a new UnityEditor.PackageManager.Events.registeredPackages event which is raised after the editor is done importing and compiling the new list of packages.

  • Package Manager: Added: Added a new UnityEditor.PackageManager.Events.registeringPackages event which is raised before importing the new list of packages;

  • Package Manager: Added: Added a new UnityEditor.PackageManager.Client.Resolve() method that forces the Package Manager to resolve packages again and re-synchronize the package cache.

  • Package Manager: Changed: The enableLockFile option is now enabled by default when absent from the project manifest

  • Particles: Added: Added NativeArray overloads to SetParticles and GetParticles

  • Physics: Added: Added API to ArticulationBody for limitation of maximum velocities: maxJointVelocity and maxLinearVelocity properties.

  • Physics: Added: Added API to ArticulationBody for the entire articulation hierarchy drive targets and cache manipulation: index property, GetDofStartIndices, GetDriveTargets/SetDriveTargets, GetDriveTargetVelocities/SetDriveTargetVelocities, GetJointPositions/SetJointPositions, GetJointVelocities/SetJointVelocities, GetJointAccelerations/SetJointAccelerations, GetJointForces/SetJointForces.

  • Physics: Added: Added API to ArticulationBody to compute the Jacobian matrix for entire articulation hierarchy to be used for IK.

  • Physics: Added: Added API to ArticulationBody to manipulate velocity and angular velocity of root body: velocity and angularVelocity property setters.

  • Physics: Added: Added read only property Collider.attachedArticulationBody .

  • Physics: Added: Added read only property RaycastHit.articulationBody .

  • Profiler: Added: Added ProfilerRecorder api which allows to access memory and draw stats in Players.

  • Scripting: Added: Added GarbageCollector.Mode.Manual, which disables automatic GC but still allows manual control by calling GC.Collect() or GarbageCollector.CollectIncremental().

  • Scripting: Added: Added IJobParallelForTransform.ScheduleReadOnly which provides better parallelization for read-only transform jobs

  • Scripting: Added: Added Object.InstanceIdToObject and Object.InstanceIDToObjectList.

  • Scripting: Added: Added ObjectChangeEvents API in the editor that exposes a stream of events summarizing all undoable changes that happened in the last update

  • Scripting: Added: Language version added to ScriptCompilerOptions

  • Scripting: Added: NativeArray.ReadOnly now has functions for copying and reinterpreting

  • Scripting: Changed: UnityEngine.Random only has static members, so it is now a C# static class to avoid confusion over whether it should/can be instantiated or not. Also improved parameter names a little to be more clear on exclusive/inclusive.

  • Shaders: Added: Added ComputeShader specific overloads in ShaderKeyword class.

  • Shaders: Changed: Added missing AssetImportContext arg to CreateShaderAsset/UpdateShaderAsset API. (1269484)

  • Timeline: Added: Added ClipCaps.AutoScale to automatically change the speed multiplier value when the clip is trimmed in the Timeline window.

  • UI: Added: Add a new property "IsMaskingGraphic" so we dont have to do a GetComponent each enable/ disable if we are not the masking graphic

  • UI Elements: Added: PropertyFields now sends ChangeEvent<SerializedProperty>

  • Version Control: Added: Add new methods to AssetModificationProcessor class making VCS support code more robust.

  • Web: Obsoleted: UnityWebRequest: isNetworkError and isHttpError are now deprecated, use UnityWebRequest.result instead.

  • WebGL: Added: Added "CodeOptimization" option to WebGL.UserBuildSettings. Possible values: "Speed" (default) and "Size".

  • XR: Added: Added Script API to override XR display subsystem's preferred mirror mode.

  • XR: Added: Added XR MSAA level setter to c# script.

  • XR: Added: Expose new fields to SystemInfo so that SRP and end-users can have more knowledge about graphics capabilities required for single-pass rendering techniques

  • XR: Added: TrackingModeOriginFlags now has an Unbounded origin. Unbounded Origins are based off of nearby spatial anchors and can be updated at will by the SDK.

  • XR: Removed: Built-in VR has been removed form Unity core and replaced with the new XR Plug-In system. More information can be found here: https://docs.unity3d.com/Manual/XR.html.

Changes

  • 2D: Add a contextual helper in the SceneView for opening the Tile Palette window when selecting an object which can be edited with the Tile Palette window

  • 2D: Add correct help url for Tile class

  • 2D: Allow user to edit Tile Palette with Brushes if Tile Palette is unlocked and user is in Edit mode when Tile Palette is empty

  • 2D: Remove Tile create asset menu item

  • 2D: Remove unused Reset Bounds button from SpriteSkinEditor

  • 2D: Updated documentation for Bounds/RectInt when setting a minimum position that is greater than the maximum position or vice versa.

  • 2D: Updated optional dependency support for Collections to 0.9.0-preview.6 and Burst 1.3.3 (1255839)

  • 2D: Use layoutGrid for GridBrushEditorBase preview calls

  • Android: Force MSAA support for R11G11B10 on Adreno drivers where we force R11G11B10-support. (1265267)

  • Android: Moved UnityEngine.Android.AndroidDevice from UnityEngine.dll to UnityEngine.AndroidJNIModule.dll

  • Android: Moved UnityEngine.Android.Permission from UnityEngine.dll to UnityEngine.AndroidJNIModule.dll

  • Android: Upgrade Android Gradle Plugin to 3.6.0 and Gradle to 5.6.4

  • Android: Use enableR8 setting in gradle.properties instead of useProguard in gradle template

  • Asset Import: Changed the default material import mode of the model importer from 'Standard' to 'Import via MaterialDescription'

  • Asset Import: Changing TextureImporter in the inspector will no longer affect instantiated Texture2D until Apply/Revert is pressed and a new import is triggered. (1241204)

  • Audio: DSPGraph: Move interleaving of samples in output buffer from output hook implementations to native output hook manager

  • Build Pipeline: Always add a copy of the managed symbols to a Temp/ManagedSymbols folder during a build.

  • Burst: Asserts that are currently discarded no longer discard arguments with potential side effects.

  • Burst: Bump com.unity.mathematics to 1.2.1 version

  • Burst: Output of Debug.Log is temporarily disabled when used in Burst Function Pointers/Jobs to avoid a deadlock on a domain reload. A fix for the Unity editor is being developed.

  • Compute: Changed the result to NaN from 0 when a 0 is divided by 0 (1257445)

  • DX12: Added support for SNorm16 and UNorm16 vertex attribute format in ray tracing shaders. (1263936)

  • Editor: Allow multithreaded graphics in the Linux editor when using Vulkan. (1252387)

  • Editor: As part of gizmo optimizations, we've made many gizmos (e.g. collider gizmos) fade out and turn off when they are small on screen. Cameras typically used for planar reflections (ones with oblique clip projection matrix) now also do not render gizmos.

  • Editor: Configurable Enter Play Mode feature is no longer experimental.

  • Editor: Creating a new GameObject from the Hierarchy view now places the instantiated object at world origin when invoked from a context menu on a Scene. (1179419)

  • Editor: Disabled the maximize option for Preview window when docked (1258262)

  • Editor: It is no longer possible to discard changes on untitled scene. (1111388)

  • Editor: Mark unity remote as deprecated inside ProjectSettings->Editor

  • Editor: Newly created objects in Hierarchy view go into rename mode now ("Rename New Objects" in hierarchy view settings menu can turn this behavior off)

  • Editor: Removed "macOS Color Picker" editor preference setting (that setting only ever partially worked anyway, e.g. it did not support HDR colors).

  • Editor: Removed 3D With Extras template

  • Editor: Removed Asset Store integration from the Project Browser. (1240939)

  • Editor: Revert reintroduction of OnDestroy/Awake calls for ExecuteAlways scripts when we enter Play Mode with the Scene Reload disabled.

  • Editor: The Position handle now follows mouse movements more precisely. (1217150)

  • Editor: Updated com.unity.ide.rider package to version 2.0.7 as verified.

  • Editor: Updated interaction mode labels and tooltips.

  • Editor: When calculating an object's bounds for the Rect tool, GameObjects with a MeshFilter but no MeshRenderer are now included.

  • GI: LightingSettings asset is only created when saving an upgraded project

  • GI: New projects created with the 3D template will now support baked light cookies by default.

  • GI: Unlock the maximum number of bounces supported by the lightmapper, making it closer to reality and thus giving more artistic control.
    We also made the UI more readable using the new labels "min bounces" and "max bounces", instead of "russian roulette start bounce" and "bounces".

  • GI: Updated Open Image Denoise to Clang compiled binary instead of ICC, This fixeda Rosetta emulation issue on a Mac.

  • Graphics: Errors are now logged and draw is skipped when using CustomRenderTexture with an incompatible shader and Vulkan API. (1263116)

  • Graphics: Exposed mesh function to set UV Distribution metric (for procedurally generated meshes with mip streaming) (1248390)

  • Graphics: Update embedded graphics packages (srp / vfx / shadergraph) to 8.1.0

  • iOS: Launch Images are no longer supported, as per new Apple guidelines

  • iOS: Removed OpenGL ES support on iOS/tvOS

  • Kernel: Native allocators now use slightly large blocks to avoid the more costly overflow allocations that go directly to system memory. This will cause a very slight increase in initial memory usage, but will avoid some spikes in performance

  • License: Updated the output message after a return license request timeouted. (1146162)

  • macOS: macOS 10.13 is now the minimum OS requirement for the MacEditor and MacPlayer (1263013)

  • Mobile: Adaptive Performance - Fix Analytics system error with unloaded subsystem.

  • Mobile: Adaptive Performance Samsung Provider - GameSDK 3.2 has a different behaviour when setting frequency levels and warning level 2 (throttling) is reached and you are always in control of the CPU/GPU level.

  • Mobile: Adaptive Performance Samsung Provider - GameSDK 3.2 uses a wider range of temperature levels and maximum temperature level is changed to level 10.

  • Package Manager: Added a General Preference option to allow customizing the log level used by the Unity Package Manager for the Editor.log and upm.log files. This preference is saved and re-used across sessions, and it is overridden by the effects of the -enablePackageManagerTraces command-line argument.

  • Package Manager: Added the UnityEditor.PackageManager.Client.LogLevel property that allows configuring the log level used by the Unity Package Manager for the upm.log file.

  • Package Manager: Automatically add embedded package files to the version control system.

  • Package Manager: Changed path and file format of global configuration file. The configuration file format is now TOML. The old global configuration file path is deprecated. New global configuration should be set in this new file.

  • Package Manager: Changed the design of the items in the Package List to be one line

  • Package Manager: Split All Packages into Unity Registry and My Registries.

  • Package Manager: Updated com.unity.purchasing package to version 2.1.0.

  • Package Manager: Updated the recommended version logic in the Package Item version drop down.

  • Package Manager: Upgraded Cinemachine to 2.6.0. See Cinemachine 2.6 release notes

  • Package Manager: Version conflicts involving a direct project dependency are now reported like any other version conflict instead of being silenced.

  • Player: Added ToString override to PlayerLoopSystem to show system type.

  • Player: Subsystem Registration package now has dependency on 'com.unity.modules.subsystems'.

  • Scripting: Removed boo and unityscript dlls from mono distribution.

  • Scripting: Removed deprecated code from internal tests. NOTE: Does not affect any component of Unity Product

  • Scripting: Strong name assembly references only validate if the assemblies is in different folders.

  • Services: Support in the In-App Purchasing Service Settings for safe migration of com.unity.purchasing to 3.0+ from older versions. The ability to update to the most recent of the legacy versions of In-App Purchasing without migrating is retained. Projects without any versions of this package installed already will only be able to install 3.0+ from the In-App Purchasing Settings user interface.

  • Shaders: Caching Shader Preprocessor is now the default preprocessor used for shaders.

  • Shaders: Relaxed macro expansion rules in Caching Preprocessor for token pasting (## operator) to always use expanded arguments instead of non-expanded arguments.

  • Timeline: ControlPlayableAsset.searchHierarchy (a.k.a. Control Children) now defaults to false.

  • Timeline: Updated default Timeline package version to 1.4.0-preview.3.

  • Timeline: Updated Timeline package to v.1.4.0

  • Timeline: Updated Timeline package to version 1.4.1

  • Timeline: Updated Timeline package to version 1.4.2

  • Timeline: Updated Timeline package version to 1.4.0-preview.7

  • UI: Expand the usable UV to Vector4 instead of the current limit of Vector2 (1208182)

  • UI: original descritopn: Improved case 1233408 @philip:
    UI: Small tweak to the EventSystem.current API to not do unnecessary work when setting current to the already current system.

  • UI Toolkit: Button.RegisterCallback<ClickEvent> and button.clicked now both work interchangeably. Clickable.clickedWithEventInfo will now receive ClickEvent instead of lower-level events like MouseUpEvent/PointerUpEvent or MouseDownEvent/PointerDownEvent.

  • UI Toolkit: Renamed menu entries of UIElements to UI Toolkit.

    • Window/Analysis/UIElements Debugger becomes Window/UI Toolkit/Debugger

    • Window/UI/UIElements Samples becomes Window/UI Toolkit/Samples

    • Create/UIElements/Editor Window becomes Create/UI Toolkit/Editor Window

    • Create/UIElements/USS File becomes Create/UI Toolkit/Style Sheet

    • Create/UIElements/UXML Template becomes Create/UI Toolkit/UI Document
      Remove mentioned of UIElements in the output of the Editor Window script generator

  • XR: Added interface changes for providers to share unresolved MSAA targets between eye texture swap chains resulting in memory savings. (1254408)

  • XR: Keep SRP occlusion mesh data accessible from the CPU

  • XR: Temporarily disabling runtime MSAA level changes if running with Vulkan and XR Management.

  • XR: Unity no longer includes the ARCore client libraries. These libraries are now added to a project by installing the ARCore SDK for Unity (distributed by Google).

  • XR: Updated Oculus XR Plugin package to 1.3.4.

  • XR: Updated Oculus XR Plugin package to 1.4.0.

  • XR: Updated Oculus XR Plugin package to version 1.4.3.

Improvements

  • 2D: 2D Menus reorganised for creation of default assets and GameObjects for better user experience in level white boxing and prototyping

  • 2D: Add custom axis sort to the Tile Palette asset to allow users to show Tiles in the Tile Palette which are sorted by the custom axis.

  • 2D: Add Detect Contiguous Tiles toggle to GridBrush when doing a FloodFill. This changes only contiguous Tiles when enabled, and all Tiles of the same type when disabled.

  • 2D: Add Transform Gizmos for making Transform changes to a Grid Selection for a Scene View

  • 2D: Added ability to specify Corners properties

  • 2D: Added message to inform user on dependent packages when viewing certain sample Scenes in com.unity.2d.animation

  • 2D: Adds a Copy, Paste and Paste All functionality to the Outline and Physics Shape modules for the Sprite Editor

  • 2D: Adjust length of popup and value fields for Weight Slider Window in Skinning Module

  • 2D: Allow reordering of bone order in Bone Influence window. This is to allow fine tuning of bone order when shown in SpriteSkin's Inspector

  • 2D: Allow SpriteShape meshed to be pre computed

  • 2D: Allow users to delete a selection of Tiles with the Delete/Backspace key after selecting Tiles with the Select tool

  • 2D: Improve user experience of FloodFill tool from the Tile Palette when previewing the results of FloodFill.

  • 2D: Improved deformation performance when Collection and Burst package is installed

  • 2D: Improved Memory Allocations

  • 2D: Improved SpriteSkinEditor UI

  • 2D: Reduce memory used for Automatic Slicing of Sprites. (1263213)

  • 2D: Repaint Tile Palette when making changes to a Grid Selection for a Tile Palette

  • AI: Add tooltips to Navigation window and related components (970778)

  • Android: Do basic Application.genuine implementation, where it would check if package name set in Player Settings matches with the one acquired at runtime.

  • Android: Documentation clarified for Application.targetFrameRate behavior on mobile devices.

  • Android: Enable support for Light Probe proxy volumes when using OpenGL ES 3

  • Android: Framerate will be decided automatically when optimized frame pacing is enabled and vsync is disabled

  • Android: Improved logging when trying to find a plugin that is missing. (1268172)

  • Android: Moved noCompress settings from launcher project to unitylibrary. (1239760)

  • Android: Optimize async texture readback and CopyTexture when using Vulkan on Mali GPUs

  • Android: Print Company Name, Product Name in the log during application start, thus if the game is pirated can be used as additional proof that it's your game

  • Android: Screen.resolutions is filled with supported display resolutions for 4K detection. (1178233)

  • Android: Support target display on Android

  • Android: Support Vulkan backbuffer pre-rotation

  • Android: Supported compressed 3D textures with OpenGL ES 3.1

  • Android: Update Android Logcat package version to 1.1.1

  • Android: Update Screen.currentResolution.refreshRate in case the display refresh rate changes

  • Animation: Improved the warning detecting clashes of animated property curve names, so it has fewer false-positives and isn't logged repeatedly.

  • Animation: Some words on Animation Window became localized.

  • Asset Import: Added support for 3DsMax's Simplified Physical Material from FBX files in the Model Importer.

  • Asset Import: Asset previews are now generated as a separate step after importing an asset

  • Asset Import: AssetDatabaseExperimental.SetImporterOverride is now accessible from the inspector in every Assetimporter header by selecting which available Importer Override to apply to this asset.

  • Asset Import: AssetDatabaseExperimental.SetImporterOverride is now accessible from the inspector in every Assetimporter header by selecting which available Importer Override to apply to this asset.

  • Asset Import: Improve uv-unwrapper performance

  • Asset Import: Sped up search using glob syntax for discovering project assets.

  • Asset Pipeline: Added documentation for: GetCacheServerEnableDownload GetCacheServerEnableUpload GetCacheServerNamespacePrefix RefreshSettings

  • Asset Pipeline: Added documentation to CanConnectToCacheServer GetCacheServerAddress GetCacheServerPort IsCacheServerEnabled IsConnectedToCacheServer

  • Asset Pipeline: Added examples to CopyAsset, SetLabels, GetMainAssetTypeAtPath,GetUnusedAssetBundleNames, RemoveUnusedAssetBundleNames

  • Asset Pipeline: Added examples to ExportPackage, GetAssetBundleDependencies, GetAssetOrScenePath, GetAssetPathFromTextMetaFilePath, GetImplicitAssetBundleVariantName

  • Asset Pipeline: Added examples to GetAssetDependencyHash, ReleaseCachedFileHandles, GetCurrentCacheServerIp, importPackageFailed, importPackageStarted, importPackageCompleted, importPackageCancelled

  • Asset Pipeline: Added examples to GetCachedIcon, SetMainObject, ValidateMoveAsset, RenameAsset, Refresh

  • Asset Pipeline: Added examples to GetSubFolders, ImportPackage, IsForeignAsset, IsMainAsset, IsMainAssetAtPathLoaded

  • Asset Pipeline: Added examples to IsNativeAsset, IsSubAsset, OpenAsset, RemoveAssetBundleName, RemoveObjectFromAsset

  • Asset Pipeline: Added examples to IsValidFolder, DeleteAsset, MoveAsset, RenameAsset, MoveAssetToTrash

  • Asset Pipeline: Added examples to WriteImportSettingsIfDirty, GetImplicitAssetBundleName, GetLabels, Contains, ForceReserializeAssets, ClearLabels

  • Asset Pipeline: AssetDatabase.LoadMainAssetAtPath documentation

  • Asset Pipeline: Be less verbose about adb profiler output in the editor log unless necessary

  • Asset Pipeline: Cache server UI icons and design.

  • Asset Pipeline: For source asset dependencies, besides using file hashes, use timestamps for deciding when to reload asset.

  • Asset Pipeline: Moved API documentation from Experimental and Added API examples for:
    GetAvailableImporterTypes
    GetImporterOverride
    SetImporterOverride
    ClearImporterOverride

  • Asset Pipeline: Show more precise information in progress dialog when asset postprocess callbacks take a long time to finish (1228418)

  • Audio: Stop audio previews when Unity loses focus and "Run in Background" is disabled

  • Bug Reporter: Allow setting Bug Reporter defaults for Publicity, CustomerEmail, and whether to exclude project files, in services-config.json.

  • Burst: Added support for External symbols on a platform that required it.

  • Core: Improved Time.deltaTime consistency for Metal graphics API on iOS and macOS

  • DX12: Added support for constant buffers set with the CommandBuffer.SetGlobalConstantBuffer and Shader.SetGlobalConstantBuffer methods in Ray Tracing Shaders. Fixed and improved all the Ray Tracing related Scripting API documentation.

  • DX12: Added support for GraphicsBuffer constant buffers that can be set using the ComputeShader.SetConstantBuffer and CommandBuffer.SetComputeConstantBufferParam

  • DX12: Added support for GraphicsBuffer constant buffers that can be set using the RayTracingShader.SetConstantBuffer and CommandBuffer.SetRayTracingConstantBufferParam

  • DX12: Improve CPU performance when binding ray tracing shaders.

  • DX12: Improve CPU performance when dispatching Ray Tracing Shaders.

  • DX12: Improved CPU performance when building Ray Tracing Acceleration Structures.

  • DX12: On DX12 skin pose buffer update triggers an upload operation from upload heap to default memory resulting in barriers being inserted between compute dispatches, which prevented them from being scheduled concurrently. This PR uses scratch buffer memory for the skin pose buffer thus eliminating the need for an upload operation and the barriers.

  • Editor: Add a command-line "vcsModeSession" argument to set VCS mode for the current editor session only (1226304)

  • Editor: Add Recent Scenes to the File menu in the top toolbar.

  • Editor: Added "Set as Default" option to Hierarchy objects to allow setting a custom parent for objects dragged into the Scene/Hierarchy Windows and objects created via the GameObject menu.

  • Editor: Added a label displaying how many Game Objects are currently selected to the Inspector. (1208698)

  • Editor: Added Pan, Zoom and Blendshape Preview to the Mesh Inspector.

  • Editor: Added shortcuts to copy/paste camera position -- "Scene View/Copy Camera Placement", "Scene View/Paste Camera Placement" and "Game View/Copy Camera Placement" in shortcut settings. No default keys are assigned.

  • Editor: Added support for Ray Tracing Shader (DX12) dispatches information in the Frame Debugger.

  • Editor: Arrays and lists in the inspector can be reorderable now. Use [Reorderable] attribute on your script variables to turn this on.

  • Editor: Arrays and user-written serializable classes & structs can be copy/pasted in the inspector now.

  • Editor: Calculate a ray direction relative to the camera instead of in world space. This should significantly improve precision when interacting with handles far away from the origin. (1178966)

  • Editor: Certain Version Control state icons (Out of Sync, Conflicted, Remote Locked, Remote Delete, Remote Checkout) will be displayed (if enabled in the Project Settings) for prefabs in the Hierarchy.

  • Editor: Ctrl+C on a focused progress dialog in Windows Editor copies the progress text to clipboard.

  • Editor: Editor status bar lower right corner icons have tooltips now.

  • Editor: Game View resolution dropdown for Standalone platform got a better list of default aspect ratios (16:9, 16:10) and resolutions (1920x1080, 1366x768, 2560x1440, 3840x2160).

  • Editor: GradientFields and Gradient editor can now have their color interpreted as linear.

  • Editor: Handles.DrawLine, DrawWireDisc and DrawWireArc functions got an optional "thickness" parameter for drawing thick handles.

  • Editor: Improved inspector performance for large text asset files (1241212)

  • Editor: Improved JobsDebugger performance

  • Editor: Improved performance of scene hierarchy when selecting objects from the project view. (1252528)

  • Editor: Improved progress bar details for texture importing (Crunch compression, cubemap convolution etc.).

  • Editor: Layers 3, 6 and 7 are no longer treated as reserved by Unity. (1264751)

  • Editor: Layouts menu and dialogs got some tweaks! Layout deletion is under a submenu and got a confirmation dialog. Save layout got a confirmation dialog when overwriting an existing layout. Renamed menu item "Revert Factory Settings" to "Reset All Layouts". Layouts dropdown in main toolbar got a bit wider. Save Layout to File now shows the file in file explorer. (479330)

  • Editor: Material preview in the inspector now remembers the last used preview mesh.

  • Editor: Minimize allocations when calculating bounds for the Rect tool.

  • Editor: Move/Rotate/Scale handle improvements! Thicker lines, with user preference for thickness. Indication for which axis would be picked by mouse hover was improved (brighter color and thicker line), as well as increased accuracy of move & scale axes end points picking. Rotation handle arcball rotation outline circle is more visible now. Axis end caps are properly sorted and no longer the further Z axis cap is drawn over the closer X cap. Move tool plane widgets are no longer on the wrong side of the center handle when orthographic camera is used.

  • Editor: Naming scheme option was added to project Editor Settings. One of "Prefab (1)" (default), "Prefab.1" or "Prefab_1", with option for amount of number digits.

  • Editor: Optimized by ~74x the style catalog asset post processing. (1222761)

  • Editor: Optimized Gizmo rendering; now is ~5x faster when many gizmos are visible.

  • Editor: Pressing Frame Selected second time will focus on the object's handle/gizmo.

  • Editor: Project view asset rename & move operations now support Undo & Redo

  • Editor: Release Quick Search 1.5.2 with minor fixes and a bit more performance.

  • Editor: Release Quick Search 1.5.3 with minor fixes and improve tests stability regarding asset store.

  • Editor: Removed redundant preview packages message from the title bar.

  • Editor: Scene view "Shaded Wireframe" mode can work with SRPs now, via ScriptableRenderContext.DrawWireOverlay.

  • Editor: Scene view accepts multiple objects when dragging and dropping

  • Editor: Scene view deselect-click (Ctrl/Cmd) works more intuitively with prefabs containing child objects.

  • Editor: Scroll smoothness in Editor in macOS

  • Editor: Shift+select in various tree view windows (e.g. Hierarchy, Project) extends selection from the previous click now; this is more similar to how Mac Finder or Windows Explorer behaves.

  • Editor: Show asset path breadcrumb bar when the ProjectBrowser window is in One Column mode. (1200880)

  • Editor: Text field for Scripting Define Symbols in ProjectSettings replaced with foldout string array

  • Editor: The "user message" for an assert is now shown on the first line when output, so it shows up directly in the Console view, rather than seeing a general "Assertion failure" message and needing to look at expanded details to find it.

  • Editor: The Open context menu will expand the folders in One Column Layout in Project Browser. (1243843)

  • Editor: Unity no longer writes a UTF8 BOM to new scripts it creates (Assets -> Create -> C# Script, etc). BOM's cause problems with various tools, especially those related to source control, and the original reason for this functionality (bad encoding handling in very old editors) has not been a problem for a long time.

  • Editor: Update Polybrush to 1.0.2

  • Editor: Update settings provider example and doc

  • Editor: Update the documentation of CreateEditor API to indicate that it has to be destroyed explicitly (1250942)

  • Editor: Update to ProBuilder 4.4.0.

  • Editor: Updated Quick Search to 2.0

  • Editor: Updating the UI for Background tasks and Main toolbar.

  • GI: Added support for half float texture format for Light Probe Proxy Volume component. The LPPV inspector has a new option to choose the format of the 3D LPPV texture.

  • GI: Adding API to set/get the LSA on loaded scenes

  • GI: AMD board names shown in the Lighting window GPU device dropdown instead of gfx901, gfx1010 etc.

  • GI: Improved scheduling of lightmaps, light probes and additional probe bakes with with the GPU lightmapper.

  • GI: Improvements to Lighting Settings such as preset support, updated docs and exposure of default settings.

  • GI: Make the update of Light Probe Proxy Volumes components only once per frame and not per camera render since these components are not camera relative.

  • GI: Reduce GPU memory usage when baking large lightmaps with the GPU lightmapper, by baking in smaller tiles in non progressive mode.

  • GI: Removing custom Lighting Settings from 3D template

  • GI: Sped up GI main thread initialization on Editor startup. (1162775)

  • GI: Upgrade Radeon denoiser to use RIF 1.5.1.2. Will not attempt to run on GPUs with less than 4GB of memory, as the AI model doesn't fit on those.

  • Graphics: Added debug names for resources on DX12.

  • Graphics: Added offline processing and direct load of (single mip) CubeMaps straight to GPU memory on Xbox & PS4 (performance optimisation reduces CPU work)

  • Graphics: Adding warning message when using a uv set out of range in the RecalculateUVDistributionMetric C# function

  • Graphics: Color writes during a scriptable render pipeline shadow pass has been disabled to improve performance.

  • Graphics: D3D12 Constant Buffers have been optimized for per pass binding.

  • Graphics: Enabled threaded texture creation on Xbox DX11 to removed hitch. Added support for direct upload of offline processed data on DX12 when threaded texture creation is disabled

  • Graphics: Extended supported types/formats for RWTexture2D when using Vulkan and OpenGL ES

  • Graphics: Fix necessary memory barriers generated when UAVs are bound as read-only on Nintendo Switch.

  • Graphics: Generate warnings when when using CommandBuffer API that is not supported inside a renderpass.

  • Graphics: Improve input validation of RenderPass API

  • Graphics: Improve validation of RenderTexture with bindTextureMS for unsupported formats

  • Graphics: Improved ComputeBuffer data alignment for Metal

  • Graphics: Improved documentation for Texture.allowThreadedTextureCreation

  • Graphics: Improved DX12 async texture loading to fail more gracefully when out of GPU memory

  • Graphics: Improved DX12 performance in cases, where a lot of resources are created per frame.

  • Graphics: Improved error reporting in Ray Tracing shaders interface.

  • Graphics: Improved shader property error messages.

  • Graphics: Improved the error messaging interface when incorrectly setting up texture stacks.

  • Graphics: Improves DX12 performance with hybrid renderer.

  • Graphics: Make use of ASTC decode mode RGB9E5 for ASTC HDR textures when alpha is not used

  • Graphics: Metal: Add changes required for Apple GPU support on a Mac

  • Graphics: Separated ComputeBuffer counters into separate physical buffers to impove data access/alignment for Metal API

  • Graphics: Slightly reduced shader compilation times and application build sizes for GLSL/Metal platforms.

  • Graphics: Support DXT5nm normal maps on Android, iOS, tvOS (1235914)

  • Graphics: Texture creation performance improved for CubeMaps on Metal. Hitches reduced.

  • Graphics: Texture creation performance improved for CubeMaps on PC and Xbox on DX11 and DX12 and PS4

  • Graphics: Texture creation performance improved for CubeMaps on Vulkan. Hitches reduced.

  • Graphics: The D3D12 internal command buffer can now be accessed from a d3d12 native plugin.

  • Graphics: The URP Shadow Pass is now more performant when rendering cascaded shadow maps due to an increase of draw calls per command list.

  • Graphics: There is now an option to delay acquiring the swapchain buffer until it is actually used when rendering in Vulkan.

  • Graphics: VFX Internal performance test marker

  • IL2CPP: Add attribute to avoid runtime performance impact of static constructors

  • IL2CPP: Enable Parallel IL2CPP Conversion as default to improve IL2CPP build performance.

  • IL2CPP: Fix GC performance regression on Android and Linux

  • iOS: Camera.targetDisplay now works with iOS Metal (1171951)

  • iOS: Changed builtin xib launch screens to storyboard

  • iOS: Changed the way we generate version defines in trampoline - now we guarantee that they can be compared numerically and all versions are supported (we were missing defines before for bad reasons) (1244796)

  • iOS: it is now possible to provide different custom storyboards for ipad and iphone

  • iOS: Under some circumstances, interim AA resolve will no longer result in an extra texture copy

  • Kernel: Fix crash when empty filename is passed to AsyncReadManager.Read API

  • Kernel: IJobFor.Schedule (Scheduled as single job) no longer has any unnecessary parallel for access restrictions.

  • Kernel: Reduce job system overhead on Mac

  • Kernel: Reduce main thread overhead of creating job reflection data.

  • Kernel: Refactoring in memory label code which resulting in lowering generated code size.

  • Kernel: Small optimisation for low-level atomic queue container used by the JobQueue

  • macOS: Remove project name in the normal window title bar

  • Mobile: Update Adaptive Performance Samsung Android package to verified version 1.1.1.

  • Mobile: Update Mobile Notification verified package version to 1.3.0

  • Mobile: Update verified package Adaptive Performance and Samsung provider to 1.1.6

  • Mobile: VRR Support

  • Package Manager: - Package interoperability with Unity IAP: the Unity IAP package can now work directly with the UDP Package instead of maintaining its own UDP dll.

    • User permissions can be set at the Project level.

    • UDP Settings: inspector window activated when invoking the asset file; faster load and sync times.

    • General code refinements.

  • Package Manager: Added support for returning enterprise entitlement packages from the PackageManager.Client.SearchAll() method. These packages will now show in the Package Manager UI Unity Registry section when users have the entitlement to use them.

  • Package Manager: Added tooltips to action buttons for a package.

  • Package Manager: Dependency resolution now automatically resolves trivial conflicts.

  • Package Manager: Improved Import/Download buttons visibility.

  • Package Manager: Improved performance of Package Manager metadata requests sent to the registry.

  • Package Manager: Improved project loading time through caching Unity Package Manager state on disk.

  • Package Manager: Improved the install from git url visual in the Package Manager window.

  • Package Manager: Include the Package Manager lock file (Packages/packages-lock.json) in the BugReporter report.

  • Package Manager: Make the error message clearer when the UnityPackageManager program is missing

  • Package Manager: Upgraded Cinemachine to 2.6.1

  • Particles: Add a button to the Particle System UI to identify owning the system, for sub-emitters.

  • Particles: Added a new Depth sorting mode, to sort particles based on their distance to the camera plane. (1207573)

  • Particles: Allow any number of colliders in the Collision and Trigger modules.

  • Particles: Improved performance when using Rigidbody velocity mode. Previously a search for a valid Rigidbody was made every update, we now only perform the search once and cache the result. (1268442)

  • Particles: Removed unnecessary calls to ParticleSystemRenderer::UpdateCachedMesh, to improve performance, particularly when enabling/disabling ParticleSystemRenderers that use meshes consisting of Triangle Strip geometry. (1271169)

  • Physics: Implement visualisers for the articulation body joint limits, both linear and angular ones. Revolute, prismatic and spherical joints are supported.

  • Prefabs: Added asset menu item 'Create Prefab' so it's possible to create and start editing a new Prefab Asset without dirtying the current scene.

  • Prefabs: General prefab editor performance have been improved

  • Prefabs: General prefab editor performance have been improved

  • Prefabs: Improved documentation for PrefabUtility.IsPartOfPrefabAsset and related methods to make it clear loaded Prefab contents in Prefab Mode are not considered part of a Prefab Asset. (1230815)

  • Prefabs: Improved performance in part of nested prefab modification saving

  • Prefabs: Introduced new Prefab Mode related project setting 'Allow Auto Save'. It defaults to true which has the same behavior as in previous versions of Unity. However, when turned off, there is never any Auto Save happening in Prefab Mode in this project and the toggle is not displayed. Unlike the Auto Save toggle itself, which is a per-user setting that carries across projects, the new project setting applies to all users of the project. (1141476)

  • Prefabs: Prefabs with many properties are now faster to load

  • Profiler: Ability to see metadata associated with a profiler sample in Hierarchy View.

  • Profiler: Added ability to specify profiler category for ProfilerMarker

  • Profiler: Aligning Memory and Rendering module detailed panel test with runtime counter names.

  • Profiler: Burst Jobs now have a different color from normal jobs in Unity Profile Timeline view.

  • Profiler: Fixed profiler window not processing small frames immediately when they come to Profiler Window. (1260269)

  • Profiler: Hierarchy and Timeline view no longer display frame data while profiling unless "Live" toggle is pressed, reducing the Editor Overhead while profiling Edit or Play Mode.

  • Profiler: Load icon changed to more clearly read as "Load".

  • Profiler: Optimized Profiler Window chart updates.

  • Profiler: Player Connection: Improved stability of player connection by better handling sending/receive messages and splitting receiving of messages across multiple frames.

  • Profiler: Reduced Profiler Window overhead on th main thread. (1260050)

  • Profiler: Visualize Async Loading flow in Profiler Timeline View

  • Scripting: Add GC-free way to get stack trace in editor

  • Scripting: Added inline documentation, constructors and implicit conversion operators to LazyLoadReference.

  • Scripting: Added locking around tls->frames usage/freeing in the mono debugger. This eliminates some crashes involving memory corruption while using the managed debugger as well as a known hang.

  • Scripting: AtomicSafetyHandle now throws ObjectDisposedExceptions instead of InvalidOperationException when code attempts to access a container after it has been disposed. This mimics behavior of built-in container types.

  • Scripting: Camera.main is much faster to query.

  • Scripting: Ensure crash handler is invoked when an abort or assert is encountered in Mono runtime.

  • Scripting: Fixed and improved the Scripting API documentation for CommandBuffer.DispatchRays and RayTracingShader.Dispatch.

  • Scripting: Implemented switching code coverage without editor restart. Introduce API to enable/disable code coverage.

  • Scripting: Improve performance of memory profiler

  • Scripting: Improved Performance of DefineConstraintsHelper

  • Scripting: Obtain a full callstack when Instruction Pointer is NULL to prevent crash.

  • Scripting: Provide a more detailed error message when a dll fails to load.

  • Scripting: UnityWebRequest.certificateHandler is now invoked for root certificates on Windows

  • Scripting: UnsafeUtility.Malloc will now throw an exception when given a positive alignment value that is not also a power of two. Previously this was only flagged as an assert in debug builds.

  • Scripting Upgrade: Avoid logging potentially misleading message in case that no assembly got successfully updated.

  • Serialization: Improve performance applying Prefab changes to TileMap (1239162)

  • Serialization: Increased the allowed serialization depth to allow larger, more complex data models to be serialized

  • Shaders: #line directives can now be turned on and off via a toggle in Shader and Compute Shader inspectors.

  • Shaders: Caching shader preprocessor now recognises ellipsis (but no variadic macros support).

  • Shaders: Compute shader preprocessed source now has indentation.

  • Shaders: Improved #line directive output for preprocessed source.

  • Shaders: Preprocessed source now ends up in a text file named differently from compiled source.

  • Shaders: Reduced in-Editor memory usage for Compute shaders.

  • Shaders: Shader live link now caches compilation results on disk.

  • Shaders: Shader live link will now build only one shader variant at player build time.

  • Terrain: Improved error messages when parsing BaseMapGen shader passes. (1224162)

  • UI: Add the ability to have wrap around navigation for horizontal and vertical navigation.

  • UI: Add the ability to toggle maskable option from the inspector (property has always been there for API only)

  • UI: Adding secondary list of only graphics that are raycast targets to CanvasRegistery. This prevents iterating over the whole list all every frame

  • UI: Cache .Count access on for loops where throughout UI source code

  • UI: reworked GraphicRaycaster eventCamera implementation to cache some calls for performance

  • UI: UIStruct memory saving by use of bitfields

  • UI: Updated documentation for OnRectTransformDimensionsChange to say when it could be called.

  • UI: updating colorblock to have a static colorblock for default instead of creating new each time

  • UI Toolkit: UI Toolkit can now import FontAsset through USS. (1266414)

  • Universal Windows Platform: Unity will now display warnings in player settings if any of the required icon images are not set saying that the application will fail windows certification because of it.

  • Version Control: Smart Merge (UnityYamlMerge) now sets premerge base to file in correct base values instead of leaving them blank. Blank premerge base values can still be configured - see mergerules.txt for an example

  • Version Control: Updated existing version control icons. Added theme support.

  • Windows: Improved Time.deltaTime consistency for D3D11 graphics API.

  • Windows: Improved Time.deltaTime consistency for D3D12 graphics API.

  • XR: Reduced unnecessary Vulkan backbuffer allocations.

  • XR: Updated Oculus XR Plugin to 1.2.0

  • XR: XR Statistics caches thread-safe stats that only get promoted to 'live' data after a render pass. However a number of data points need to be 'initialized' before we actually render a frame (like Frame Rate).

Features

  • Android: Added more complete support for playing video in addressables and asset bundles. Compressed and in-memory bundles are now supported on Android 9 and newer devices.

  • Animation: Added Animation Rigging package version 1.0.2

  • Asset Pipeline: Added 2 new properties:
    AssetDatabase.GlobalArtifactDependencyVersion
    AssetDatabase.GlobalArtifactProcessedVersion

  • Asset Pipeline: Consistency check of assets using '-consistencyCheck' and when force reimporting through project window.

  • Editor: Add "Enable debugging to all projects" button to "C# Debugger Attached" dialog and made text more descriptive.

  • Editor: Add support for Root Namespace field to Assembly Definition Files. New scripts created inside Unity will have a namespace added to the default template if it is set in the corresponding Assembly Definition File or Project Settings -> Editor -> Project Root namespace for non-Assembly Definition File scripts.

  • Editor: Added -version argument to command line arguments which prints out the unity version to console

  • Editor: Added Editor Tool Contexts, allowing custom tools to override the built-in transform tools.

  • Editor: Added functionality to have snap lines inside Graphview turn on and off in Preferences.
    If enabled, GraphElements in Graph Views (such as Shader Graph) align with one another when you move them. If disabled, GraphElements move freely.

  • Editor: Adds support for Roslyn Reference Assemblies. Skips compilation of assembly references if the metadata for the modified assembly does not change when compiling scripts for the editor. Reference Assemblies are enabled by default, but can be disabled with "Use Reference Assemblies" option in the player settings.

  • Editor: auto_quitter has been renamed to UnityAutoQuitterauto_quitter on all platforms. It is now a native program on MacOS and Linux.

  • Editor: Built-in Visual Studio C# solution generator will now include Root Namespace from Assembly Definition Files in the generated C# project files.

  • Editor: com.unity.editorcoroutines version 1.0.0 is now verified

  • Editor: optionally drag all the edges from a port to another at the same time.

  • Editor: Profile Analyzer (com.unity.performance.profile-analyzer) is now a verified package

  • Editor: Texture arrays (Texture2DArray) and volume textures (Texture3D) can be imported now, from "flipbook" image layouts. Use through the new options in texture import Shape setting.

  • Editor: Update ProBuilder to 4.2.3.

  • Editor: Updated to ProBuilder 4.3.1

  • GI: Add Bluenoise sampling from Eric Heitz and Laurent Belcour SIGGRAPH Talk, see https://eheitzresearch.wordpress.com/762-2/ jira link: https://unity3d.atlassian.net/browse/UR-1291

  • Graphics: Ability to output a CPU event and get it back to the component level

  • Graphics: Add Custom Render Texture API to write your own update loop in C#

  • Graphics: Add ExtensibleCamera that allow to extend a Camera by inheritence.

  • Graphics: Added an experimental ExternalGPUProfiler capture API enables developers to programmatically take GPU frame captures using supported GPU debugging tools.

  • Graphics: Added profiling module for Virtual Texturing to the Unity Profiler to allow users to get performance information about the Virtual Texturing system.

  • Graphics: Added support for importing 16bit per channel integer formats without quantization. This also exposed new TextureFormats R16G16, R16G16B16 & R16G16B16A16

  • Graphics: Adds the option to explicitly evict data in a region; the original invalidate will now keep the original "stale" data on your graphics hardware until refreshed.

  • Graphics: Trilinear filtering support for procedural VT

  • Graphics: Virtual Texturing is now supported on Linux Standalone player

  • Graphics: Virtual Texturing is now supported on Universal Windows Platform.

  • IL2CPP: Add Il2CppEagerStaticClassConstructionAttribute which can be used to avoid overhead associated with static constructors.

  • Linux: VTune integration support is now available on the Linux platform.

  • macOS: Added support for native Apple silicon and macOS Universal 2 builds.

  • Mobile: Adaptive Performance 2.0.0 is now verified.

  • Mobile: Added Adaptive Performance Settings.

  • Package Manager: "Enable Preview Packages" moved in Package Manager Project Settings

  • Package Manager: Add advanced settings for Package Manager in Project Settings.

  • Package Manager: Add dropdown bouton for preview packages in use

  • Package Manager: Add links in package description so users can copy them.

  • Package Manager: Added a UI for users to manage their Scoped Registries from inside the Editor. Also added a popup alert for when Scoped Registries are added to their project from outside that Scoped Registries management UI. The Scoped Registries management UI is automatically opened when the popup shows.

  • Package Manager: Added changelogUrl and licensesUrl as optional properties which can be specified in a custom package's package.json. If specified, will replace the auto-generated changelog and licenses links with the custom URLs.

  • Package Manager: Added user setting for skipping the 'Asset Store has Moved' window. This setting can be enabled from the 'Asset Store has Moved' window itself. If enabled, this setting will cause the Asset Store to be opened directly in the browser when clicking on 'Window > Asset Store', and the user will not see the 'Asset Store has Moved' window again once they close it.

  • Package Manager: Changed Package Details to display full version of package, with tags (i.e. preview). Also, the '(Current)' note has been removed from Release Details of UPM Packages.

  • Package Manager: Distinguish between operation and state errors

  • Package Manager: Http range request.

  • Package Manager: In the Package manager window, the refresh button is now a dropdown button to choose what kind of refresh the user wants to do.

  • Package Manager: Introduced two new environment variables to override user and global configuration files path. UPM_GLOBAL_CONFIG_FILE overrides the default path of the global configuration file. UPM_USER_CONFIG_FILE overrides the default path of the user configuration file.

  • Package Manager: Made console log errors from Package Manager UI clearly specify they are from [Package Manager Window]. Also modified error messages shown in the UI so that they do not prompt the user to 'see console for more details' if no details are logged in the console.

  • Package Manager: Package details for packages installed locally/from tarball now displays the path they were installed from.

  • Package Manager: Split the package Name into the Name and the organization.

  • Package Manager: Updated the Package Manager window visuals with the primary goal to highlight the usage of preview packages.

  • Particles: Added Local and Shape Scaling Mode support when using Mesh Renderer and Skinned Mesh Renderer in the Shape module.

  • Particles: Query which colliders a particle is interacting with, when using the Trigger module

  • Physics: Expose Joint.connectedArticulationBody to be able to link ArticulationBody and Rigidbody hierarchies together with the means of regular Joints

  • Player: Pulling Unity Player logs after test runs as they are useful artifacts.

  • Prefabs: PrefabPostprocessor support

  • Profiler: Added a new Module Editor to support creating custom Profiler modules and visualising user-defined performance counters alongside built-in performance metrics.

  • Scripting: Compile scripts with C# 8.

  • Scripting: Support Roslyn analyzers in Unity projects.

  • Services: Unity Distribution Portal package support now available in the Services Window

  • Shaders: Implemented Shader Livelink support.

  • Shaders: It is now possible to override shader preprocessor on a per-shader basis

  • Shaders: Scriptable stripping support for compute shaders

  • UI Toolkit: Added TwoPaneSplitView control. Link to Jira Epic https://unity3d.atlassian.net/browse/UR-1228

  • UI Toolkit: ThemeStyleSheet asset type added.

System Requirements

For development

OS: Windows 7 SP1+, 8, 10, 64-bit versions only; macOS 10.12+. (Server versions of Windows & OS X are not tested.)

CPU: SSE2 instruction set support.

GPU: Graphics card with DX10 (shader model 4.0) capabilities.

The rest mostly depends on the complexity of your projects.

Additional platform development requirements:
  • iOS: Mac computer running minimum macOS 10.12.6 and Xcode 9.0 or higher.

  • Android: Android SDK and Java Development Kit (JDK); IL2CPP scripting backend requires Android NDK.

  • Universal Windows Platform: Windows 10 (64-bit), Visual Studio 2015 with C++ Tools component or later and Windows 10 SDK

For running Unity games

Generally content developed with Unity can run pretty much everywhere. How well it runs is dependent on the complexity of your project. More detailed requirements:

  • Desktop:

    • OS: Windows 7 SP1+, macOS 10.12+, Ubuntu 16.04+
    • Graphics card with DX10 (shader model 4.0) capabilities.
    • CPU: SSE2 instruction set support.
  • iOS player requires iOS 10.0 or higher.

  • Android: OS 4.4 or later; ARMv7 CPU with NEON support; OpenGL ES 2.0 or later.

  • WebGL: Any recent desktop version of Firefox, Chrome, Edge or Safari.

  • Universal Windows Platform: Windows 10 and a graphics card with DX10 (shader model 4.0) capabilities

  • Exported Android Gradle projects require Android Studio 3.4 and later to build

Changeset:
90b2443a8df1

Third Party Notices

For more information please see our Open Source Software Licenses FAQ on the Unity Support Portal

We use cookies to ensure that we give you the best experience on our website. Visit our cookie policy page for more information.

Got it