Unity 2020.3.38

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.
New to Unity? Get started

Known Issues in 2020.3.38f1

  • AI Navigation Core: NavMesh::Raycast freezes the whole editor in an infinite loop on Application.UpdateScene (UUM-2496)

  • GI: If a user is experience lighting coruption they be may required to reimport due to a fix to which correctly fixes a Uv unwrapping issue (1330830).

  • MacOS: Crash with demangling_unexpected_handler() when rapidly modifying serialized fields (UUM-3310)

  • Scene Management: Scene causes Editor crash when specific Lighting Data Asset is used (UUM-9319)

  • Shadows/Lights: Scene is brighter in Standalone player if it was open in the Editor at build time (UUM-2743)

  • Texture: [Backport] [MacOS] Crash on __pthread_kill when Render Texture has no Depth buffer and Dimension is 3D (UUM-5459)

2020.3.38f1 Release Notes


  • Editor: add editor analytics event tracking for "Refresh access" and "New link..." button click

  • Version Control: Added notification banner on the status bar for live updates


  • Mono: Add support for direct ETW profiler integration on Windows Desktop for managed code, with no plugin required.

  • UI: The TextureImporterInspector will now disable the "sRGB (Color Texture)" toggle for HDR targets instead of silently overriding. (reflected in API docs) (UUM-7553)


  • IAP: # Changelog
    ## [4.3.0] - 2022-06-16
    ### Added

    • GooglePlay - API IGooglePlayConfiguration.SetQueryProductDetailsFailedListener(Action) called when Unity IAP fails to query product details. The Action will be called on each query product details failure with the retry count. See documentation "Store Guides" > "Google Play" for a sample usage.
  • Version Control: Renamed "Invite members to workspace" option to "Invite members to organization"


  • 2D: Fixed case in VirtualRedirectTransfer when loading AssetBundle while entering Play Mode. (UUM-2207)

  • 2D: Mouseclick with Alt/Option on a sprite layer in the Visibility pane does not toggle out of hide state (DANB-67)

  • Android: Blind fix for an issue where executing Android SDK tool command would fail with missing java error. For ex., "Unable to locate a Java Runtime". Even though everything is set correctly in Preferences->External Tools->JDK. Also during the failure, Unity will now print environment variables thus helping identifying such issues in the future. (UUM-2106)

  • Android: Fix overflow of MotionEvent global references (UUM-8438)

  • Android: Fixed an Android audio crash when targeting API Level 31 and running on an Android 12 device. Also fixed an AudioManager.GetStreamVolume exception when targeting API Level 29 or later, which caused the AudioSettings.Mobile.stopAudioOutputOnMute feature to not work correctly, if enabled. (UUM-5652)

  • Android: Fixed building exported Unity project in Android Studio (UUM-520)

  • Android: Fixed Screen.safeArea returning wrong height when building Native app with Unity as a Library. (UUM-515)

  • Editor: FIX: Build process should be quicker to detect scripting backend changes when building to a pre-used folder (1421700) (UUM-1949)

  • Editor: Fixed an issue where certain properties could not be excluded in the TextureImporterInspector. (UUM-3787)

  • Editor: Fixed crash when calling GUIClip.SetMatrix early in the domain reload. (UUM-2217)

  • Editor: Fixes crash during accelerator corruption detection. (UUM-6539)

  • Editor: Replace Premium Expert Help link in Editor Help Menu with a link to Unity Learn (UUM-8297)

  • Editor: SpeedTree: Fix SpeedTreeImporterModelEditor throwing exception on DoMaterialsHaveDifferentShader() call when invalid SpeedTree asset is imported (UUM-6486)

  • Editor: [SpeedTree] Fixed an exception when the user backs off form the 'Search and Remap' dialog in the SpeedTree Material Editor

  • GI: Fix a crash: GetManagerFromContext: pointer to object of manager 'LightmapSettings' is NULL (table index 22)" error when creating a new scene (UUM-9213)

  • GI: Fixed issues with overlapping lights using shadowmask and wide spot angles. (UUM-2761)

  • GI: [GPU PLM] OpenCL shader loading time in new projects has become significantly slower. Fixed regression by speeding up OpenCL shader loading stage by caching binaries in the GICache. (UUM-1350)

  • Graphics: 2D Textures with multiple faces or images now correctly update their hash values when any face/image is changed and not just the first one (UUM-2506)

  • Graphics: Fixed a regression where calling the the Texture2D.Resize method with a Texture format parameter caused the underlying GraphicsFormat to flip color spaces on each call. (UUM-1804)

  • Graphics: Fixed AssetPreviews + texture preview window for ASTCnm/Plain normal maps. (UUM-7833)

  • Graphics: Fixed numerous cases where mini-thumbnails would not match the expected visual look when using linear project color space. (UUM-7833)

  • Graphics: Fixed Single Channel Red mini-thumbnails not actually being red-only. (UUM-7833)

  • Graphics: Fixed undefined behaviour occurring with AssetPreview for Single Channel Alpha texture types. (UUM-7833)

  • Graphics: Shadow casters with different UnityPerMaterial aren't properly SRP Batched. (1421660)

  • Graphics: Switching vsync mode while in a Metal player could sometimes cause a freeze due to the vsync status not syncing correctly before waiting on the frame present - this has been fixed. (UUM-5547)

  • Graphics: The generated mini-thumbnail of TextureGenerationOutput will now properly set its expected stored color space. (UUM-7833)

  • IL2CPP: Avoid a possible crash when a Unity player is unloaded and reloaded. (UUM-2660)

  • IL2CPP: Avoid an stack overflow during code conversion when an attribute constructor uses the attribute itself. (UUM-3907)

  • IL2CPP: Fixed issue where Assembly.GetType() on a type without a namespace could match a nested type with the same name and issue where Assembly.GetType() did not respect the ignoreCase flag for nested types. (1422119)

  • IL2CPP: Fixed leak of internal thread objects that could manifest in a pause on player exit. (UUM-607)

  • IL2CPP: Fixed performance issues in metadata access with thread contention. (UUM-609)

  • IL2CPP: Throw an exception from Buffer.BlockCopy when the destination array has a non-primitive element type. (UUM-3302)

  • IL2CPP: Update zlib to version 1.2.12 for CVE-2018-25032. (UUM-599)

  • IL2CPP: (1411168)

  • iOS: Fixed a bug with the "Force iOS Speakers when Recording" player setting. In addition, a few other iOS Bluetooth audio bugs were fixed. When starting up with Bluetooth headphones connected, audio output used to play through the built-in speakers (which was an error). The list of available microphones was not always correct when connecting / dis-connecting Bluetooth headphones at runtime. Bluetooth microphone input was really choppy. (1387403)

  • Linux: Fixed missing game controller mappings for certain controllers (1384896)

  • macOS: Fix Input.inputString doesn't convert input to the suggestions from IME (1305843)

  • macOS: We now prompt for to save changes even when the window is minimized. (UUM-1914)

  • Mono: Fixed System.Windows.Forms.SendKeys.Send on Windows.

  • Package Manager: 'View documentation' doesn't open an offline documentation when the package is added from a local disk. (UUM-4809)

  • Physics: Fixed Articulation Bodies teleporting to NaN coordinates when changing joint type at runtime (UUM-7418)

  • Physics: Fixed overlap queries missing small convex Mesh Colliders (UUM-6271)

  • Physics: Fixed raycasts missing after moving a lot of objects (UUM-7416)

  • Profiler: Fixed issue where Mesh memory usage was not being updated when applying new MeshData with Mesh.ApplyAndDisposeWritableMeshData. (1377773)

  • Profiler: Fixed profiler not opening the correct version of the documentation. (UUM-4963)

  • Scene/Game View: Adding check before recursion that the gizmo is not already active. (UUM-9157)

  • Scripting: Fix case when double-clicking message wouldn't open the correct file and line. (UUM-897)

  • Scripting: Fixed issues with operation on invalid gc handles. As part of this 2 new asserts are introduced that are triggered when invalid gc handle operations are detected. The operations are skipped when detected to avoid scripting domain / memory corruption. (UUM-906)

  • Shaders: Fixed ddx_fine and ddx_coarse on Vulkan and capable GLCore targets. (UUM-2198)

  • uGUI: Expose RaycastManager.GetRaycasters public for use by users making their own EventSystem (UUM-4409)

  • Universal Windows Platform: Fixed a crash when entering a composition string longer than 64 characters into the IME. (UUM-928)

  • Universal Windows Platform: Fixed Build & Run picking the wrong instance of Visual Studio which potentially doesn't have required components installed to deploy the application. (UUM-931)

  • Universal Windows Platform: Fixed errors when trying to use the System.Web.HttpUtility class on UWP. (UUM-4008)

  • Version Control: Fixed missing references in synced prefabs.

  • Version Control: Fixed not being able to view changesets in a Gluon workspace
    Fixed not being able to insert carriage return in checkin dialog

  • Video: Video player no longer suffers performance issues in windowed mode with external monitor. (1350851)

  • WebGL: Fix video playback to be muted when Audio Output Mode is set to Audio Source and the selected Audio Source is Muted. Also fixed another issue where video clips that browser blocked from autoplaying would not start playing after user interacts with the web page. (1241582)

  • WebGL: Removed 255 character limit for audio file urls. (1327368)

  • Windows: Fixed Screen.currentResolution containing incorrectly rounded refresh rate. (UUM-1512)

  • Windows: Fixed the game window teleporting to another display on certain display setups when switching to exclusive fullscreen mode at resolution that's significantly lower than the display's native resolution. (UUM-1513)

  • Windows: Fixed topmost region of Popup windows not receiving mouse messages. (UUM-5783)

System Requirements

For development

OS: Windows 7 SP1+, 10, 64-bit versions only; macOS 10.13+. (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.13+ 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.13+, Ubuntu 18.04+
    • Graphics card with DX10 (shader model 4.0) capabilities.
    • CPU: SSE2 instruction set support.
  • iOS player requires iOS 11.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

Package changes in 2020.3.38f1

Packages updated


Third Party Notices

For more information please see our Open Source Software Licenses FAQ on the Unity Support Portal