Additional downloadsSelect the runtime platforms of your choice from the list below (the desktop runtime is included as standard) or, to install the full complement of runtime platforms, use the download assistant installer above.
Known Issues in 2020.3.31f1
Asset - Database: Texture size increased on first build when 'Compress Textures/Assets on Import' is enabled (1397965)
Asset Bundles: Asset Bundle size incrementally increases when updating the Unity Editor and rebuilding the Asset Bundle (1391542)
DOTS: "IndexOutOfRangeException" errors appear when entering Play Mode if using "AsDeferredJobArray" (1395710)
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).
IL2CPP: Build fails on Try block ends without any catch, finally, nor fault handler (1400410)
Inspector Framework: LEGO microgame, missing dropdown from inspector Specific Action field (1387037)
Metal: Consistent EditorLoop 5-10ms spikes when using Metal API (1378985)
Metal: Editor crashes on BufferMetal::IsBusy after opening a Scene (1405248)
Progressive Lightmapper: [macOS] BugReporter doesn't get invoked when the project crashes (1219458)
Scene/Game View: Camera resolution is set to default when opening the Editor (1378321)
Shadows/Lights: Scene is brighter in Standalone player if it was open in the Editor at build time (1375015)
Visual Effects - Legacy: [URP] Particles are flickering when in Play Mode (1390346)
2020.3.31f1 Release Notes
Android: Updated some APIs to support the behavior changes of LocationManager in Android 12. (1379467)
Asset Bundles: Improved performance of Asset Bundle building when many bundles exist. (1358059)
IL2CPP: Improved error messages when we cannot compile C++ code due to Visual C++ toolchain or Windows SDK being not installed on the machine. (1287868)
Physics: Enabled setting inertia tensor to be equal to zero (infinite). (1394069)
Scripting: Improved AddComponent so it scales better with the projects amount of components. (1278548)
Scripting: Optimized searching for scripts when the assembly name is not supplied, can significantly improve performance entering PlayMode amongst other areas.
- Shaders: Added: An option in Pass.CompileVariant API to generate shader data for use by external tools. (1371640)
- Android: Text input is no longer trimmed. (1376463)
2D: Fixed an issue where the animation window's preview of IK targets would not be the same as in Play Mode. (1391590)
AI: Fixed NavMeshAgent teleports to a wrong location when reaching a border carved by a NavMeshObstacle. (1363687)
Android: Fixed a crash when using a custom cursor. (1379249)
Android: Fixed a crash where app would crash if it was put to background before Unity initialisation and then opened via URL. (1391522)
Android: Fixed black screen when resuming application with native dialog present. (1361532)
Android: Fixed Oculus on-screen keyboard status when not enabled in manifest. (1361663)
Asset Bundles: Fixed an issue that when copying file and meta on disk, renamed asset bundle name is preserved. (1385129)
Asset Import: Fixed an issue that AssetImportContext.AddObjectToAssets does not work in AssetPostprocessor methods. (1393009)
Asset Import: Fixed an issue that Textures passed to AssetPostprocessor methods have no name.
Asset Import: Fixed an issue where the VisualEffectImporter logs an error on every import. (1405641)
Asset Pipeline: Fixed an issue that generating previews for scenes could sometimes block saving asset until finished. (1330504)
Audio: Fixed a bug where an app could freeze when calling Application.Quit after using the OnAudioFilterRead callback. (1356566)
Audio: Fixed not being able to undo parameter changes from dragging in the GUI widget of the ParamEQ and Duck Volume effects. (1262453)
Editor: Fixed an issue to prevent missing segments in the Bundle Identifier for Apple platforms by replacing invalid characters with hyphens (similar to Xcode's behaviour). (1352216)
Editor: Fixed arrow key functionality in dialogs in the Mac Editor. (1279832)
Editor: Fixed exceptions when assigning array size via array size field in ReorderableList inspector control.
Editor: Fixed model preview window not rendering UVs due to back face culling being turned on. (1379783)
GI: Fixed an Editor crash in Optix when Generating Lighting multiple times. (1358477)
Graphics: Fixed a potential stall on buffer uploads in OpenGL GfxDevice. (1369478)
Graphics: Fixed Brief garbage frame after changing resolution on Metal by ensuring that the recreated surface on size change doesn't dispose of its previously rendered contents. (1383853)
Graphics: Fixed corruption of mip levels of non-readable ASTC cubemap texture. (1383196)
Graphics: Fixed disappearing mesh when "Keep Quads" is enabled in import settings. (1327826)
IL2CPP: Fixed issue with IL2CPP builds where user had configured their own Newtonsoft Json DefaultSettings. (1385676)
IL2CPP: Fixed undefined invocation behavior for unsigned arguments. (1388270)
iOS: Fixed an issue to allow picking up a background scene if no foreground scenes were found. (1400794)
iOS: Fixed Screen.cutouts returns a null value on some iPhones. (1371461)
iOS: Fixed Screen.orientation setting to ensures Autorotation is disabled when manually specifying Portrait. (1399856)
iOS: Fixed Screen.safeArea returns incorrect height value when constraining rotation to landscape. (1356217)
iOS: Fixed splash screen sometimes showing in the wrong orientation. (1400716)
iOS: Fixed TouchScreenKeyboard.selection being reverted when keyboard animates. (1381968)
Kernel: Fixed invalid "System is running out of memory" error on macOS M1 laptops. (1386242)
macOS: Fixed "Already have uncommitted encoder" error present under some circumstances. (1400691)
macOS: Fixed a crash when passing '-force-glcore' to Unity Editor on macOS. (1374768)
macOS: Fixed an issue that UnityEngine.SystemInfo.processorFrequency returns 0 on Apple Silicon. (1396529)
macOS: Fixed incorrect resolution of some editor windows when moving the Editor from a built-in monitor to an external one while in full-screen. (1390919)
Mono: Fixed a few SocketAsyncEventArgs methods previously unimplemented. (1388925)
Package Manager: Fixed an issue where changes in the project manifest wouldn't be applied when
autorefreshis disabled. (1292471)
Package Manager: Fixed the issue where loading spinners does not disappear when stopped.
Package Manager: Fixed the issue where the Package Manager UI doesn't warn the user when the .unitypackage is not compatible with the current version of Unity by adding a downgrade option with warning. (1403447)
Particles: Fixed an issue that the Trail material is restored now if module is toggled off then on again. (1363211)
Particles: Fixed memory overwrite when using trails and ringbuffer mode together. (1378274)
Particles: Fixed offset param in NativeArray overload of SetPaticles API. (1376804)
Physics: Fixed ArticulationBody.SetJointPositions and similar setter using List.Capacity instead of List.Count to determine the element count and throwing errors because of that. (1347970)
Profiler: Fixed Profiler Rendering module not showing stats when profiling Editor. (1382934)
Scene/Game View: Fixed picking in sceneview for materials with non-2D _MainTex textures. (1288999)
Scripting: Fixed an issue where TypeCache.GetDerivedTypesFrom could return duplicate entries. (1369411)
Scripting: Fixed double-clicking on a message after a domain reload not generating the correct .sln file version with Visual Studio.
Serialization: Fixed SerializedProperty.DataEquals for strings and array case which was not comparing the content. (1394833)
Shaders: Fixed an issue that the Pragma directives with "_local" suffix that specify shader stage will now generate an error if the stage is specified before the "_local" suffix instead of silently ignoring the directive altogether. (1388229)
uGUI: Fixed an issue when the RectMask2D component would not work properly when used on large images. (1369118)
UI Toolkit: Fixed an issue that the Editor Window does not preserve the minimum height and width of UI Elements when resizing it. (1313077)
Universal Windows Platform: Fixed an issue that Unity generated UWP project uses hardcoded value of en-US. (1342532)
Universal Windows Platform: Fixed black square appearing with custom cursors in Executable Only build. (1299579)
Universal Windows Platform: Fixed playing videos back from outside the application/application data folders if the app has permissions to do so (for instance, the Videos library). (1376489)
Windows: Fixed a crash with 'Copying file failed' error on Windows when importing a file from WinRAR Archiver. (1325310)
Windows: Fixed absolute mouse position when mouse acceleration is enabled. (1221634)
Windows: Fixed Unity detecting incorrect mouse position when using a touch screen display. (1322364)
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:
- 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