Workflow improvements are one of the main pillars of this year’s TECH streams. Read on to learn what's new in Unity 2020.2, and check out the release notes for the full list.
Unity Hub 2.4.1 and templates
Unity Hub is now in version 2.4.1 with improved workflows for managing projects, downloads, Unity Editor versions, and modules. It also brings improvements to user experience (UX) and dynamic downloadable templates. This includes templates like the new HDRP template to get new users started creating in Unity faster with in-Editor guided tutorials.
Search across your scenes with Quick Search 2.0
Unity Quick Search is a handy package that enables you to search for anything in Unity. Quick Search 2.0 is now available and comes with more search tokens and the ability to provide contextual completion when typing queries. Scene searching is no longer limited to just the open Scene, but instead, it’s now possible to search through all the Scenes and Prefabs of your project at once.
Prefabs optimization
Prefabs import improvements include performance enhancement, scalability, and cacheability. For script dependencies, Prefabs that contain MonoBehaviours are now in sync with the script and do not lose references in the case of compile errors. Nested Prefabs also have various optimizations, including reduced modifications of a dynamic array of Properties. Changing the sorting strategy for Modification array has sped up sorting, and using a hash has sped up lookups in our tests by 50x and more for various use cases.
Prefab import improvements
The AssetPostprocessor class lets you hook into the import pipeline and run scripts before or after importing assets. This enables you to override default values in the import settings or modify imported data like textures or meshes.
With Unity 2020.2, Prefabs now also supports AssetPostprocessor. The AssetPostprocessor.OnPostprocessPrefab function is called before the final Prefab is created and before it is written to disk. Therefore, you have full control over the generated GameObjects and Components. If OnPostprocessPrefab is implemented, post-processors can modify the Prefab as specified. Additionally, all added objects get the DontSaveInEditor flag so that changes are not applied to the source Prefab.
Asset Import Pipeline optimizations
New improvements to the Asset Import Pipeline and related technologies focus on supporting larger teams and larger projects.
The Asset Import Pipeline is more robust and checks whether the assets produced by importers remain consistent with the original asset and its dependencies, avoiding issues related to large-scale imports. The checks can be enabled by manual reimport or by command line.
PhysX Improvements
You can now link Rigidbody hierarchies to ArticulationBody hierarchies with regular joints. The forces and torques produced by that linkage are propagated in both hierarchies automatically. This is particularly helpful if you work in robotics or physics-based games. Additionally, we exposed new APIs that include support for physically based inverse kinematics (IK).
Quality of Life general improvements
Unity 2020.2 is packed with quality-of-life improvements across the Editor, making the workflows smoother and iteration times faster.
You can now reorder Arrays and Lists in the Inspector, and you can use the attribute [NonReorderable] to disable this function if you prefer. The Scene move/rotate/scale handle lines thicker and configurable.
When using the texture import pipeline for 2D Array and 3D textures, you can import your flipbook array/3D textures to preview them directly without having to write custom C# code.
As examples of other improvements, you can now visualize blend shapes in the Mesh inspector when they are present, and you can also drag multiple Prefabs into the Scene simultaneously.
Scoped registries for control of custom packages
If you want to create custom modifications to standard Unity packages or extend the standard Editor tools to interface better with your own custom package, you can use the scoped Registries property to set up a custom registry where you can host your own packages. Using scoped registries ensures that the Package Manager always maps a package to one and only one registry, guaranteeing a consistent result regardless of network conditions. With 2020.2, the Package Manager includes a new dialogue that clearly informs you when a new scoped registry is added to the project. You can now also manage all scoped registries in the project (add/remove registry and scope) from Project Settings.
Unity Distribution Portal updates
In Unity 2020.2, UDP works independently of Unity IAP implementation, without risking conflicts. You can enable UDP via the Services Window, and a new project-level permissions system gives you more options for your team to work with UDP projects.
The authoring workflow in UDP console now supports bulk IAP import via CSV, sandbox testing, app signature customization including private keys for repacks, and error checking during packaging.