Unity 2020.1: What's new
The Unity 2020.1 was official release on July 23, 2020 with a lot of fixes, API changes, changes, improvements and features. You can find the new features directly on the Unity manual accessing this search: newin20201. To read all items, access the complete release notes.
- API Changes:
My feature highlights
Below are the features that most caught my attention and that I believe can positively impact my development workflow.
Editor: Add focused Inspector, a property editor to inspect single object.
This is something I have been looking for for a while, an inspector editor for a specific item in the hierarchy. Unity went further, allowing an editor focused on a component too.
For GameObjects and Project Assets
GameObject in the
Hierarchy view, or an
Asset in the
From the context menu, select
Alternatively, select the
Asset and do one of the following:
From the main menu, select Assets > Properties. Use the
Alt + P / Option + Shift + P shortcut.
GameObject and locate the
component you want to open a focused Inspector for.
From the component’s
More items (⋮) menu, select Properties.
More details in the official documentation.
Editor: Introduced PreviewSceneStage. Implement custom stages by inheriting from this class.
I found this interesting but did not found any good documentation on how to use it.
Switch between debug and release code optimizations
Editor: Support to switch between debug and release code optimizations without restarting the Unity Editor improving Unity Editor performance when compiling in release.
Lighting settings as an asset
GI: Added all lighting settings as an asset. This will allow the user to share them between scenes or switch them out in an easy way.
This can be quite useful when we need different lighting setups for different target platforms.
Graphics: GetPixelData API was added
Graphics: GetPixelData API was added to Texture2D, Texture3D, Texture2DArray, Cubemap and CubemapArray classes. It allows getting a pointer to the data of a particular mip level/array element in a Texture for reading/writing, and without creating any memory allocations (similar to Texture2D.GetRawTextureData).
Input System is now verified
Input: The Input System has moved out of preview.
Save and restore Particle System state data
Particles: Abiltiy to save and restore Particle System state data, making it possible to save a snapshot of an entire Particle System at a point in time. A use case for this is for efficient rewind support, by saving periodic keyframes of the particle state, to avoid full resimulations.
New component ArticulationBody
Physics: Add a new component ArticulationBody that helps to create articulations. An articulation is a set of bodies, some of which have their relative motion constrained. All bodies are organized in a logical tree, where parent-child relation expresses the constrained motion. Unlike regular Rigidbodies with Joints, articulations are solved with a different solver (Featherstone) in reduced coordinates which guarantees there will never be any stretch of locked degrees of freedom. Typical examples of articulations include robotic arms, ragdolls, etc.
This blog post talks in more details this new physics component: Use articulation bodies to easily prototype industrial designs with realistic motion and behavior.
New shader preprocessor
- Shaders: New shader preprocessor (experimental).
- Faster shader compilation.
- Accurate include dependency tracking.
These were the features that brought my attention to Unity 2020.1.
What were the features that caught your attention?