Release notes

Known Issues in 2020.3.39f1

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

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 crash when using UAV with Vulkan on older Mali devices (UUM-1957)

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

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

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

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

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

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

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

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

  • Kernel: Improved termination of player connection.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • 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

Changeset: fd6670bb8be9

Unity 2020.3.39

Quick jump

    Back to Top