Together with this announcement, we are also hosting a Q&A here in this thread to answer as many of your questions as possible. Topics we will be fielding questions on are based on the topics of the blog post.
Our Community team will field questions for the next two days to foster active communication with our users. Please feel free to ask your questions in this thread.
Some basic rules
The thread will open up for questions on August 13, 8am Pacific Time and remain open for questions for 2 days.
Donāt bundle multiple unrelated questions in one reply. One question/topic per reply.
Only questions related to the topics of the blog post are permitted.
We will filter out duplicate questions.
All questions will enter a moderation queue and be fielded by our Community Managers ( @LeonhardP and @AskCarol )
Replies will have to be approved by the moderators to show up in the thread.
Once approved, the questions will be forwarded to the relevant experts.
Questions wonāt necessarily be answered immediately. Expect some waiting time.
We really look forward to hearing from the community. Thank you!
Hey Unity Team! I want to know that in future versions of unity will you please Add a Built in Dynamic clouds like Unreal. And Optimized volumetric lighting in Universal Render pipeline??? Please it will be helpful if you implement these features.
Something that will (most likely!) give Unity performance by default but still being an easy engine to work with is an upgrade to .NET 5/Core. DOTS is super powerful sure but itās also quite restrictive for beginners. So if we can keep the traditional Unity with GameObjects and MonoBehaviours and still get good performance, that would be great. Many performance tests have shown that .NET 5 is becoming really fast.
So are there any strides towards ditching mono in favor of a complete .NET integration? Especially now when .NET is becoming so cross-platform.
With the focus being on stability, current systems are being prioritized. Meaning weāre working on terrain bug fixes and bringing terrain tools package out of preview
A recap what weāve done lately (since having a terrain team):
2018.3 terrain performance improvements were shipped (many things from the CPU to GPU). 2019.1 introduced terrain tools package (blog)
2019.2 improved terrain tools package (blog)
2019.3 terrain holes were added to the core terrain system
Since then weāve been focused on a new environment system. We did announce it too soon, and our release target was too ambitious. Recently (last couple weeks) we have pulled engineers off of that to bring current terrain into a better state. A better state for current terrain means bringing our bug count down, proper URP/HDRP support, and weāre working on improving mobile performance. Weāre also working on getting terrain tools package out of preview - that work is bug fixing, some UX improvements, and moving APIs out of experimental. Weāre also hiring so once bugs are under control, there will still be a dedicated person for terrain (JD, should any of you be interested or know a good fit!). We want to bring current terrain to a stable state and keep it there - so we can work on a new modern system (as we can only facelift a system built ~13 years ago so much).
While engineers are focused on terrain stability, we do still have UX designers, technical artists, and some tools engineers working on the new system as we are committed to pushing it forward.
Hi gijoe92! thanks for the question. Replay is a really interesting feature, it requires determinism, and as of today, this means taking a dependency on DOTS. Once DOTS is out of preview and accessible to more devs, we can prioritize this area. Until determinism is more generally feasible, weāll be focused on a stable foundation for current stable tech.
What, exactly, is mean by "Iterative improvement of the core experience for URP and stable HDRP. In the Asset Store, enabling users to discover URP and HDRP content easily through tagging and filtering. "
For instance, is MicroSplat compatible with URP? It is if it has the URP module, but not by default. Is the streams module? Again, there are dependencies here, due to the nature of SRP introducing massive compatibility nightmares for asset developers. Also, since itās not possible to ship things so they ājust workā across render pipelines, the initial experience of downloading MicroSplat for an SRP (and most other assets) is pink shaders, which leads to a bunch of support requests essentially because SRPs were developed as if the asset store didnāt exist. It seems like these things need to be addressed before we start rolling out filters, and guaranteeing to users that content works with their pipeline when the initial experience is of a broken asset.
Also, if you are admitting HDRP is not stable, then why is it being advertised as production ready? I would argue that it cannot be stable until each upgrade doesnāt break half the shaders in the store.
Regarding networking:
There are network transport solution that can handle 1K-2K connections. As I know new transport tested on 32 connections. Looks strange.
Can we expect Unity transport to be able to handle 1K-2K or more connections?
We never have ability to make custom culling solution into rendering pipeline, but many projects can benefit from it because they have specific camera and culling can be made faster and easier. Even more, we often need additional camera (now in camera stacking) and dont want to cull world again and waste 1ms of frame on mobile for each camera, we want to filter existing cull results or in many cases of UI we just need to draw all ui renderers without any culling and waste of time.
Various culling solutions in asset store have ugly integration into rendering pipeline. Having builtin interface for culling integration will make things way better.
So actually do Unity have plans to support custom culling and/or additional culling filtering for SRPs?
Optimisation
Unreal use 2 stages of image upscaling to achieve good performance. We now have camera stack and really want to render world on say 520p then upscale and render UI on 1080p. Better will be solution with few upscaling step like Unreal has.
Will SRPs support upscaling camera in camera stack or upscaling render feature?
Will SpeedTree 8 be finally supported in all pipelines? SpeedTree says Unity has to implement it. As a SpeedTree customer Iām at a loss here, purchased a lot that doesnāt work at all. Just got an eMail about SpeedTree 9 Sneak Peek. The whole SpeedTree issue and non-existing support has become frustrating. Is there an official statement?
TLDR and main question:
Can you share some technical details and plans, if any, to speed up enter playmode with script changes (so script compilation times). Many, including myself, have asked before but often the answers have left me with more questions so it would be great to hear any more information youāre able to provide or some sort of summary of your key plans in this area.
Recent insights and more discussion on compilation times:
Recently Joachim mentioned :
This sounds great, however, it confused me a bit; Does Unity recompile all itās packages at the moment every-time there is a script changeā¦? Also, are there plans to take this further and only compile code that is changed rather than the entire assembly?
Is this actually the case already for Unity packages, or is this coming in 2020.2? Does this require the reference assemblies feature Joachim mentions above?
Community insights and tests: Unity compilation visualizer
From the conversation it sounds like Unity currently has a bug recompiling packages more often then it should. So I guess that will help lots when/if itās fixed.
Any more info appreciated! Echo previous comments that it was a good blog post.
Hey there! We are committed to development and improvement of URP for long term and we envision it as the successor to our default rendering pipeline in Unity (aka the ābuilt-in render pipelineā). Having said that our current focus for future versions in 2021 is to bring URP in parity with built-in, improve existing feature workflows and quality as well as enhance the upgrading experience from built-in. Once we reach that milestone we will look at adding new features based on the feedback we receive from our community such as yourself. Please visit our URP public board to vote for upcoming features that matter to you most and request for ones that are not there yet: https://portal.productboard.com/unity/1-unity-graphics/tabs/3-universal-render-pipeline. Thank you!
For now we have strange workflow in few areas: 1. [SerializedReference] May be I miss something but as know it very unstable and using it is somewhat dangerous
If we serialize so object to it and then those objects classes will be refactored to different assembly or just change names then we loose everything. Do Unity have plans to support some way to keep everything work? may be [FormerlySerializedAs(āOldNamespace.OldClassNameā)] on class?
Answer:
2. Prefabs. They change every time we go into play mode, they create overrides and dont allow to remove it (mostly in uGUI), they sometimes just ignore changes in base prefabs and we need to reimport all prefabs on dev machines or build machines, they allow to override any part of prefab, dont provide any control over it and this lead to various hard to find bugs. What steps Unity plan to do in this regard?
Answer:
3. Addressables/AssetBundles. Still has bad workflow and stability overall. Crash almost every build, so we need to rebuild all addressable groups from ground up before every build. There even Addressable importer asset to somewhat help. Default api to load bundle through AddressableReference load entire bundle into memory instead of loading only bundle header and load assets only when necessary. UI is just shame. Sorry.
In short we have some tools to work with assets in runtime but dont have any tools and workflow to understand what will be part of build and whyā¦ What plans Unity have in asset management area?
One of the focus areas for HDRP in 2021 is performance optimisations along with improvement of existing featuresā quality and workflows. If you do have performance issues, can I please ask you to report them so we have better visibility to address them for you.