### Known Issues in 2020.3.31f1

*   Asset - Database: Texture size increased on first build when 'Compress Textures/Assets on Import' is enabled ([1397965](https://issuetracker.unity3d.com/issues/texture-size-increased-on-first-build-when-compress-textures-slash-assets-on-import-is-enabled))
    
*   Asset Bundles: Asset Bundle size incrementally increases when updating the Unity Editor and rebuilding the Asset Bundle ([1391542](https://issuetracker.unity3d.com/issues/asset-bundle-size-incrementally-increases-when-updating-the-unity-editor-and-rebuilding-the-asset-bundle))
    
*   DOTS: "IndexOutOfRangeException" errors appear when entering Play Mode if using "AsDeferredJobArray" ([1395710](https://issuetracker.unity3d.com/issues/errors-appear-when-entering-play-mode-if-using-asdeferredjobarray))
    
*   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](https://issuetracker.unity3d.com/issues/il2cpp-build-fails-on-try-block-ends-without-any-catch-finally-nor-fault-handler))
    
*   Inspector Framework: LEGO microgame, missing dropdown from inspector Specific Action field ([1387037](https://issuetracker.unity3d.com/issues/lego-microgame-missing-dropdown-from-inspector-specific-action-field))
    
*   Metal: Consistent EditorLoop 5-10ms spikes when using Metal API ([1378985](https://issuetracker.unity3d.com/issues/consistent-gfx-dot-waitforpresentongfxthread-5-10ms-spikes-when-using-metal-api))
    
*   Metal: Editor crashes on BufferMetal::IsBusy after opening a Scene ([1405248](https://issuetracker.unity3d.com/issues/editor-crashes-on-buffermetal-isbusy-after-opening-a-scene))
    
*   Progressive Lightmapper: \[macOS\] BugReporter doesn't get invoked when the project crashes ([1219458](https://issuetracker.unity3d.com/issues/macos-bugreporter-doesnt-get-invoked-when-the-project-crashes))
    
*   Scene/Game View: Camera resolution is set to default when opening the Editor ([1378321](https://issuetracker.unity3d.com/issues/camera-resolution-is-set-to-default-when-opening-the-editor))
    
*   Shadows/Lights: Scene is brighter in Standalone player if it was open in the Editor at build time ([1375015](https://issuetracker.unity3d.com/issues/scene-is-brighter-in-standalone-player-if-it-was-open-in-the-editor-at-build-time))
    
*   Visual Effects - Legacy: \[URP\] Particles are flickering when in Play Mode ([1390346](https://issuetracker.unity3d.com/issues/particles-are-flickering-when-in-play-mode))
    

### 2020.3.31f1 Release Notes

#### Improvements

*   Android: Updated some APIs to support the behavior changes of LocationManager in Android 12. ([1379467](https://issuetracker.unity3d.com/issues/android-input-dot-location-dot-start-doesnt-update-on-android-12))
    
*   Asset Bundles: Improved performance of Asset Bundle building when many bundles exist. ([1358059](https://issuetracker.unity3d.com/issues/building-process-of-the-assetbundles-is-slow-when-the-file-count-is-huge))
    
*   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](https://issuetracker.unity3d.com/issues/poor-error-message-from-il2cpp-on-windows-desktop-with-specific-visual-studio-installation-sequence))
    
*   Physics: Enabled setting inertia tensor to be equal to zero (infinite). ([1394069](https://issuetracker.unity3d.com/issues/error-thrown-when-disabling-rigidbody-with-a-custom-inertia-tensor-and-constraint))
    
*   Scripting: Improved AddComponent so it scales better with the projects amount of components. ([1278548](https://issuetracker.unity3d.com/issues/performance-decreases-with-a-large-number-of-components-when-addcomponent-is-used))
    
*   Scripting: Optimized searching for scripts when the assembly name is not supplied, can significantly improve performance entering PlayMode amongst other areas.
    

#### API Changes

*   Shaders: Added: An option in Pass.CompileVariant API to generate shader data for use by external tools. ([1371640](https://issuetracker.unity3d.com/issues/vulkan-shaderdata-dot-pass-dot-compilevariant-function-compile-data-in-the-smol-v-format-when-using-vulkan))

#### Changes

*   Android: Text input is no longer trimmed. ([1376463](https://issuetracker.unity3d.com/issues/spaces-before-text-in-the-input-field-are-being-deleted-when-closing-the-keyboard-by-pressing-the-ok-button-on-android-devices))

#### Fixes

*   2D: Fixed an issue where the animation window's preview of IK targets would not be the same as in Play Mode. ([1391590](https://issuetracker.unity3d.com/issues/animations-look-different-in-preview))
    
*   AI: Fixed NavMeshAgent teleports to a wrong location when reaching a border carved by a NavMeshObstacle. ([1363687](https://issuetracker.unity3d.com/issues/nav-mesh-agent-teleports-when-colliding-with-nav-mesh-obstacle))
    
*   Android: Fixed a crash when using a custom cursor. ([1379249](https://issuetracker.unity3d.com/issues/android-crash-with-signal-6-when-read-slash-write-is-enabled-in-texture-import-settings-and-texture-type-set-to-default-or-cursor))
    
*   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](https://issuetracker.unity3d.com/issues/android-unity-app-background-gets-black-when-dialog-window-remains-open-after-re-entering-the-app))
    
*   Android: Fixed Oculus on-screen keyboard status when not enabled in manifest. ([1361663](https://issuetracker.unity3d.com/issues/xr-oculus-touchscreenkeyboard-reports-state-visible-even-if-the-is-not-defined-in-the-androidmanifest))
    
*   Asset Bundles: Fixed an issue that when copying file and meta on disk, renamed asset bundle name is preserved. ([1385129](https://issuetracker.unity3d.com/issues/assetbundle-assets-will-not-appear-in-the-assetbundles-when-the-guids-are-the-same))
    
*   Asset Import: Fixed an issue that AssetImportContext.AddObjectToAssets does not work in AssetPostprocessor methods. ([1393009](https://issuetracker.unity3d.com/issues/addobjecttoasset-doesnt-work-when-reimporting-asset))
    
*   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](https://issuetracker.unity3d.com/issues/ios-app-freezes-when-calling-application-dot-quit-if-a-script-with-onaudiofilterread-and-an-audio-listener-is-in-the-scene))
    
*   Audio: Fixed not being able to undo parameter changes from dragging in the GUI widget of the ParamEQ and Duck Volume effects. ([1262453](https://issuetracker.unity3d.com/issues/editing-parameq-through-dragging-on-the-graph-is-not-undoable))
    
*   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](https://issuetracker.unity3d.com/issues/xcode-bundle-identifier-parts-in-xcode-project-missing-if-they-contain-chinese-symbols))
    
*   Editor: Fixed arrow key functionality in dialogs in the Mac Editor. ([1279832](https://issuetracker.unity3d.com/issues/macos-text-caret-position-cannot-be-moved-via-arrow-keys-in-the-build-project-pop-up-window))
    
*   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](https://issuetracker.unity3d.com/issues/preview-window-uv-layout-fails-to-display-the-uvs-of-curve-meshes))
    
*   Editor: Fixed ReorderableList element height not updating when dynamic changes to list content happen. ([1341015](https://issuetracker.unity3d.com/issues/inspectors-for-serialized-arrays-of-inputactions-no-longer-display-correctly-with-2020-dot-3-plus), [1342485](https://issuetracker.unity3d.com/issues/serializereference-array-field-background-box-is-not-correctly-resized-when-changing-elements-height), [1342814](https://issuetracker.unity3d.com/issues/the-elementheightcallback-is-not-called-when-selecting-a-different-element))
    
*   GI: Fixed an Editor crash in Optix when Generating Lighting multiple times. ([1358477](https://issuetracker.unity3d.com/issues/vulkan-editor-crashes-when-generating-lighting-multiple-times))
    
*   Graphics: Fixed a potential stall on buffer uploads in OpenGL GfxDevice. ([1369478](https://issuetracker.unity3d.com/issues/android-consecutive-calls-to-graphics-dot-drawprocedural-take-a-huge-amount-of-time-on-mali-gpus))
    
*   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](https://issuetracker.unity3d.com/issues/macos-player-window-is-scrambled-with-square-artifacts-for-a-few-seconds-when-changing-the-resolution))
    
*   Graphics: Fixed corruption of mip levels of non-readable ASTC cubemap texture. ([1383196](https://issuetracker.unity3d.com/issues/material-gets-corrupted-when-using-astc))
    
*   Graphics: Fixed disappearing mesh when "Keep Quads" is enabled in import settings. ([1327826](https://issuetracker.unity3d.com/issues/mesh-disappears-when-keep-quads-is-enabled-in-the-fbx-import-settings))
    
*   IL2CPP: Fixed issue with IL2CPP builds where user had configured their own Newtonsoft Json DefaultSettings. ([1385676](https://issuetracker.unity3d.com/issues/il2cpp-build-fails-with-artifacts-slash-tundra-dot-dag-dot-json-does-not-exist-yet-when-using-unityeditor-dot-initializeonloadmethod-in-script))
    
*   IL2CPP: Fixed undefined invocation behavior for unsigned arguments. ([1388270](https://issuetracker.unity3d.com/issues/il2cpp-faster-smaller-builds-prevents-connections-when-using-the-mirror-plugin))
    
*   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](https://issuetracker.unity3d.com/issues/ios-screen-dot-cutouts-returns-a-null-value))
    
*   iOS: Fixed Screen.orientation setting to ensures Autorotation is disabled when manually specifying Portrait. ([1399856](https://issuetracker.unity3d.com/issues/setting-screen-dot-orientation-to-portrait-mode-does-not-disable-autorotation-when-starting-application-in-portrait-mode))
    
*   iOS: Fixed Screen.safeArea returns incorrect height value when constraining rotation to landscape. ([1356217](https://issuetracker.unity3d.com/issues/ios-screen-dot-safearea-returns-incorrect-height-value-when-constraining-rotation-to-landscape))
    
*   iOS: Fixed splash screen sometimes showing in the wrong orientation. ([1400716](https://issuetracker.unity3d.com/issues/ios-apps-ignore-uisupportedinterfaceorientations-when-it-is-set-in-info-dot-plist))
    
*   iOS: Fixed TouchScreenKeyboard.selection being reverted when keyboard animates. ([1381968](https://issuetracker.unity3d.com/issues/ios-touchscreenkeyboard-dot-selection-is-ignored))
    
*   Kernel: Fixed invalid "System is running out of memory" error on macOS M1 laptops. ([1386242](https://issuetracker.unity3d.com/issues/system-is-running-out-of-memory-is-being-thrown-when-using-profiler-as-a-standalone-process-with-deep-profile-turned-on))
    
*   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](https://issuetracker.unity3d.com/issues/unity-crashes-when-entering-force-opengl-or-force-glcore-in-the-advanced-project-settings))
    
*   macOS: Fixed an issue that UnityEngine.SystemInfo.processorFrequency returns 0 on Apple Silicon. ([1396529](https://issuetracker.unity3d.com/issues/unityengine-dot-systeminfo-dot-processorfrequency-logs-a-value-of-0-on-m1-macs))
    
*   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](https://issuetracker.unity3d.com/issues/macos-secondary-monitor-doesnt-refresh-when-adding-a-gameobject-on-newly-created-project))
    
*   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 `autorefresh` is 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](https://issuetracker.unity3d.com/issues/material-isnt-assigned-back-on-particle-trails-when-disabling-and-enabling-trails))
    
*   Particles: Fixed memory overwrite when using trails and ringbuffer mode together. ([1378274](https://issuetracker.unity3d.com/issues/android-shuriken-application-crash-when-loop-until-replaced-is-selected-in-ring-buffer-mode-property))
    
*   Particles: Fixed offset param in NativeArray overload of SetPaticles API. ([1376804](https://issuetracker.unity3d.com/issues/particlesystem-dot-setparticles-new-particles-to-replace-exisiting-particles-argument-offset-equals-ps-dot-particlecount-without-function))
    
*   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](https://issuetracker.unity3d.com/issues/articulation-cache-size-doesnt-match-supplied-list-size-after-removing-child-gameobject))
    
*   Profiler: Fixed Profiler Rendering module not showing stats when profiling Editor. ([1382934](https://issuetracker.unity3d.com/issues/the-profiler-rendering-module-shows-the-scene-rendering-statistics-as-zero-when-profiling-the-editor))
    
*   Scene/Game View: Fixed picking in sceneview for materials with non-2D \_MainTex textures. ([1288999](https://issuetracker.unity3d.com/issues/error-assigning-3d-texture-to-2d-texture-property-maintex-when-using-a-texture3d-and-a-shader-from-the-unity-manual))
    
*   Scripting: Fixed an issue where TypeCache.GetDerivedTypesFrom<SomeInterface> could return duplicate entries. ([1369411](https://issuetracker.unity3d.com/issues/typecache-dot-gettypesderivedfrom-function-returns-duplicate-types-when-derived-classes-are-located-in-a-separate-folder))
    
*   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](https://issuetracker.unity3d.com/issues/serializedproperty-dot-dataequals-returns-true-for-two-strings-that-are-different))
    
*   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](https://issuetracker.unity3d.com/issues/pragma-directive-is-incorrect-when-using-multi-compile-vertex-local-suffix))
    
*   uGUI: Fixed an issue when the RectMask2D component would not work properly when used on large images. ([1369118](https://issuetracker.unity3d.com/issues/part-of-the-large-image-is-prematurely-marked-if-using-the-rectmask2d))
    
*   UI Toolkit: Fixed an issue that the Editor Window does not preserve the minimum height and width of UI Elements when resizing it. ([1313077](https://issuetracker.unity3d.com/issues/editor-window-does-not-preserve-the-minimum-height-and-width-of-ui-elements-when-resizing-it))
    
*   Universal Windows Platform: Fixed an issue that Unity generated UWP project uses hardcoded <defaultLanguage> value of en-US. ([1342532](https://issuetracker.unity3d.com/issues/unity-generated-uwp-project-defaults-to-en-us-language))
    
*   Universal Windows Platform: Fixed black square appearing with custom cursors in Executable Only build. ([1299579](https://issuetracker.unity3d.com/issues/uwp-ui-cursor-is-replaced-with-a-black-square-when-cursor-dot-setcursor-is-called-with-anything-but-the-default-cursor))
    
*   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](https://issuetracker.unity3d.com/issues/uwp-cant-play-files-in-video-library-in-uwp-build))
    
*   Windows: Fixed a crash with 'Copying file failed' error on Windows when importing a file from WinRAR Archiver. ([1325310](https://issuetracker.unity3d.com/issues/editor-crashes-or-freezes-with-copying-file-failed-error-when-importing-a-file-from-winrar-archiver))
    
*   Windows: Fixed absolute mouse position when mouse acceleration is enabled. ([1221634](https://issuetracker.unity3d.com/issues/input-system-mouse-dot-current-dot-position-value-is-offset-by-1-pixel-compared-to-old-systems-input-dot-mouseposition))
    
*   Windows: Fixed Unity detecting incorrect mouse position when using a touch screen display. ([1322364](https://issuetracker.unity3d.com/issues/embedded-unity-window-receives-mouse-down-when-using-touch-input-outside-of-window))
    

#### 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.31f1

#### Packages updated

*   com.unity.2d.animation: [5.1.0](https://docs.unity3d.com/Packages/com.unity.2d.animation@5.1//changelog/CHANGELOG.html) → [5.1.1](https://docs.unity3d.com/Packages/com.unity.2d.animation@5.1//changelog/CHANGELOG.html)
    
*   com.unity.adaptiveperformance: [2.2.1](https://docs.unity3d.com/Packages/com.unity.adaptiveperformance@2.2//changelog/CHANGELOG.html) → [2.2.3](https://docs.unity3d.com/Packages/com.unity.adaptiveperformance@2.2//changelog/CHANGELOG.html)
    
*   com.unity.adaptiveperformance.samsung.android: [2.2.1](https://docs.unity3d.com/Packages/com.unity.adaptiveperformance.samsung.android@2.2//changelog/CHANGELOG.html) → [2.2.2](https://docs.unity3d.com/Packages/com.unity.adaptiveperformance.samsung.android@2.2//changelog/CHANGELOG.html)
    
*   com.unity.collab-proxy: [1.15.12](https://docs.unity3d.com/Packages/com.unity.collab-proxy@1.15//changelog/CHANGELOG.html) → [1.15.13](https://docs.unity3d.com/Packages/com.unity.collab-proxy@1.15//changelog/CHANGELOG.html)
    
*   com.unity.ide.vscode: [1.2.4](https://docs.unity3d.com/Packages/com.unity.ide.vscode@1.2//changelog/CHANGELOG.html) → [1.2.5](https://docs.unity3d.com/Packages/com.unity.ide.vscode@1.2//changelog/CHANGELOG.html)
    
*   com.unity.mobile.notifications: [1.4.2](https://docs.unity3d.com/Packages/com.unity.mobile.notifications@1.4//changelog/CHANGELOG.html) → [2.0.0](https://docs.unity3d.com/Packages/com.unity.mobile.notifications@2.0//changelog/CHANGELOG.html)
    
*   com.unity.postprocessing: [3.2.0](https://docs.unity3d.com/Packages/com.unity.postprocessing@3.2//changelog/CHANGELOG.html) → [3.2.1](https://docs.unity3d.com/Packages/com.unity.postprocessing@3.2//changelog/CHANGELOG.html)
    
*   com.unity.purchasing: [4.1.2](https://docs.unity3d.com/Packages/com.unity.purchasing@4.1//changelog/CHANGELOG.html) → [4.1.3](https://docs.unity3d.com/Packages/com.unity.purchasing@4.1//changelog/CHANGELOG.html)
    
*   com.unity.test-framework: [1.1.29](https://docs.unity3d.com/Packages/com.unity.test-framework@1.1//changelog/CHANGELOG.html) → [1.1.31](https://docs.unity3d.com/Packages/com.unity.test-framework@1.1//changelog/CHANGELOG.html)
    
*   com.unity.xr.legacyinputhelpers: [2.1.8](https://docs.unity3d.com/Packages/com.unity.xr.legacyinputhelpers@2.1//changelog/CHANGELOG.html) → [2.1.9](https://docs.unity3d.com/Packages/com.unity.xr.legacyinputhelpers@2.1//changelog/CHANGELOG.html)