Search Unity

Discover what’s new in profiling tools, graphics, Editor workflows and more. Try out the new features and let us know what you think on the Beta forum!

The Unity 2020.1 beta is a milestone in the development cycle of the first TECH stream release this year, one of two 2020 TECH stream releases that lead up to the 2020 Long-Term Support (LTS) release next year.

As a token of our appreciation, everyone who tries out the 2020.1 beta and submits at least one bug report gets a chance to win one of four NVIDIA GeForce RTX™ 2080 graphic cards. See the end of this post for details on the prize draw.

On April 20, we will be hosting a webinar for people interested in a guided tour of the features and updates in this beta. You can register here and find more information at the bottom of this post.

To get started, download the Unity 2020.1 beta from the Unity Hub or from our beta page. We recommend that you check out the beta to evaluate the technology while planning your future development, and don’t use it to work on projects that are live or in production. As always, make sure you back up existing projects before you test them with beta and Preview technology. Read our guide for more details. 

Below are highlights of what we’ve added across the different feature areas. Stay tuned to the blog and the Beta forum for more information on features that are in this release or are in Preview as packages. 

Scripting and Profiling tools

Our Profiling tools help you get the most performance out of your applications by offering insightful views onto your performance and memory data. In this release, we’ve improved the stability, performance, and reliability of the tools.

To start, the Profiler connection to a Player is more stable, particularly with low-end Android devices. You can now also run it as a Standalone Profiler desktop app, which significantly reduces overhead and provides cleaner data when you target the Editor or Play mode.

The Profiler now includes a Flow Event feature that visualizes your Job System dependencies. You can also add metadata to your profile markers, and an extension to the Recorder API allows you to get GPU counters at runtime by using the new Sampler API. We’ve also made many improvements to the Profile Analyzer. Furthermore, we’re refactoring the Memory Profiler’s back-end, for which we have already significantly cut down on capture memory overhead and capture times. The Memory Profiler is available as a Preview package.

To help you visualize how Unity schedules jobs across threads, you can use the Flow Events setting in Profiler.

The Code Coverage (Preview) package lets you see which lines of your code are executed when the tests run, in addition to whether the tests passed or failed. Let us know what you think about it on the forum.

You can now get human-readable information from past build reports (Unity saves these each time you build a project) with Build Report Inspector (now a package). You can also see more details on project build times provided by the Build Report API, including a breakdown to the asset level.

The new C# debugging workflow makes the Editor run with C# code optimization by default, improving Editor performance. You can also enable debug mode without restarting the Editor.

Visual Studio integration is moving into packages. The new Visual Studio Code Editor package is in Preview. All future development will happen in the package, with the built-in support switching to maintenance mode until we remove it in a future release. We’ve already added some new features and improvements to the package, such as faster startup.

We improved support for serializing fields of generic types. In the past, if you had a generic type (such as class MyClass<T>), and you wanted to make a field using that type, you would have to define a non-generic subclass of it (like class MyClassInt : MyClass<int>). We’ve removed this limitation, so you no longer need to declare the generic subclass, and can just use the generic type directly.

Editor and workflows

Unity 2020.1 beta features many gradual improvements for your Editor workflows. These include: 

  • FBX enhancements: a new axis conversion setting
  • Support for custom attribute data from SketchUp assets
  • The option to ignore gamma correction when importing PNG files (which can help with color consistency across different platforms)
  • New abilities for Presets (applying only a partial set of properties from a given Preset, and filtering in the Preset Manager based on a file’s path)
  • Addressables user experience (UX) improvements
  • Runtime catalog updating and sub-object support
  • Support for importing asset files greater than 2 GB
  • The new Directory Monitoring feature on Windows speeds up processing by only updating relevant assets. We will add support for macOS in a future release. 
  • A new public API and the background Progress window enable developers to expose long-running, asynchronous operations without blocking the Editor UI, and fewer user interruptions. 

The Unity Accelerator lets you coordinate asset sharing when your team is working on the same local network. In this release we’ve added a local administrator dashboard for the Accelerator that enables you to configure the tool for your team’s needs. 

You can now open a Prefab in context. When you open Prefab Mode this way, you can see the context of the Prefab instance in the Scene view (but locked for editing) even though you are not editing the instance but rather the Prefab Asset itself. Learn more about this in the Prefabs forum.

