Long Term Support

Unity 2022 LTS provides a stable foundation for projects that are in production or about to ship. Unity 2022.3 LTS release has the same feature set as the 2022.2 Tech Stream release.

We’re committed to supporting 2022 LTS releases with biweekly updates until mid-2024, after which updates will be monthly until mid-2025 (two years after the initial release date). These updates will only cover fixes aimed at improving the stability of the product to enable users to ship their projects.

Unity 2021.3 is now the legacy LTS. It will be updated monthly until it reaches the end of its support cycle in mid-2024.

RSS

Subscribe to our LTS feed and get access to the latest LTS as soon as it's released.

LTS Release 2020.3.48f1

Released:

LTS Release 2020.3.48f1

Released:

End-of-Support Notice

  • Please note that the 2020.3 LTS stream has reached End-of-Support and 2020.3.48 is the final patch version. Please consider upgrading to a more recent LTS. (See Long Term Support) The 2020.3 LTS stream will remain available for installation on the Unity Hub until August 2023.

Known Issues in 2020.3.48f1

  • DirectX12: [macOS] Editor freezes when saving prefab changes in Play Mode if “VSync” is enabled (UUM-30173)

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

  • Metal: [iOS] Rendering freezes when the orientation is changed (UUM-9480)

  • XR SRP: [URP][XR] Performance degradation when comparing Android Quest 2 builds across 2020.3 and 2023.x (UUM-33025)

  • First Person Template: A loading error is displayed in console when the Editor loads the project for the first time. Workarounds are to ignore the error or reload the project.

2020.3.48f1 Release Notes

Improvements

  • Animation: Reduced the number of GC allocations when calling Animator.GetParameter(int index) and generally made it faster.

  • Editor: Animation Events are now organized into sub-menus in the inspector.

  • Graphics: Reduced the time the render thread spends on Profiler.FlushRenderCounters.

  • Multiplayer: Added Netcode for GameObjects 1.4.0.

  • Serialization: Improved performance of restoring managed objects during a domain reload (again!).

  • Serialization: Improved performance of restoring managed objects during a domain reload.

  • XR: Improved GLES3 multiview rendering performance. (UUM-7008)

Changes

  • Package: Added new QoS APIs for specific Relay and Multiplay QoS servers searching and result.

  • Version Control: Changed the icons for Unity Version Control rebranding<br> Changed onboarding workflow.

Fixes

  • 2D: Show apply/revert dialog to user if there are data changes in Sprite Editor Window before domain reload. (UUM-26175)

  • Android: Display Gradle tasks in progress dialog while building to Android. (UUM-31890)

  • Android: Now sets the image shown on unlock on every lock. (UUM-21954)

  • Android: Warn user if both template file and disabled template file exists in project. (UUM-19338)

  • Asset Pipeline: Fixed Editor crash when changing Asset Serialization Mode to Force Binary with the com.unity.multiplayer.samples.coop package installed. (UUM-26417)

  • Build Pipeline: Fixed android build failure issue where were are getting an error message ' build destination path collides with an existing path' when triggered using Ctrl+B (Windows) or Cmd+B (macOS) keyboard shortcut. (UUM-30911)

  • Documentation: Updated TextureImporter documentation regarding settings that are found under TextureImporterSettings. (UUM-23201)

  • DX12: Fixed for samplers resetting to point on streaming texture mips. (UUM-27504)

  • Editor: Enabled Sketchup Importer on Mac ARM platforms.

  • Editor: Ensure GraphicsFence.passed reports consistent results at initialization. (UUM-27598)

  • Editor: Fixed a crash when importing specific FBX files with blendshapes. (UUM-32291)

  • Editor: Fixed an issue that thread marker in Profiler window is lasting whole frame while audio is playing. (UUM-401)

  • Editor: Fixed Editor freezes when clicking Prefab &gt; Select Asset for a scene exported manually with missing information. (UUM-30060)

  • Editor: Fixed inconsistent input field styling in Shortcut Manager's create and rename prompts. (UUM-28290)

  • Editor: Fixed performance issue for looping small clip with root motion extraction. (UUM-6515)

  • Editor: Fixed several problems with speech recognition in apps using Holographic Remoting.

  • Editor: Fixed Timeline performance problem when previewing animated prefab instances. (UUM-28636)

  • Editor: Make reserved key labels in Shortcut Manager more visible on dark skin. (UUM-28295)

  • Editor: Optimized asset import logic to handle large amounts of files located in the same directory. (UUM-17547)

  • Editor: Prevent creation of .meta files in loadable plugin directories (.androidlib, .bundle, .framework, .plugin). (UUM-9421)

  • Editor: Source asset db rebuild and plugin asset reimported to fix inconsistency. (UUM-32565)

  • Editor: Updated Sketchup SDK to 2023.2.

  • GI: Fixed an issue where scene debug visualization modes would look broken when baking multiple scenes together. (UUM-17494)

  • GI: Fixed incorrect fallback to CPU of GPU bake. (UUM-24685)

  • GI: Fixed issue where lightmaps are lost when entering playmode, switching scenes, and exiting playmode. (UUM-29735)

  • GI: Fixed issue with Light Explorer filtering when many lights are present. (UUM-30672)

  • Graphics: Fixed an inspector issue where 2DArray and 3D textures would not report their size on disk correctly. (UUM-28111)

  • Graphics: Fixed an issue where CubemapArrays would hit an assert in certain scenarios. (player build only). (UUM-5464)

  • Graphics: Fixed an issue where EditorUtility.CompressTexture would silently fail for zero-sized textures. (UUM-16270, UUM-31569)

  • Graphics: Fixed bug with Streaming Virtual Texturing throwing a "The transcoded bitstream was invalid" error that was caused by build pipeline bug corrupting virtual texture regions located in virtual texture files larger than 2GB. When using SVT, it is recommended to rebuild your Player's build in order to get the corrected streaming files (GTS and GTP files) in the Streaming Assets folder. (UUM-30987)

  • Graphics: Invalid pass index error messages now include shader name. (UUM-33598)

  • IL2CPP: Fixed a bug where IL2CPP returns an invalid pointer on P/Invoke methods that returns a non-blittable struct by reference. (UUM-20790)

  • IL2CPP: Fixed the bug that referenced assets are unloaded by Resources.UnloadUnusedAssets(). (UUM-26883)

  • iOS: Fixed memory leak when using GL.Clear in MonoBehaviour Update/LateUpdate. (UUM-8457)

  • Linux: Disabled SDL Dynamic API for SDL dependent Platforms except for Embedded and QNX. (UUM-33932)

  • Linux: Fixed Linux IL2CPP builds not producing stack trace. (UUM-26705)

  • Linux: Fixed player crash in FMOD when loading ALSA drivers. (PIA-588)

  • Package Manager: Fixed "See other versions" button not working for preview packages when "Enable Preview Packages" is not toggled. (UUM-28512)

  • Package Manager: Fixed all delayed fields when editing a package in the inspector. (UUM-19658)

  • Particles: Using floats for timers means there is huge precision loss once Unity has been running for a few hours/days. (UUM-30775)

  • Prefabs: Fixed for Prefab instance is not enabled if RevertPropertyOverride is called during OnEnable. (UUM-21119)

  • Shaders: Added macros for passing textures (Cube, 2DArray, CubeArray) around without samplers. (UUM-31858)

  • Shaders: Fixed artefacts caused by conversion of float to half point precision in certain edge cases. (UUM-13334)

  • Shaders: Fixed custom scale and offset vectors not affecting serialised texture scale and offset. (UUM-21301)

  • Shaders: Now using real pass names when compiling shaders for mesh data optimisation. (UUM-15298)

  • Shaders: Shader compilation with debug symbols will no longer use a non-existent file name. (UUM-31851)

  • uGUI: Fixed memory leak when textures get reparented from one scene to another. (UUM-33852)

  • Version Control: Fixed 'Texture2D' does not contain a definition for 'ignoreMipmapLimit' error when installing Unity Version Control on previous Unity Editor Versions<br> Fixed sign in dialog style when waiting for user to complete sign in<br> Fixed NullReferenceException when opening a new project and the user doesn't have a Unity Version Control organization linked to a Unity ID.

  • Version Control: Fixed blurry icons in the Unity Version Control window and toolbar button<br> Fixed Pending Changes tab not always opening its selected item's location in Project window<br> Fixed "Checked-out (changed)" status icon not showing up on Pending Changes tab<br> Fixed issue that prevented new packages from being installed unless user enters play mode.

  • VFX Graph: Fixed a crash when logging an error messages for unexpected buffers.

  • Video: Internal texture queue populated by asynchronous decoding was sometimes being drained from 2 threads. Now serializing access. (UUM-21948)

  • Video: Multi-display rendering is displaying the first camera's view on both displays instead of displaying both camera's views when used with a mobile device. (UUM-13587)

  • Windows: Fixed quoting of the command line arguments. (UUM-21600)

  • XR: Fixed crash or validation error caused by out-of-bounds clear on XR platforms when using Vulkan. (UUM-32721)

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.48f1

Packages updated

Packages added

LTS Release 2020.3.47f1

Released:

LTS Release 2020.3.47f1

Released:

End-of-Support Notice

  • Please note that the end of support for the 2020.3 LTS stream is approaching. 2020.3 will reach the end of support in May 2023 when the last patch release of the stream will be published. We expect the final version to be 2020.3.48. The 2020.3 LTS stream will remain available for installation on the Unity Hub until August 2023.

Known Issues in 2020.3.47f1

  • DirectX12: [macOS] Editor freezes when saving prefab changes in Play Mode if “VSync” is enabled (UUM-30173)

  • 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).

  • iOS: Rendering freezes when the orientation is changed (UUM-9480)

  • Universal RP: [URP] Reflection Probe is black after baking when using the Blit Renderer Feature (UUM-2631)

  • Video: Crash on WindowsVideoMedia::GetFirstReadyTextureTime when focusing GameObject in Tutorial (UUM-21948)

  • Windows: BuildPipeline.BuildPlayer ignores BuildPlayerOptions.locationPathName and attempts to build to the cached folder (UUM-30952)

2020.3.47f1 Release Notes

Improvements

  • Package Manager: Extended support for specifying optional path and revision to Git URLs in SCP format.

  • Shaders: Reduced the time spent in the asset post processing code for shader assets, which speeds-up the import of shaders.

Changes

  • Package Manager: Renamed Web3 category filter in Package Manager Window for My Assets to Decentralization.

Fixes

  • 2D: Fixed sorting of Tiles in a TilemapRenderer when the Sprites of the Tiles in the TilemapRenderer come from different Texture sources and Sprites with large vertex/index counts are rendered first due to batching. (UUM-30749)

  • 2D: Fixed Sprites generated from TextureImporter generates different hashes. (UUM-26790)

  • AI: Fixed inaccurate shape of NavMeshObstacles that prevent agents from avoiding them properly (only in Windows player non developpement builds). (UUM-9814)

  • AI: Prevent game from freezing due to a faulty Raycast operation in the navigation system. (UUM-28701)

  • Android: Fixed an issue where the Accelerometer values are not updated when the ASENSOR_TYPE_LINEAR_ACCELERATION sensor is disabled on certain Samsung devices. (UUM-20754)

  • Audio: Fixed the corrupt audio playing for the first time in the first launch, when audio mixer is assigned at runtime. (UUM-19696)

  • Core: Fixed Transform.GetLossyScale() returning inaccurate results (only in Windows player non developpement builds). (UUM-25239)

  • DX12: Fixed for crash copying sampler descriptors. (UUM-29343)

  • Editor: Bug fix for Shortcuts Manager to catch Shift and Options keypress. (UUM-4083)

  • Editor: Detect asset corruption before uploading to accelerator. (UUM-26502)

  • Editor: Ensuring that shader global values are taken into account when deciding what to rebake. (UUM-27392)

  • Editor: Fixed bug causing warning when reloading script objects.<br> Objects now keep their non-serializable state when reloaded. (UUM-7785)

  • Editor: Fixed handling msaa resolve in Frame Debugger when connected to Meta Quest over display link. (UUM-1552)

  • Editor: Fixed issue when importing FBX files where memory usage grows exponentially with the amount of clips present in the file. (UUM-22047)

  • Editor: Fixed OS key binding exception in ShortcutManager. (UUM-4125)

  • Editor: Fixed shortcut profile delete dialog message overflow in Shortcut Manager. (UUM-28294)

  • Editor: Make Light Probes be affected by back-facing triangles when baking with the GPU Lightmapper. (UUM-7699)

  • Editor: Only change file status flags with chflags on OSX if the requested flags differ from actual. (UUM-26616)

  • Editor: Prevent depth resolve if camera doesn't have depth buffer. (UUM-22019)

  • Editor: Video: Fixed a crash when changing the source URL of a video player in Android. (UUM-20661)

  • Editor: [WebRequest] Fix curl refcount leak in TransportCurl.

  • GI: Fixed an issue where lightmaps would be swapped when entering playmode when the "Reload Scene" option is disabled. (UUM-21437)

  • Graphics: Fixed an issue that VSync doesn't turn off when changing the quality in the Player from "High Fidelity" to "Performant". (UUM-17522)

  • Graphics: Fixed glitches on macOS with deferred and materials not supporting deferred. (UUM-21567)

  • Graphics: Fixed ScreenCapture.CaptureScreenshotAsTexture result image being empty when using Vulkan graphics API. (UUM-26409)

  • Graphics: Product name will now be used as application name when creating Vulkan instance. (UUM-25486)

  • IL2CPP: Fixed a potential cpp file name collision when 2 assembly names differ only by a number at the end of their name. (UUM-27951)

  • IL2CPP: Fixed compilation error on a Reverse P/Invoke method that has a parameter that is pointer to a generic instance type. (UUM-27026)

  • IL2CPP: Fixed InvalidCastException is thrown when serializing jagged arrays using BinaryFormatter. (UUM-23156)

  • IL2CPP: Fixed race condition when creating generic class metadata. (UUM-26516)

  • Kernel: Fixed unstable test ThreadSafeLinearAllocator AllocDealloc_On10Threads_DoesNotCrash. (UUM-20607)

  • License: Fixed an issue that the Editor quits when activating ULF license and license is already there. (UUM-31031)

  • Linux: Fixed editor and runtime crash when certain controllers connected. (UUM-29806)

  • Linux: Fixed Mouse position is incorrect when playing build on a multiple monitor setup in full screen mode. (UUM-26497)

  • Mono: Removed unused hardcoded credentials from web config file. (UUM-21711)

  • Networking: UnityWebRequest: Fixed a crash when texture download receives bogus data that does not decode. (UUM-28816)

  • Package: - Android SDK Level 33 (Tiramisu) support now available.<br>

    • Added necessary post notification permission to manifest.<br>
    • Package will now ask for permission during initialization if required.<br>
    • External Dependency Manager for Unity (EDM4U) and Mobile Dependency Resolver (MDR) support now available. When either is installed:<br>
    • A new PushSDKDependencies.xml file is generated for them to use.<br>
    • InsertPushNotificationDependenciesIntoGradleScript will not run to prevent duplication from gradle.<br>
    • Fixed errors appearing in the Editor Play Mode due to platform specific classes instantiating.
  • Package Manager: Fixed an issue where a project with a large number of git dependencies would have resolution errors with error code 429 (Too Many Requests). The number of concurrent requests is 6 by default, but can be changed by setting the UPM_GIT_MAX_CONCURRENT_COMMANDS environment variable. (UUM-6049)

  • Package Manager: Fixed an issue which prevented starting UPM when a package.json file containing &quot;type&quot;: &quot;module&quot; was present on any of the ancestor directories. (UUM-18512)

  • uGUI: Added the Min and Max conversion causing whole number sliders to conflict with the value being displayed against the value being set when dragging. (UUM-15922)

  • uGUI: Fixed an issue that "NullReferenceException" error is thrown when entering the Play Mode with &gt;=2 open Inspectors and Canvas GameObject is selected. (UUM-1510)

  • uGUI: Instantiating a Selectable under a CanvasGroup now sets the correct interactable state. (UUM-27611)

  • Video: Fixed crashes when changing the source URL on some specific devices. (UUM-29011)

  • Windows: Fixed for incorrect display names of certain subset of keys. (UUM-22694)

  • Windows: Fixed IME text input not being reported appropriately when users clicks away while using an IME, with the input system. The characters would be reported multiple times. (UUM-24734)

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.47f1

Packages updated

LTS Release 2020.3.46f1

Released:

LTS Release 2020.3.46f1

Released:

Known Issues in 2020.3.46f1

  • 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).

  • Universal RP: [URP] Reflection Probe is black after baking when using the Blit Renderer Feature (UUM-2631)

2020.3.46f1 Release Notes

Features

  • Package Manager: Added Web3 as a Filter Category in My Assets.

Improvements

  • Editor: Improved performance of Transform.Find() API especially when working with large numbers of children.

Changes

  • Version Control: Updated branding from "Plastic SCM" to "Unity Version Control"<br> Improved offline experience by disabling the plugin when there is no internet connection.