The in-Editor Asset Store is powered by the CEF (Chromium Editor Framework), an older technology that can’t offer the performance you expect from a modern browser. In this release, we’ve removed the CEF. This means we’ve refactored the Services window and removed in-Editor Asset Store browsing. Instead, when you’re signed in and visit the Asset Store website to locate and get new assets, the My Assets menu is available in the Package Manager window. You can download and import your assets from there. This window also contains functionality for authoring packages.

We’ve also updated the Hub template for new 2D projects. This includes all verified and precompiled 2D packages and default settings optimal for 2D projects. It also loads faster than installing all the packages manually. We want to refine this to fit your needs, so please share your thoughts with us in the Improved 2D Template thread in the forums.

This release features many updates to 2D physics, including improvements to Rigidbody2D XY Position Constraint, which makes a Rigidbody completely solid under any force and has almost zero runtime cost. This feature resulted from changes to Box2D physics and was ported back to 2019.2. Per-frame Auto-Simulation enables Physics to refresh at the same rate as the rendering cycle, providing smoother physics and visuals. As well, EdgeCollider2D now lets you control the start and end points to allow overlapped edges with other colliders to maintain a continuous surface.

The team’s 2D Physics project has been updated with many Scenes to demonstrate all 2D physics features. Get it on GitHub, and let us know what you think on the 2D beta forum.

The new Sprite Packer Version 2 allows you to create Sprite Atlas from textures or sprites using the Scripted Importer workflow, which provides access to AssetDatabase v2 features and the Cache Server.

Artist tools

The Animation Rigging (Preview) package now comes with Bidirectional Motion Transfer, a workflow that lets you transfer existing motion onto active constraints and more.

Improvements are coming to our Particle System, such as the Freeform Stretching mode and Lifetime by Emitter speed module. This is useful for effects such as liquid drops or moving fire. We’ve also improved sticky notes in Shader Graph.

We are renaming UIElements to UI Toolkit. The new name better describes the set of features and functionality that the UI Toolkit contains. UI Toolkit now lets you create runtime UI with the same tools you can use to create Unity Editor extensions. We are also moving UI Toolkit to a package, which will be available in Preview later in the Unity 2020.1 beta cycle. For updates, keep an eye on the UI Toolkit forum.

Graphics tools

In the Universal Render Pipeline you can now use Camera Stacking to layer the output of multiple Cameras and create a single combined output.

Camera Stacking allows you to create effects such as a 3D model in a 2D UI, or the cockpit of a vehicle. Currently, Camera Stacking is not supported when you use the 2D Renderer or VR Multi Pass mode. Support for these will be added in upcoming versions of the Universal Render Pipeline package. 

Unity 2020.1 beta also includes updates to our Ray Tracing feature (in Preview) set for the High Definition Render Pipeline (HDRP). You can now do animation in Ray Tracing via the Skinned Mesh Renderer component. Alembic Vertex Cache and Meshes with dynamic contents (see example below) are now supported via the Dynamic Geometry Ray Tracing Mode option in the Renderers menu. Join us in the HDRP Ray Tracing forum if you’re interested in trying out these features. We also have a blog article that focuses specifically on the Ray Tracing features in HDRP. You can learn more here.

Streaming Virtual Texturing technology is also included in this release. It will be supported in the High Definition Render Pipeline (9.x-Preview and later) for use with Shader Graph. Streaming Virtual Texturing is a feature that reduces GPU memory usage and texture loading times when you have many high-resolution textures in your Scene. You can preview the work-in-progress package in this sample project. Get our User Guide to learn more and let us know what you think on the forum.

This beta release also includes a number of improvements and fixes for lighting. For example, the new Light Setting Asset enables you to change settings on multiple scenes and have more control in multi-bake scenarios.

Lighting settings are no longer a part of the Unity Scene file; instead, they’re now located in an independent file that stores all the settings related to pre-computed GI. This gives you the ability to share, change or reuse lighting settings across scenes and teams.

The new Calculated Pack Margin feature adds settings to the Mesh Importer. It makes it easy to avoid UV overlapping artifacts and to get clean and correct lightmaps.

The GPU Lightmapper is getting closer to feature parity with the CPU Progressive Lightmapper, as it now supports A-Trous filtering, Baked LOD Support, Sky Occlusion Baking and includes memory improvements.

Baked Light Cookies support in HDRP will be available very soon. In the meantime, you can try the feature with the Built-in Render Pipeline.

Russian Roulette is a new method that reduces the total bake times when calculating Global Illumination. Be aware that using aggressive Russian Roulette values will likely introduce noise in your lightmaps. For more information on what’s new for lighting in Unity 2020.1, join the Global Illumination forum.