Fixes

  • Android: Fixed Screen.SetResolution when using split-screen and Screen.orientation changes. (UUM-19019)

  • Asset Pipeline: Fixed indeterministic output for any asset containing script types. (UUM-22077)

  • Build System: Fixed BuildPipeline issue for Android platform which asks for a name and directory even when it has the last saved location details, when triggered using Ctrl+B (Windows) or Cmd+B (macOS) keyboard shortcut. (UUM-19897)

  • Core: Fixed an issue that the asset import workers will not inherit open handles from the main editor causing trouble rebinding network sockets. (UUM-939)

  • Editor: Added restriction to SetParent() to prevent crash. (UUM-12399)

  • Editor: Avoid GC deadlock in AndroidJavaProxy. (UUM-15968)

  • Editor: Fixed a crash on UpdateSharedDataSubMeshVertexRange when importing a SpeedTree file. (UUM-25371)

  • Editor: Fixed a regression that changed the default behaviour of animators on disabled. (UUM-27229)

  • Editor: Fixed an issue so that the macOS Player no longer contains an empty area gap on each vertical side of the screen when rendering fullscreen on Macs with a notch. (UUM-12632)

  • Editor: Fixed an issue to block the ability to apply components marked with HideFlags.DontSaveInEditor to Prefab. (UUM-21110)

  • Editor: Fixed an issue to copy hideflags to the cloned object when instantiating a GameObject. (UUM-22863)

  • Editor: Fixed Camera.stereoEnabled when SRP is used and fixed the Camera.stereoSeparation value.

  • Editor: Fixed compute shaders in editor to work independent from re-imports. (UUM-20091)

  • Editor: Fixed editor crash when trying to build a project with corrupt compute shaders. (UUM-25488)

  • Editor: Fixed issue where pinvoking into a native mono API on Linux would not work. (UUM-27773)

  • GI: Fixed a display issue and now only one GPU is available to select as the "GPU Baking Device" when multiple identical GPUs are installed. (UUM-15155)

  • GI: Fixed an issue where emission color was erroneously reused for different renderers using the same material when they have similar lightmap UVs. (UUM-2771)

  • GI: Fixed the help link at the top of the Lighting Window. (UUM-25787)

  • GI: Make GPU lightmapper detect Intel IRIS Xe MAX GPU with 4GB memory. (UUM-2216)

  • Graphics: Fixed a bug with Cubemap.GetPixel(CubemapFace face, int x, int y) not passing its parameters correctly. (UUM-26230)

  • Graphics: Fixed GraphicsFenceType not being set correctly from CommandBuffer.CreateGraphicsFence. (UUM-11450)

  • Graphics: Fixed particle system rendering corruption. (UUM-21106)

  • Graphics: Throw an ArgumentNullException if null is passed in as a parameter to Unwrapping.GeneratePerTriangleUV. (UUM-4614)

  • Linux: Fixed Linux Editor ignoring SIGTERM signal. (UUM-24705)

  • macOS: Fixed Display systemWidth and systemHeight being wrong until window is moved to another display. (UUM-501)

  • Mobile: Fixed the touch reset in device simulator when unity remote is disconnected. (UUM-6667)

  • Scripting: Fixed an issue where the API updater was not able to apply changes to internal packages when the project controlled by Perforce. (UUM-16373)

  • Scripting: Fixed possible Editor hang while it waits for AssemblyUpdater when importing assemblies. (UUM-7944)

  • Serialization: Fixed Binary2Text to handle complex serialized reference scenario. (UUM-1930)

  • uGUI: Added the slider's direction property not marking the scene dirty once this is changed when in prefab's isolation/context mode. (UUM-20875)

  • uGUI: Fixed an issue that the Physics2DRaycast will now use SortingGroups when determining the sorted order of its results. (UUM-19833)

  • uGUI: Fixed CanvasRenderer color reset on Clear. (UUM-3527)

  • UI Toolkit: Fixed some memory Leak in UI Toolkit. (UUM-16365)

  • Video: Fixed an issue to better support URLs without extension by the VideoPlayer. (UUM-15705)

  • Video: Fixed error when adding file:// to point at a local file in the VideoPlayer on Android. (UUM-16166)

  • Windows: Fixed a potential crash during Windows Player cleanup. (UUM-25383)

  • Windows: Fixed Alt + Enter does not scale resolution/aspect ratio when going from windowed to fullscreen mode. (UUM-16362)

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.46f1

Packages updated

LTS Release 2020.3.45f1

Released:

LTS Release 2020.3.45f1

Released:

Known Issues in 2020.3.45f1

  • Asset Importers: The Editor hangs while opening a project when importing fbx assets (UUM-26676)

  • 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).

2020.3.45f1 Release Notes

Improvements

  • Multiplayer: Added Netcode for GameObjects 1.2.0.

API Changes

  • Apple TV: Added: identifier for 3rd generation Apple TV 4K.

  • Editor: Added: Component.GetComponentInParent(Type t, bool includeInactive) method to match GameObject. (UUM-2199)

  • iOS: Added: identifiers for iPad models released in 2022.

  • Scripting: Added: New Object.FindFirstObjectByType() and Object.FindAnyObjectByType() functions added as potentially faster alternatives to Object.FindObjectOfType(). These new functions let you decide whether you must have the first (lowest InstanceID) object found or if any instance is adequate. In the latter case the function can be many times faster as no internal sorting is required. See the scripting documentation for both functions for more details.

  • Scripting: Added: New Object.FindObjectsByType() function added as a potentially faster alternative to Object.FindObjectsOfType(). This new function gives users the choice whether or not to perform the expensive sorting by InstanceID on the returned collection of objects rather than having it always performed wasting time when unnecessary. See the scripting documentation for Object.FindObjectsByType() and Object.FindObjectsOfType() for more details.

  • Version Control: Removed: Collab and its dependency from the package.

Fixes

  • 2D: Added proper manual URL for GridSelection. (UUM-20223)

  • 2D: Fixed a crash when there is an invalid Sprite on a Tilemap and a TilemapRenderer tries to bind the invalid Sprite to a Sprite Atlas. (UUM-19275)

  • 2D: Fixed rendering of GameObjects in a Tile Palette window when a Scriptable Render Pipeline is used. (UUM-22035)

  • AI: Fixed an issue that passage was blocked through seemingly valid polygons after an obstacle carved the NavMesh nearby. (UUM-8240)

  • Android: Fixed build failing when app bundle option is enabled and output file has no extension. (UUM-10941)

  • Android: PermissionCallbacks.DeniedAndDontAskAgain is no longer invoked on Android 11 and later. Use Denied instead on all versions. (UUM-20936)

  • Asset Bundles: Fixed issue where "Failed to decompress data" error occurs when loading bundle. (UUM-6639)

  • Asset Pipeline: Elided asset import paths using ellipsis on the import dialogue if the path length exceeds maximum text width. (UUM-3657)

  • Audio: Updated FMOD's FLAC from version 1.2.1 to 1.3.4. This fixes an issue identified by our application security team. (UUM-400)

  • Build Pipeline: Fixed crash when building ScriptableObject asset in Resources folder, where source filename did not match the class name. (UUM-21886)

  • Build Pipeline: Fixed static batching sorting to ensure deterministic build results. (UUM-11427)

  • DX12: Fixed a crash observed in e.g. HDRP sample project. (UUM-20176)

  • Editor: Camera relative culling options have been added to the Graphics section in Project Settings. This will potentially alleviate light popping issues due to lack of precision when the objects or lights are far from the origin. Enabling the camera relative culling setting for lights will potentially introduces issues for objects or lights that are far from the camera origin. (UUM-7551)

  • Editor: Fixed a memory leak which would manifest when loading then unloading scenes additively. (UUM-18684)

  • Editor: Fixed an Editor crash when calling API's to show modal dialogs while -drawRect is in progress. (UUM-2293)

  • Editor: Fixed an issue that UI Elements property animations, as well as scheduled items, asynchronous tasks and Update() callbacks are now updated as expected when a modal editor window is opened. (UUM-1695)

  • Editor: Fixed an issue that undo skips a value when used on values with [CustomEditor]. (UUM-16740)

  • Editor: Fixed an issue that VideoPlayer.width and height return 0 instead of expected values. (UUM-1899)

  • Editor: Fixed an issue to ensure scene view outline render uses the attributed main texture property name rather than the default name. (UUM-20416)

  • Editor: Fixed case where SetParent allowed setting transforms as parents when they are persistent. (UUM-12399)

  • Editor: Fixed determinism issue with ModelImporter where the current scene root count affects import results. (UUM-1846)

  • Editor: Fixed layout serialization logic: we now discard views that are not properly initialized. (UUM-21599)

  • Editor: Fixed use-after-free in macos menu handling. (UUM-22680)

  • Editor: Improved error message when an incompatible mesh is used with skinning code. (UUM-13268)

  • Editor: OpenSSL updated to 1.1.1s. (UUM-18983)

  • GI: Cached the result of GetLightmapDecodeValues() to make it faster. (UUM-1943)

  • GI: Fixed an issue where Enlighten RTGI schedules material updates indefinitely when animating the emission color of an emissive mesh renderer. (UUM-10037)

  • GI: Fixed baked lighting on terrain holes and better performance. (UUM-1797)

  • GI: Fixed issue where baking a single reflection probe could result in the wrong cubemap being associated with the wrong probe. (UUM-20194)

  • Graphics: Fixed a crash by preventing race condition when opening app from floating icon state on Android. (UUM-576)

  • Graphics: Fixed Texture2D.UpdateExternalTexture not working on Vulkan. (UUM-20405)

  • Graphics: Improved dynamic batching of unlit shaders.

  • IL2CPP: Fixed Monitor.IsEntered returning true when the monitor was entered on a different thread than the current thread. (UUM-22329)

  • iOS: Fixed iOS wrong orientation output when in split view mode. (UUM-17545)

  • Linux: Fixed SystemInfo.batteryStatus and SystemInfo.batteryLevel does not work on Linux Laptops. (UUM-16083)

  • Mono: Fixed an issue to use a relative path to the gdiplus dynamic library in the dllmap entry in the config file. (UUM-20719)

  • Package Manager: Added security anchor to the Scoped Registry's "Read more" link in project Settings. (UUM-25262)

  • Particles: Fixed a crash caused by Particle EmissionModule::Transfer handling of bursts array. (UUM-8886)

  • Particles: Fixed particle rendering from command buffers. (UUM-16501)

  • Physics: Fixed a crash that happened when resetting the mass properties of a disabled articulation body. (UUM-22526)

  • Profiler: Fixed sorting order in Show Related Objects panel to be numerical instead of alphabetical. (UUM-1950)

  • Scene/Game View: Fixed Gizmos Icons not showing. (UUM-20432)

  • Scene/Game View: Fixed overlapped UI elements not being picked based on the order they are rendered. (UUM-18939)

  • Search: Shared the same search debouncing threshold with the project browser and the quick search window. (UUM-1937)

  • uGUI: Fixed UI Components where the test is not getting displayed after scrolling in Playmode. (UUM-1823)

  • UI Toolkit: Added animated drag and drop support to ListView. Use reorderMode property. (UUM-2201)

  • Video: Fixed an issue that the first video's frame is drawn after some time when the H.264 B-Frames video is used. (UUM-819)

  • Video: Fixed Video Player crash/malfunction on Android versions less than 9. (UUM-1843)

  • Video: Fixed virtual camera not playing due to DevicePath missing. (UUM-3367)

  • XR: Fixed XRSettings.gameViewRenderMode does not work in SRPs. (UUM-1963)

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.45f1

Packages updated

Pre-release packages added

LTS Release 2020.3.44f1

Released:

LTS Release 2020.3.44f1

Released:

Known Issues in 2020.3.44f1

  • 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).

2020.3.44f1 Release Notes

Improvements

  • Core: Improved internal handling of 8bit types, which among many other things improves the performance of AssetDatabase.FindAssets.

  • Editor: Improved performance of Handles.DrawAAPolyLine.

  • Profiler: Reduced the performance cost of drawing charts in the profiler.

Fixes

  • Fixed Autodesk FBX and SketchUp SDK vulnerabilities. (UNITY-SEC-JAN-2023-1)

  • DX12: Fixed stalls in asynchronous scene loading with a large number of reflection probes. (UUM-20766)

  • Editor: Fixed a crash when a window is closed during EditorWindow.OnLostFocus. (UUM-12434)

  • Editor: Fixed crash issue with very large project import when the amount of descriptors grows unusually high. (UUM-20186)

  • Editor: Fixed EditorWindow maximum size calculations when using a display not at integer scaling. (UUM-12808)

  • Editor: Fixed serious Editor performance issue when running on macOS Ventura. (UUM-19011)

  • Editor: Fixed [OpenGL] Editor goes into infinite loading when the options menu in a Game View window is clicked. (UUM-6030)

  • Editor: Removed mapping of gamepad inputs to keyboard keys on 2020.3 for Android which were causing the input scheme to be keyboard when it should be gamepad. (UUM-20119)

  • Graphics: Added error message when capturing a screenshot into a RenderTexture but passing null for argument. (UUM-7004)

  • Graphics: Ensure LineRenderers and TrailRenderers with only 2 points don't vanish, if the points are close together. (UUM-887)

  • Graphics: Fixed a deadlock that can occur when MasterTextureLimit is changed while a texture has an in-progress upload request. (UUM-16491)

  • Graphics: Fixed for incorrect values in ReadPixel for some graphics formats on DirectX. (UUM-15344)

  • Graphics: Fixed issue where editor would get stuck when importing corrupted FBX models. (UUM-11356)

  • IL2CPP: Added cast support from arrays to interfaces of their reduced type (e.g. int[] -&gt; IEnumerable). (UUM-16304)

  • IL2CPP: Fixed stackalloc to return null for zero length requests. (UUM-15533)

  • IMGUI: Removed "Resolve of invalid GC handle" error occurring when exiting Play mode. (UUM-14969)

  • iOS: Fixed an issue that caused crashes to be reported with a date of 1st January 1970. (UUM-18717)

  • iOS: Fixed metal shader compilation error when using bit-shift operations to create the destination vector from the scalar source. (UUM-16113)

  • iOS: Restored the possibility for ViewController to control status bar appearance. (UUM-6389)

  • Kernel: Moved "Sending message header failed (0)" into internal logs to not spams developers. (UUM-2612)

  • macOS: Fixed new InputSystem mouse position that was not being updated after resolution change. (UUM-10519)

  • Scripting: Removed warning for obsolete platforms when added plugins to plugin folders that contains both obsolete and non-obsolete platforms. (UUM-12246)

  • Shaders: Fixed an incorrect error message when using instanced rendering and replacement shaders. (UUM-20961)

  • Video: Fixed getting buffer overflow warning when increasing playback speed on the VideoPlayer. (UUM-1891)

  • Web: Fixed a bug on Chrome on iOS where the WebGL canvas cannot regain focus after losing it. (UUM-1166)

  • XR: Fixed crash on Quest when using MSAA and moving out of the guardian during startup. (UUM-20525)

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.44f1

Packages updated

LTS Release 2020.3.43f1

Released:

LTS Release 2020.3.43f1

Released:

Known Issues in 2020.3.43f1

  • Asset - Database: Crash on GameObject::ActivateAwakeRecursivelyInternal when opening project (UUM-17633)

  • 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 on __pthread_kill when EditorUtility.OpenFolderPanel is executed (UUM-2293)

  • Vulkan: [Quest2][Vulkan] ReadPixel has Black artifacts when the image is generated (UUM-13241)

2020.3.43f1 Release Notes

Features

  • Editor: Added Enable PlayMode Tooltips toggle to preferences.

Improvements

  • Animation: Optimized AnimationClip size calculation reducing asset load time in the Editor.

  • Animation: Reduced the time required to load AnimationClip instances.

  • Editor: Improved performance of rendering the Project Settings. It would previously repeatedly query all objects loaded into the editor, which meant that operations that load assets into memory (entering playmode) would make the Project Settings unusable slow.

  • Graphics: Increased the maximum Async Upload Buffer Size to 2047 MB and updated docs.

  • Version Control: Added offline mode toggle for smoother offline experience.

  • Video: Report error only when the user uses MediaFoundation directly.

API Changes

  • Graphics: Added: SystemInfo.computeSubGroupSize API, allows users to query the size of the compute thread group that supports efficient memory sharing on the GPU.

  • Graphics: Added: SystemInfo.maxTexture3DSize API, allows users to query the largest 3D Texture size that the graphics hardware supports.

  • Graphics: Added: SystemInfo.maxTextureArraySlices API, allows users to query the maximum number of slices in a Texture array that the graphics hardware supports.