Russian Roulette benchmark sample scene. Enter The Room project courtesy of Nedd.

Platforms

Unity Runtime for iOS devices now requires iOS 11 as a minimum version, and 32-bit builds are no longer supported. Support for OpenGL ES on iOS is deprecated (since 2019.3) and we plan to remove it in Unity 2020.2.

Advanced developers can now implement their own conversion process for output to High Dynamic Range (HDR) displays for both the legacy render and Scriptable Render Pipelines across PlayStation 4, Xbox One, and desktop platforms with a single API.

Our Device Simulator (Preview) package now comes with more devices and the option to search and filter the list of devices.

The new Caching Shader Preprocessor provides improved shader import/build performance (up to 25% lower shader compilation time) by caching the result of preprocessing the files. It applies across all platforms and render pipelines, and is Experimental in this release. You can switch it on in the Shader Compilation section of Editor Settings.

We made a number of improvements to our WebGL loader and templates. In order to improve loading performance, Unity 2020.1 will now generate a WebGL loader that is specific to the build. Unused code will be stripped from the loader, and the most efficient loading scheme will be chosen based on the selected Player settings.

We have added HDR display support for the Editor, allowing developers who use displays that support HDR to take advantage of it. This change supports DX12 and Metal.

We have also introduced a new C# API for HDR support in the Player that allows developers to overwrite the default Unity tonemapping algorithm. This enables you to create custom tonemapping and activate/deactivate HDR settings if desired.

Join the 2020.1 beta webinar

Sign up for our webinar on April 20 at 9:00 am PDT (6:00 pm CEST), led by Ashley Alicea, Games Evangelist. Ashley will explain and demo a number of the major new features in this release. She will be joined by guests from Unity R&D teams to answer questions you have about the new tools and technology.

Register

 

Get a chance to win an NVIDIA GeForce RTX™ 2080 GPU

By participating in the 2020.1 beta, you have a chance to win one of four GPUs that we’re giving away in partnership with NVIDIA.

To enter the draw, all you have to do is identify and report at least one unique bug during the 2020.1 beta cycle and add “#Beta2020Win_NVIDIA” in the report description (the “Submission”). The contest opens at 00:01 am PT on March 17 and the submission period ends at 23:59 pm PT on May 15. 

A unique bug is one that has not yet been reported at the time of submission and has been reproduced and acknowledged by Unity as a bug.

No purchase necessary. Void where prohibited. See the full rules here. We will contact the winners directly.

Get a chance to win a NVIDIA GeForce RTX™ 2080 GPU by participating in the 2020.1 beta

About the Unity Beta program

By joining our open beta, you will be able to try and provide feedback on the new features coming in the next TECH stream release. You’re also helping the entire community by improving the quality of our software.

If you aren’t sure how to get started, have a look at this guide to being an effective beta tester.

Watch the following video to learn more about what beta program means for us and what our beta users think.

Read the release notes

As always, refer to the release notes for the full list of new features, improvements, and fixes. Please provide feedback on them in our forums as well.

Beta program newsletter

Subscribe to the Beta newsletter to receive news on upcoming technology and exclusive activities that we organize for our Beta users. Sign up for our Beta Newsletter below:




40 replies on “Unity 2020.1 beta is now available for feedback”

Thanks. Also with the Chrome Embedded Framework not being supported anymore, What’s the way forward for supporting tools that make use of it on the asset store? Do you plan to open source the native wrapper? It would be a real shame if we can no longer use tools with 2020.

A very nasty surprise for me was a realization that GPU Lightmapper now demands 4GB of GPU memory, instead of 2GB in the 2019 version. The difference between baking by GPU vs CPU is tens of minutes compared to hours. This is a huge setback for me (and I’m sure for some other devs as well) since I can’t use it anymore. Not everyone has a high-end GPU (or has older one), especially indie devs and when we target mobiles, portables or just the universal pipeline, we don’t need one, but baked lights are a big part of optimization for those targets. Can you at least explain why this requirement was changed?