Fixes

  • 2D: Fixed error when a Tile asset with an instanced GameObject is removed from the Tilemap during a Collider2D.OnCollision***2D event. (UUM-15455)

  • 2D: Fixed Sprite Mode field is empty upon changing Texture Type to Sprite in TextureImporter. (UUM-16278)

  • 2D: Fixed Stencil broken when rendering sprites with GPU instancing on. (UUM-15295)

  • Android: Fixed error messages when hideInput is enabled in TouchScreenKeyboard. (UUM-15609)

  • Android: When running Android SDK tool with elevated privileges use JDK bundled with Unity, previous behavior was the SDK tool would use java from PATH env variable, and would fail if there's no java installed and there's no java path set in PATH env variable. (UUM-1942)

  • Animation: Fixed issue where, for some playable graphs, the animated displacement of the animated game object would keep accumulating when the game object was disabled and enabled. The original behaviour can be restored with the keepAnimatorStateOnDisable variable. (UUM-3486)

  • Asset Bundles: Fixed issue where empty folders remained in the cache. (UUM-15702)

  • Core: Dynamic Heap Allocator now holds on to one empty block to increase performance. (UUM-1849)

  • Editor: Fixed an issue to causing too many open files errors when uploading to Accelerator. (UUM-19028)

  • Editor: Fixed an issue to ensure context view context can't be duplicated, copied or cut. (UUM-2655)

  • Editor: Fixed an issue where AssetDatabase.FindAssets would return invalid results when specifying multiple search folders. (UUM-19314)

  • Editor: Fixed Assertion failed on expression: 'offsetIndex != -1' when loading scenes with async light probe tetrahedralization. (UUM-17831)

  • Editor: Fixed Highlighter.Highlight does not disappear when the highlighted element disappears from view. (UUM-3535)

  • Editor: Removed Exported define from SearchService to avoid domain reload. (UUM-18922)

  • GI: Fixed lightprobes getting direct lighting in subtractive mode. (UUM-1344)

  • Graphics: Added safe-guards to prevent GetPixels / GetPixels32 crashes in cases where C# array creation would fail.

  • Graphics: Fixed a bug where ReadPixels would fail for textures larger than 2 GB.

  • Graphics: Fixed crash when creating a RenderTexture with dimensions exceeding the capabilities of the current graphics device. (UUM-5459)

  • Graphics: Fixed cubemap uploads failing on Vulkan, D3D11 and D3D12 for cubemaps larger than 2 GB.

  • Graphics: Fixed GetPixelData / SetPixelData failing for textures larger than 2 GB. Added safe-guards to prevent NativeArray length overflows for the former API.

  • Graphics: Fixed LoadRawTextureData failing when the input NativeArray contained more than 2 GB of data. Added safe-guards to GetRawTextureData. (prevent NativeArray length overflow and C# array creation failure).

  • Graphics: Fixed mapped index debug error when rendering null geometry. (UUM-11997)

  • Graphics: Fixed RenderTexture assets not accepting texture dimensions greater than 20000 in UI, even though they currently can already go up to 32768 in script if the graphics capabilities allow for it.

  • Graphics: Fixed the mip bias setting on DX11. (UUM-879)

  • Graphics: Fixed the Read/Write texture import setting becoming grayed out when "Max Size" was greater than 8192, regardless of actual texture dimensions or size. Replaced with an info box when enabling "Read/Write" that triggers if Unity detects a &gt;512MB texture.

  • Graphics: Prevent a crash on some platforms when the mesh buffers do not exist on a MeshRenderer. (UUM-4150)

  • Graphics: Removed code to get vertex decl for null geometry in DX12. (UUM-1802)

  • Graphics: Texture 3D Preview (Volume / SDF mode) now becomes disabled if Unity detects a potential driver hang risk. Fixed an assert incorrectly being triggered when inspecting external Texture 3Ds.

  • IL2CPP: Allow constrained calls on stackalloc'd buffers. (UUM-14341)

  • IL2CPP: Avoid a possible race condition when the garbage collector is enabled or disabled that could cause it to become permanently disabled. (UUM-16300)

  • IL2CPP: Corrected the behavior of the System.IO.Compression.ZipArchive API. (UUM-14582)

  • IL2CPP: Fixed occasional missing stack traces in Debug.Log's on Windows 10. (UUM-12672)

  • IL2CPP: Monitor.Wait with zero timeout should return false. (UUM-18188)

  • iOS: Fixed SystemInfo returning incorrect values for max compute buffer inputs on Metal. (UUM-1939)

  • iOS: Fixed unity view behavior when in "split view". (UUM-9081)

  • License: Make Unity build deterministic when using floating licenses. (UUM-18489)

  • Linux: Fixed Multi Display mouse/touch input registers incorrectly on Linux Standalone player. (UUM-1569)

  • macOS: Removed developer placeholder text from progress dialog. (UUM-18221)

  • Networking: Fixed race condition between DownloadHandlerTexture and Resources.UnloadUnusedAssets, sometimes cause premature destruction of the texture. (UUM-18044)

  • Package Manager: Package documentation links pointing to private Github URLs can now be opened in browser for non-Unity packages. Additionally, for all packages in general, opening local documentation will fall back on the README file if a documentation.md file cannot be found. (UUM-8337)

  • Package Manager: Package manager window becomes unusable when installing the test framework package 1.3.0. (UUM-20659)

  • Particles: Fixed an emit from script bug when emitting particles from LateUpdate during Edit Mode. (UUM-1920)

  • Particles: Fixed an issue whereby baking a particle mesh after calling mesh-&gt;Clear(false) could throw errors. (UUM-8489)

  • Particles: Fixed SetParticles API sometimes failing to emit the correct number of particles. (UUM-17027)

  • Prefabs: Fixed Rect tool is enabled for root Prefab in Context mode. Now it behaves similar to the other Transform tools. (UUM-16728)

  • Profiler: Fixed a freeze caused when opening profiler data recorded on Editor versions 2019.4.28f1 and prior. (UUM-2234)

  • Profiler: Fixed ProfilerMarker initialization and usage in Release players. (UUM-9541)

  • Profiler: Fixed rendering of certain character sets in CPU Profiler Timeline view. (UUM-16513)

  • Serialization: Fixed performance regression reading yaml objects containing large number of SerializeReference instances which were created prior to 2021.2. (UUM-15130)

  • Shaders: Fixed an incorrect error when drawing an instanced mesh and async shader compilation was enabled. (UUM-13174)

  • Shaders: Fixed reflection probe rendering silently being skipped when the required shader is not found in the player. (UUM-12628)

  • Shaders: Fixed Texture and Vector material properties not supporting displaying tooltips. (UUM-5691)

  • uGUI: Updated the Raycast Target property at runtime even if started as disabled. (UUM-2221)

  • UI Toolkit: Fixed an error when searching in the UI Debugger and UI element has a null name. (UUM-18683)

  • UI Toolkit: Fixed shader bug observable on macOS Ventura with AMD gpus that was causing Graphview (e.g. Shader Graph, VFX Editor) edges to be missing. (UUM-19016)

  • UI Toolkit: Fixed shader bug observable on macOS Ventura with AMD gpus that was causing UIToolkit elements to be missing, clipped or to display incorrectly. (UUM-18978)

  • UI Toolkit: Fixed UIToolkit rendering white squares instead of text or pictures. (UUM-18891)

  • Version Control: Fixed performance issue with FindWorkspaceForPath method called multiple times every frame<br> Fixed performance issue with UI.CooldownWindowDelayer.OnUpdate running on project without Plastic SCM workspace.

  • Video: Removed spike on the main thread when changing the video clip. (UUM-878)

  • Video: Video is displayed with one frame delay when videoPlayer.Play() is called. (UUM-15543)

  • Web: Updated UglifyJS from 2.7.5 to 3.17.0. (UUM-6914)

  • WebGL: Fixed error handling of AudioContext.resume(). (UUM-17803)

  • Windows: When full stack traces are enabled on Windows, we will no longer try to resolve symbols from the symbol server, preventing a potential stall the first time a stack trace is printed. (UUM-11802)

  • XR: Fixed VR rendering stops issue when losing focus.

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.43f1

Packages updated

LTS Release 2020.3.42f1

Released:

LTS Release 2020.3.42f1

Released:

Known Issues in 2020.3.42f1

  • 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: [M1][Rosseta] Editor crashes on mono_arch_patch_callsite when entering the Play Mode (UUM-10411)

  • Vulkan: [Quest2][Vulkan] ReadPixel has Black artifacts when the image is generated (UUM-13241)

2020.3.42f1 Release Notes

Features

  • Input System: Backport for Windows Gaming Input implementation allowing 5+ xbox controllers at the time.

Improvements

  • 2D: [com.unity.2d.animation] The visibility tab now scrolls to the selected bone in the Skinning editor.

  • Animation: Further improvements to animation job performance (esp. some forms of IK).

  • Editor: Reduced the time taken by AssetDatabase.FindAssets when used with a custom filter, speeding up domain reloads and other editor operations that made the poor choice of calling this function in the first place.

  • Graphics: Improved AlphaIsTransparency API docs and tooltip. (UUM-2364)

  • Multiplayer: Added Netcode for GameObjects 1.0.2.

  • Package: Updated version of com.unity.learn.iet-framework to 3.1.1.

  • Package: Updated version of com.unity.learn.iet-framework.authoring to 1.2.1.

  • Profiler: Improved performance of rendering the CPU timeline view when viewing large captures.

Changes

  • 2D: [com.unity.2d.animation] Updated Toolbar and Visibility tab buttons' selection color.

  • Editor: Updated manifest.json to use com.unity.inputsystem package version 1.4.3.

  • Version Control: Changed the "Go back to changeset" option in Changesets tab to "Revert to changeset"
    Improved notification banner appearance.

  • XR: The Oculus XR Plugin package has been updated to 1.13.0.

  • XR: Updated com.xr.sdk.openxr package version to 1.5.3.

Fixes

  • 2D: Fixed regression where GameObjects are not instantiated by Tiles when the Tilemap is not active. (UUM-14293)

  • 2D: Fixed result of the Tilemap.GetCellCenterLocal/World API for a Hexagonal Grid and a large Tile Anchor offset.

  • 2D: Fixed Sprite Editor causes error when editing sprites in playmode. (UUM-12181)

  • 2D: Updated API docs to reflect the behaviour of setting SpriteRenderer.size property. (UUM-13795)

  • 2D: [com.unity.2d.animation] Fixed an issue where the Sprite Skin editor would throw an exception if Sprite Renderer doesn't have a Sprite assigned to it.

  • 2D: [com.unity.2d.animation] Fixed IK Manager 2D's inspector slow downs.

  • Android: Fixed crash if Java proxy is invoked at the same time as Unity is quit. (UUM-15968)

  • Android: Fixed for permissions request hang in pre-marshmellow (Android 6). (UUM-15567)

  • Android: Fixed infinite loop when requesting for runtime permission that is automatically rejected by the OS. (UUM-15923)

  • Android: InputView is not clickable when isInputFieldHidden AND !mConsumeOutsideTouches. (UUM-16292)

  • Android: Used fixed instancing batch size on PowerVR GPUs on Android with OpenGL ES to avoid long compile times in shader warmup. (UUM-739)

  • Android: Workaround for crash on many PowerVR based devices. (UUM-7782)

  • DX12: Fixed single frame flicker which can occur when streaming textures. (UUM-15646)

  • Editor: Fixed an issue where TextureImporter.GetPlatformTextureSettings would not perform fix-up on the platform string argument correctly. (UUM-15361)

  • Editor: Fixed gizmo rendering of a selected area in a Hexagonal Grid with a non-zero Z position. (UUM-11308)

  • Editor: Fixed Mac Editor crash that happened in multi-scene builds that were using BuildOptions.DetailedBuildReport. (UUM-1964)

  • Editor: Fixed the 'texture scheduled for reimport during Refresh Loop' error when importing SpeedTree assets with color textures. (UUM-9835)

  • Editor: Frame Debugger: Fixed an issue where the window would constantly refresh when debugging a remote device. (UUM-4096)

  • Editor: Installing Linux mono and IL2CPP support on mac will no longer keep only the most recently installed of the two. (UUM-1696)

  • Editor: [SpeedTree] ExtraTexture texture is no longer marked sRGB (Color Data) when imported with a SpeedTree asset. (UUM-10912)

  • GI: Added proper clamping of Lightmap Streaming Priority in Player Settings window. (UUM-10016)

  • GI: Fixed an issue where environment lighting is missing from player builds when the scene hasn't been baked. (UUM-2743)

  • GI: Fixed failing assert by relaxing precision requirement in Ray's IsNormalized check. (UUM-2787)

  • Graphics: Fixed an issue where creating SparseTextures with certain TextureFormats could crash Unity, even though the equivalent GraphicsFormat is marked as unsupported for SparseTextures. (UUM-7671)

  • Graphics: Fixed an issue where SystemInfo.IsFormatSupported((My GraphicsFormat), FormatUsage.Sparse) would always return false on Metal, even if the requested GraphicsFormat actually is supported. (UUM-7671)

  • Graphics: Fixed an issue where the D3D11 WARP driver would crash when creating a SparseTexture with the BC1/BC4 GraphicsFormats. (UUM-7664)

  • Graphics: Fixed an issue where using TextureFormat.YUY2 / GraphicsFormat.YUV2 with a SparseTexture would crash on Metal. (if sparse textures are supported). (UUM-7671)

  • Graphics: Fixed BatchRendererGroup TempJob memory leak in special rendering situations like HDRP AOV rendering. (UUM-16733)

  • Graphics: Fixed bug where in some situations the AsyncUploadBuffer was not persisting even when QualitySettings.asyncUploadPersistentBuffer was set to true. (UUM-15961)

  • IL2CPP: Do not inflate RGCTX for types and methods with non-inflated generic parameters. (UUM-6057)

  • iOS: Added support for the Swift Remote Packages in XCode project API. Added PBXProject API to add to references to them, namely AddRemotePackageReferenceAtBranch, AddRemotePackageReferenceAtRevision, AddRemotePackageReferenceAtVersion, AddRemotePackageReferenceAtVersionUpToNextMajor, AddRemotePackageReferenceAtVersionUpToNextMinor, AddRemotePackageReferenceWithVersionRange. Also added way to add framework from the remote package with AddRemotePackageFrameworkToProject. (UUM-15082)

  • Kernel: Fixed AssertOnRecursiveCall with tests. (UUM-13234)

  • Linux: Fixed "Not Responding" dialog window opens up in the Player when the splash screen duration is long. (UUM-1907)

  • Linux: Fixed New Input middle mouse button clicks registers scrolling. (UUM-14359)

  • Linux: Fixed scrolling with the scroll wheel is slower on builds when using the New Input System package on Linux Standalone. (UUM-12564)

  • Linux: Fixed second cursor appearing when toggling between hardware and software cursor modes on Standalone player. (UUM-1594)

  • macOS: Fixed duplicated keys in Input.inputString. (UUM-16427)

  • Package Manager: Fixed an issue where .unitypackage dependencies exported from an older editor were not updated when importing in a newer editor. (UUM-15081)

  • Package Manager: Removed confusing package type in the inspector. (UUM-1837)

  • Particles: Fixed invert culling api when used with Particle Systems. (UUM-890)

  • Physics: Fixed ArticulationBody indices not matching when using methods like GetJointPositions and GetDriveTargets. (UUM-1805)

  • Physics: Fixed ArticulationBody SetDriveTargets and SetDriveTargetVelocities methods checking List capacity instead of count and improved the error message. (UUM-12713)

  • Physics: Fixed Physics Debugger not showing up in Prefab Mode. (UUM-2215)

  • PS4: Fixed the Param File Package Category Setting not being correctly overridden when a custom param file override was set in the Player Settings. (UUM-17357)

  • Scripting: When using ObjectFactory.CreateInstance with a custom type deriving directly from UnityEngine.Object, a clearer exception message is thrown. (UUM-7896)

  • Serialization: Fixed regression where if a mesh was used in VFX and included in an AssetBundle there could be indeterminism in its streaming info offset field. (UUM-12721)

  • Shaders: Fixed a rare crash when opening a project with compute shaders. (UUM-10259)

  • Shaders: Material.SetOverrideTag will now warn when trying to override LightMode. (UUM-11988)

  • Version Control: Fixed editor refresh triggering when a workspace update is in progress
    Fixed pending changes show global ignored as private
    Removed encryption checkbox from create organization dialog.

  • Video: Editor crashes when playing a video file with 14 audio tracks in Play mode. (UUM-861)

  • Video: VideoPlayer throws errors when VideoClip loaded from AssetBundle nears the end. (UUM-1888)

  • Video: [WebGL] Video Player updates to a previously sought frame when seeking a paused video. (UUM-11808)

  • Web: Allow "Name Files As Hashes" option for WebGL Development builds. (UUM-1133)

  • WebGL: Added fallback configuration for company name, product name and product version to ensure the web cache is always enabled. (UUM-3944)

  • WebGL: Fixed bug where the old input system wasn't recognizing stationary touch input. (UUM-1137)

  • WebGL: Fixed connection between the WebGL player and the profiler. (UUM-798)

  • WebGL: Fixed player connection used when running PlayMode tests on WebGL. (UUM-1170)

  • Windows: Fixed cursor position not updated when using pen tablet with Windows Ink enabled. (UUM-10258)

  • Windows: Fixed IL2CPP runtime compilation failing when building C++ code using Visual Studio 2022 17.4 or newer. (UUM-17921)

  • Windows: Fixed Input.mousePosition not updated when using a tablet. (UUM-11989)

  • Windows: Windows player executable no longer contains "Unity playback engine" text in its property sheets. (UUM-15330)

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.42f1

Packages updated

Packages added

LTS Release 2020.3.41f1

Released:

LTS Release 2020.3.41f1

Released:

Known Issues in 2020.3.41f1

  • 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).

  • Vulkan: [Quest2][Vulkan] ReadPixel has Black artifacts when the image is generated (UUM-13241)

  • XR SRP: Meta Quest performance loss between URP versions when built (UUM-15608)

2020.3.41f1 Release Notes

Features

  • Editor: Add the possibility of running tests in a specified order from a test list (DSTR-494).

Improvements

  • Animation: Improved animation performance across the board

Fixes

  • 2D: Fixed a case where multi selecting Sprite Skins would cause a null reference exception to be thrown. (DANB-126)

  • 2D: Fixed a case where setting IKManager2D's or Solver2D's weight to '0' doesn't update solver's effector position.

  • 2D: Fixed an issue where selecting bones in the Skinning Editor after removing any bone in the skeleton will throw an exception.

  • 2D: Fixed TexturePlatformSettings exception. (DANB-194)

  • 2D: Update TexturePlatformSettings implementation.

  • Android: Fixed exporting Android Studio project to non-existing folder using Editor API. (UUM-1886)

  • Android: Incremental GC setting will be correctly applied for Export Project. build.gradle BuildIl2Cpp task was missing --incremental-g-c-time-slice flag. (UUM-2222)

  • Android: New Input System's Keyboard class will treat DPad Center button clicks as Key.Enter. Since that's hold the old input was treating them. (UUM-882)

  • Asset Pipeline: Fixed intermittent Accelerator disconnection caused by interrupt signals raised by Mono. (UUM-3655)

  • Asset Pipeline: Prefab preview is getting updated when change in material color. (UUM-2226)

  • Build Pipeline: Fixed edge case where isDebugBuild would not revert to true after the build. (UUM-12064)

  • Editor: Add warning log when the size of a Sprite in a Secondary Texture used in a Sprite Atlas does not match its size in the Main Texture. (UUM-11164)

  • Editor: Fixed EditorUtility.DisplayDialog layout after showing dialog with a long text. (UUM-9447)

  • Editor: Fixed Linux Editor ignores mouse scroll wheel input when the cursor is locked on the new input system. (1354498)

  • Editor: Fixed lost references to AnimationClips when the ModelImporter clips settings are modified for the first time. (UUM-2203)

  • Editor: Prevented exceptions if ShortcutManager cannot read profile id from file. (UUM-9220)

  • Graphics: Add error message for indirect compute buffers incorrectly flagged on DX11. (UUM-899)

  • Graphics: Fixed potential for LineRenderer.BakeMesh and TrailRenderer.BakeMesh to fail with invalid AABB error messages. (UUM-1913)

  • Graphics: Fixed sporadic freeze in mesh upload. (UUM-4293)

  • IL2CPP: Avoid an exception from Buffer.BlockCopy when the destination array is of type sbyte. (UUM-12875)

  • IL2CPP: Fixed a hash collision when a static and instance method have the same name, return type, and parameters. (UUM-9877)

  • IL2CPP: Fixed a NullReferenceException during managed code stripping when using DebuggerDisplay. (UUM-12430)

  • IL2CPP: Fixed compilation error that occurred when a enum was passed by reference in a marshalling definition. (UUM-11353)

  • IL2CPP: Fixed possible crash/corruption when invoking a virtual generic method on a generic type by reflection. (UUM-12498)

  • Linux: Fixed Linux Editor's new input system's mouse scroll delta values clamped between -1 and 1. (1365433)

  • Linux: Fixed Server runtime not responding to SIGTERM and other signals. (UUM-1582)

  • Mono: Avoid exception when registering a window class in different domain instances. (UUM-13189)

  • Networking: UnityWebRequest will not change HEAD to GET on 302 or 303 response. (UUM-7274)

  • Package Manager: Fixed a regression where packages would fail to resolve with a ENOENT mkdir error when the project path or global cache path contained quotes. (UUM-13252)

  • Package Manager: Fixed an issue where having packages with a lot of versions increases domain reload time drastically. (UUM-12670)

  • Player: Improved performance when loading scenes with a high number of light probes. (UUM-7568)

  • Profiler: Fixed failures in opening local documentation files from Editor on macOS. (UUM-6164)

  • Scripting: Fixed a crash happening when trying to enter an unsupported character (such as an emoji) in a field in a game built with IL2Cpp backend. (UUM-1801)

  • Scripting: Fixed an issue where adding a component declared in a nested class could end up adding the wrong component type. (UUM-9221)

  • Scripting: Fixed an issue where Application.logMessageReceived can be called from a job, when the job is scheduled on the main thread. (UUM-3085)

  • Scripting: Marking UserInfo apis as obsolete. (UUM-14006)

  • Services:

  • uGUI: Fixed the NullReferenceException when using Tile image types with a sprite atlas being omitted from build. (UUM-4340)

  • Universal Windows Platform: Fixed float values stored in player prefs getting corrupted on startup. (UUM-14671)

  • WebGL: Fixed a bug where losing focus on the player would cause buttons to become stuck. (UUM-3230)

  • WebGL: Fixed a bug where pressing the CMD key on Safari would cause buttons to become stuck. (UUM-12013)

  • WebGL: Fixed bug where the cursor would transition back to the system cursor rather than the Unity default cursor. (UUM-1158)

  • WebGL: Fixed immediate playback of scheduled audio source if AudioSource.time is changed. (UUM-1147)

  • Windows: Fixed incorrect scan codes that are exposed through KeyControl.scanCode of New Input System. (UUM-9029)

  • XR: Fixed Graphics.Blit when using VRTextureUsage.TwoEyes. (UUM-1858)

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.41f1