Hi, I am sorry to hear that you got negatively affected by this change. The reason for the increase in GPU memory minimum requirements is to ensure that there is enough memory to hold both what the Editor + the renderer, the OS and other apps need and what the lightmapper will need to bake lighting. Memory usage is very scene dependent and during the GPU lightmapper preview we have had lots of reports from users running out of memory. We are working on improving memory consumption and have some nice improvements scheduled for 2020.2, that will lower the memory footprint of the progressive GPU lightmapper, but the minimum requirement will stay at 4GB for now.
Hardware analytics show that most users that bake lighting, already have 4GB or more GPU memory and that the number of 2GB and smaller GPUs is steadily declining.
If you don’t have a 4GB GPU, you can still use 2019.x or the progressive CPU Lightmapper.

Thank you for your reply. I appreciate it. Well, I guess I’ll be using the 2019 version for now. Keep up the good stuff coming though.

“FBX enhancements (support for custom attribute data from SketchUp assets, and a new axis conversion setting)”

Does this mean we can fix axis import issues without having to re-open meshes in our modeling program? Can’t tell you how painful it is to export FBX from blender and have sub-meshes with weird 90-degree rotations. Lot’s of hoops to jump through just to have a zeroed out rotation for meshes/sub-meshes.

Hi there, In this blog you mention that iOS player minimum version is now 11, but in the release notes it says it is 10. Which is the correct minimum player spec for iOS as moving to a min of 11 will impact quite a few of our users.

Many thanks. Justin.

Hi Justin, the blog post is correct. iOS 11 is the new minimum spec for the player. We will fix the release notes. Thanks for spotting it.

Great job on this release. Its fixed a couple of performance issues I’ve been trying to overcome on IOS, I’m now able to run my project smoothly at 60fps on an iPhone 6 (which is a first). I’ve tried building on every version since 5.6.6, I thought I was destined to be stuck on 2019.2.12 but this release out performs all the others!

Hello Liz, I understand your reaction as well as the aspect of my request can make believe to an other troll on this topic.
However, to be more serious, I have ophthalmic problems that are quite disabling. I’m not a professional developer and I spend a lot of time on simple tasks (hopefully VStudio has a dark theme). As a hobbyist I haven’t yet reached the stage of paid subscription, because I don’t even know if I’ll finish a complete project one day given the time I spend on it.
Switching to certain systems like MacOS dark mode, Dark Google, etc. has really allowed me to live better and spend more time on what I like to do.
So I don’t have any problem to side with trolls when it comes to bringing up a feature that is minor enough for everyone but can be major for some, especially when they didn’t choose it.
I wouldn’t complain if Ui’s editor was more free. After all, it’s not a big deal, it’s just a soft and there are others, but I just think it’s a shame at least.

I agree with Phi. People with chronic eye strain do exist. I’m using workarounds so I’m not in such a hurry, but it would sure be best if they finally released the theme. It’s stupid to put an accessibility feature behind a paywall.

Actually no. He should not stop.

It was cute when it started. Not anymore. Dark skin should become the default and people should really create some ruckus about it. This is ridiculous and shameful from Unity. Definitely not a joke anymore.

Good incremental update. It looks like you’re focusing more on stabilisation in 2020.1 seeing as there aren’t a ton of features. I know this is still some ways off, but are we likely to see a C#8 upgrade?

Also, given the extensive work Bolt has done with their visual scripting solution (especially Bolt 2), is a DOTS visual scripting tool really that necessary? Have you considered just bolting that onto Unity instead (sorry for the pun)

Yes, an ECS solution is necessary. For all Bolt and Bolt 2 offer, they’re still fundamentally limited to the old monobehaviour system

OpenGL ES gets removed? Can you please clarify if it’s getting deprecated universally or only just for iOS? Vulkan is still not that great on Android.

That is definitely just for iOS, sorry for the confusion! I’ve asked the team to clarify that part of our blog post.

I confirm that OpenGL ES depracation/planned removal is only on iOS. No plan to remove or deprecate any version of OpenGL ES on Android for 2020, although we encourage you to try Vulkan. it’s really getting better and better!
JC, from Mobile Product Management team

Huge streaming open worlds with large view distances, with floating point precision issues when trying to position them in the editor.
Not just talking about Unity Terrains either — I use real meshes for terrains, and not about to go voxel or Unity Terrain since I need fidelity on the shape of my terrain.

What is the timetable we’re looking at?

> Support for OpenGL ES is deprecated (since 2019.3) and we plan to remove it in Unity 2020.2

1. Are you aware that OGL ES is currently superior to Vulkan in terms of performance/robustness in Unity?
2. Are there short-term plans to improve Vulkan performance/robustness in Unity?

That only applies to iOS, sorry for the confusion! I’ve asked the team to clarify that part of our blog post.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です