Packages updated

LTS Release 2020.3.40f1

Released:

LTS Release 2020.3.40f1

Released:

Known Issues in 2020.3.40f1

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

  • Asset Bundles: AssetBundle indeterminism caused by mesh streaming info (UUM-12721)

  • 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)

  • XR SRP: Meta Quest performance loss between URP versions when built (UUM-15608)

2020.3.40f1 Release Notes

Features

  • Editor: Add com.unity.services.mediation@1.0.4

Improvements

  • 2D: Added bone weight index validation in SpriteSkin's validate method, to ensure valid data before continuing with deformation.

  • Asset Import: Reduced the time taken by refreshing the asset database, which among other things improves the performance of editing prefabs

  • Editor: Reduced the time taken to open inspectors by avoiding a pointless copy of a big thing behind the scenes

  • Multiplayer: Add Unity Netcode for Gamebjects Package 1.0.1

  • Multiplayer: Add Unity Transport Package 1.2.0

  • Scripting: Improved pop-up error messages when attaching scripts to GameObjects. (UUM-2557)

API Changes

  • iOS: Added: Added identifiers for iPhone 14 models.

Changes

  • Editor: Updated manifest.json to use com.unity.inputsystem package version 1.4.2

  • XR: Updated the verified version of AR Foundation related packages to 4.1.12.

Fixes

  • Android: Fixed crash when using UAV with Vulkan on older Mali devices (UUM-1957)

  • Android: [Backport] Fix for 2020.3: Static Image for Splash Screen Moving When Loading on Android Build (UUM-1803)

  • Audio: Fixed doc for GamepadSpeakerOutputType to be used exclusively for playstation 4, playstation 5 platforms and editor platforms only. (UUM-407)

  • Documentation: The "linear" parameter was stated to be true by default for Texture2DArray, this has been fixed. (UUM-8157)

  • DX12: Fixed crash that can occur when calling ComputeBuffer.GetData() with non zero computeBufferStartIndex parameter (UUM-11444)

  • GI: Fixed denoising issues with OIDN and OptiX denoisers on GPULM when using different values for direct lighting sample count and indirect lighting sample count. (UUM-2158)

  • Graphics: Fixed Texture2D.GetPixel(int x, int y, int miplevel) internally passing the miplevel parameter incorrectly.] (UUM-8157)

  • Graphics: Updated libjpeg-turbo to version 2.1.2 to solve security issues with version 1.3.1, used by Texture2D and ImageConversion LoadImage API and ImageConversion EncodeToJPG API. (UUM-4950)

  • IL2CPP: Avoid an intermittent crash in the .NET thread pool implementation when a thread is incorrectly removed from the pool twice. (UUM-11191)

  • IL2CPP: Avoid an intermittent crash on shutdown when many threads are waiting on a Monitor object inside for a C# lock statement. (UUM-10374)

  • IL2CPP: Correctly layout structures in memory with an explicit layout and a size parameter. (UUM-9100)

  • IL2CPP: Fixed crash when ill formed utf16 content is converted to utf8 (UUM-1801)

  • iOS: Fixed orientation handling on startup (when the phone is rotated between starting up and showing unity itself) (UUM-7461)

  • iOS: Stop Touch.rawPosition changing position when touch is dragged (UUM-7581)

  • Linux: Fixed print stack trace frequently crashing (UUM-1595)

  • Networking: Upgrade curl to 7.84.0 (UUM-11134)

  • Package Manager: HTML text cleaned up in details view. (UUM-7701)

  • Scene Manager: Opening a broken scene with light mapping enabled could crash the editor. (UUM-9319)

  • Scripting: Fix an issue where define constraints on unity's pre-defined symbols like "UNITY_INCLUDE_TESTS" were misbehaving for Precompiled assemblies (UUM-9378)

  • Scripting: Fix case when trying to serialize generics with generic fields of types from different assemblies. (UUM-8844)

  • Scripting: Fixed an issue where messages from the compiler containing special character were not correctly printed in the console (UUM-1935)

  • Serialization: Properly track managed-only classes so they are not stripped by the il2cpp linker. (UUM-4103)

  • VFX Graph: Stop rendering VFX shadows when VFX are disabled in Scene View visibility menu (UUM-4752)

  • Virtual Texturing: Added a notice regarding the experimental state of Virtual Texturing to the Player Settings editor.

  • Virtual Texturing: Added a warning for Procedural Virtual Texturing clarifying that the feature is not currently supported.

  • Virtual Texturing: The experimental state of Streaming Virtual Texturing and Procedural Virtual Texturing was not clearly indicated in the API docs and Manual, this has been corrected. For clarity, these features should not be used in production.

  • WebGL: Improve shader compilation performance problems on MacOS when GPU instancing is used. (UUM-6390)

  • Windows: Fixed mouse buttons do not get switched when the primary mouse button is changed. (UUM-3959)

  • XR: Fixed multiview is enabled when renderer is configured to SPI mode on PC (UUM-6003)

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.40f1

Packages updated

Packages added

LTS Release 2020.3.39f1

Released:

LTS Release 2020.3.39f1

Released:

Known Issues in 2020.3.39f1

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

  • Asset Bundles: AssetBundle indeterminism caused by mesh streaming info (UUM-12721)

  • 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)

  • XR SRP: Meta Quest performance loss between URP versions when built (UUM-15608)

2020.3.39f1 Release Notes

Improvements

  • Documentation: Added a summary and code example for IJobParallelForTransform.

  • XR: Update Windows Mixed Reality default version to 4.6.4

API Changes

  • Android: Changed: Fix issue on Adreno where SystemInfo.maxComputeBufferInputsFragment is incorrectly report as greater than 4 on some devices (UUM-1870)

  • Android: Changed: Updated SupportsAccelerometer() API to return whether a device has an accelerometer sensor or not.

Changes

  • IAP: # Changelog
    ## [4.4.0] - 2022-07-11
    ### Added

    • GooglePlay - Google Play Billing Library version 4.0.0.

    • The Multi-quantity feature is not yet supported by the IAP package and will come in a future update. Do not enable Multi-quantity in the Google Play Console.

    • Add support for
      the [IMMEDIATE_AND_CHARGE_FULL_PRICE](https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.ProrationMode#IMMEDIATE_AND_CHARGE_FULL_PRICE)
      proration mode. Use GooglePlayProrationMode.ImmediateAndChargeFullPrice for easy access.
      ### Fixed

    • GooglePlay - Fix IGooglePlayConfiguration.SetDeferredPurchaseListener
      and IGooglePlayConfiguration.SetDeferredProrationUpgradeDowngradeSubscriptionListener callbacks sometimes not being
      called from the main thread.

    • GooglePlay - When configuring IGooglePlayConfiguration.SetQueryProductDetailsFailedListener(Action retryCount), the action will be invoked with retryCount starting at 1 instead of 0.

    • GooglePlay - Added a validation when upgrading/downgrading a subscription that calls IStoreListener.OnPurchaseFailed with PurchaseFailureReason.ProductUnavailable when the old transaction id is empty or null. This can occur when attempting to upgrade/downgrade a subscription that the user doesn't own.

  • IAP: # Changelog
    ## [4.4.1] - 2022-08-11
    ### Fixed

    • GooglePlay - Fixed NullReferenceException and ArgumentException that would rarely occur due to a concurrency issue introduced in Unity IAP 4.2.0

    • Amazon - Set android:export to true to support Android API level 31+

  • Package: Bumped versions of Relay & QoS packages.

  • Text: Upgraded freetype to 2.12.1. (UUM-6502)

  • XR: Update OpenXR package version to 1.5.1

Fixes

  • 2D: Fixed editor crash when calling SpriteAtlasUtility.PackAtlases (UUM-6965)

  • Android: Added mono audio output support. (UUM-9205)

  • Android: Bring back the ability to initialize UnityPlayer with Context class, this allows Unity to initialize itself from WallpaperService. (1413649)

  • Android: Fixed bug when building with IL2CPP and scaler types getting stripped out.

  • Android: Fixed bug with manual lifetime tests failing occasionally.

  • Android: Fixed bug with scaler not being initialized with settings from the Editor UI properly when using profiles.

  • Android: Fixed bug with test provider and settings showing up in Project Settings.

  • Android: Fixed crash during low memory kill. (UUM-4811)

  • Android: Fixed orientation issues in laptop mode and tablet mode on Chromebooks (UUM-782)

  • Android: Fixed screen distortion when minimizing and maximizing the app on ChromeOS (UUM-523)

  • Android: Toggling Build App Bundle in the Build Player Window will now prompt for a save location rather than attempting to use the last build location which would have been the incorrect type of package. (UUM-1692)

  • Asset Bundles: Fixed memarchive0 error when entering play mode (UUM-11182)

  • Audio: Fixed unexpected output from OnAudioFilterRead when the audio source is stopped and the 'spatialize' property is enabled. (UUM-6318)

  • Editor: Fix crash when creating a default 3D texture with an unsupported format on Metal (UUM-2996)

  • Editor: Fixed loading Scene Templates from Packages directories. (1360512)

  • GI: Fix for prefab assets showing in Light Explorer when Show Inactive Objects is checked. (UUM-835)

  • GI: Fixed a case where scene objects would lose their lighting data when they are packed into or unpacked from a prefab, and playmode is entered without first saving the scene. (UUM-11182)

  • Graphics: Fix crash when using bad args in CommandBuffer.DrawRenderer (HRB-20)

  • Graphics: Fixed ImageConversion.LoadImage and Texture2D.LoadImage always returning true even in case of a failure. (UUM-2528)

  • iOS: Disable capitalization, autocorrection and others when soft keyboard is secure and input is hidden (UUM-5974)

  • iOS: Fixed crash on warming up shader variants with procedural instancing (UUM-10114)

  • Kernel: Improved termination of player connection.

  • macOS: Fixed code sign of ppc fat dylibs. (UUM-2196)

  • Networking: Fixed texture leak when UnityWebRequest is used with DownloadHandlerTexture and a texture is never queried. (UUM-953)

  • Particles: Ensured Trigger Module does not ignore 2D Trigger Colliders. (1364520)

  • Particles: Skip draw call for gpu instanced mesh particle trails if using same material as particles. (UUM-7071)

  • Project Browser: Fixed context menu does not appear when holding Ctrl and pressing left mouse button in the Project window on Mac. (UUM-5191)

  • Scripting: Don't cast Mathf.Abs to float when passing a float value (increases performance). (UUM-1821)

  • Scripting: Fixed condition on accessing a game object from a callback while it was being constructed that was leaving the original GameObject managed wrapper in a detached state. (UUM-10043)

  • Shaders: DrawMeshInstanced now provides error feedback when using a shader that does not support instancing. (UUM-6026)

  • Shaders: Fixed HDRP Runtime test failure in Vulkan caused by incorrect shader code generation. (UUM-1834)

  • Terrain: Backports a bugfix that reduces the time taken by trees on awake. (UUM-4946)

  • Terrain: URP fails to render grass Terrain details. (UUM-9122)

  • uGUI: Fixed calculation of pointer position when running in multiple display mode and the main display was fullscreen with a non-native aspect ratio. (UUM-7893)

  • Universal Windows Platform: Fixed IL2CPP failing to initialize when invoked in background task. (UUM-9644)

  • Video: "Can't play movie" error is thrown when setting VideoPlayer.url to an invalid url through a script (UUM-11380)

  • Video: Fixed crash when importing a file in play mode. (UUM-9351)

  • Video: Videos fail to play on Standalone Windows players with some AMD GPUs. (UUM-900)

  • Video: [WIN 8 KN/N] VideoPlayer inadequate error reporting on errorReceived callback when Media Player is not present. (UUM-839)

  • WebGL: Added workaround for audio distortion bug in Safari. (1350204)

  • WebGL: Fix WebGL build on macOS 12.3 by bundling Python 2.7 (UUM-1136)

  • WebGL: Fixed bug where some control keys were being incorrectly interpreted as text. (1417650)

  • WebGL: Fixed changing AudioSource.time while audio source is paused. (UUM-1157)

  • WebGL: Fixed FMOD related error messages showing up in console when audio is played on Timeline. (1270635)

  • WebGL: Fixed non-finite double value error during audio playback. (UUM-11085)

  • Windows: Fixed crash on startup when Vjoy HID device is connected to a computer. (UUM-8786)

  • Windows: UnityPlayer.dll properties sheet is now more complete. (UUM-10370)

  • XR: Updated XR Legacy Input Helpers to 2.1.10.

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.39f1

Packages updated

Packages added

News from Unity QA

We’re not just toolsmiths, but wordsmiths too! Read all the Unity QA blogposts past and present.

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