What keeps you from developing a tech similar with nanite?

Do you consider this as critical for your project(s), and if so, could you describe the type of content and platform targets?

Many users and studios are telling us that to reach enough players they need to support a lot of devices, including older PCs and laptops, and such features with 2080 min specs seem to be only applicable if one highly restrains its audience.

For mobile studios, it is even more radical, where if a feature does not run on low end mobile phones, it is just discarded. Supporting something only on a few high-end phones is interesting for marketing and research (nothing wrong about it - it is called R&D), and in some industrial cases (eg: product configurator on a specific mobile device) but at the moment we tend to prioritize features with broader usage.

But maybe we are wrong. :slight_smile: Curious to hear your thoughts about this, and if this aligns or not with your needs.

Well people want to be able to make scenes and levels that look great, UE makes that easier to do without requiring users to spend more time doing other things like optimizing and compromising on the visual quality and aesthetics just to make it playable. Alot of Universities and Arts teach UE now, students go make things with that engine… mobile studios priotizing for broader low end devices and market share …I mean ok, I still think U7 really needs to deliverer some tech and tools to close the gap on where UE is at to acheive similar level quality and optimized scenes. The unified renderer can’t come soon enough and hopefully automated meshLODs help.

low end devices should not be an exclusive reason to avoid nanite like type of concept.

instead of doing on the fly optimization depending of the zoom, as an option, one could chose to bake a min - max triangle values and create a modified mesh that could be exported to less powerful devices discarding the high polygon object altogether.

For non-games, huge CAD models, photogrammetry etc. for desktop PC and Desktop VR.

It would be critical feature to have (for these), since unity is good for building non-games. but it cannot handle large amount of gameobjects and vertices and optimizing models is too much manual work, also customers don’t want reduced/lower quality meshes…

I mean think about it this way, Unity is not doing really well financially hence why the prior leadership tried the runtime fee and the current leadership is increasing the license cost. If you guys develop a Virtual Geometry solution then Unity engine will be a viable option for bigger studios who tend to use photogrammetry, and those guys tend to pull a lot more revenue than us, so you could do it to make the engine more attractive for AAA studios and get more rev potential for the company, and we indie devs will gladly take it either way =]

Also you don’t have to develop a completely proprietary solution, you can just use Mesh Shading that is present in DirectX 12 Ultimate, that would be quicker to implement I’d imagine.

I think Nanite / Virtual Geometry would mainly be a marketing tactic and not provide as much value to actual developers.

As someone in the trenches I’ve been approached at least 4 times by stake holders and told “Lets switch to Unreal Engine, it looks way better!” And then I have to explain that until you can strap a 4090 RTX to your face there’s not going to be a noticeable difference for VR or Mobile applications.

Unity just has to make stuff look good, the non technical people could not care less ‘how’ it looks good.

Unity can look as good as Unreal, it just takes more work, which I think is the problem that needs to be solved.

But damn UE5 knows how to make a tech demo. “Nanite and Lumen” just sounds better than “GPU Resident Drawer and Adaptive Probe Volumes”

I’ve seen some reviews like that video you posted lately (it might even be that same video) and I think they are kind of missing the point. It should be obvious to anyone that understands what nanite does that edit-time optimization is going to perform better. Hand editing means you’re literally doing less work at runtime for the same result.

But you’re not going to get that result with a well-practiced tech artist. You need a team of them! The reason it exists is due to the insane levels of detail that seem to be expected from AAA games now along with a real crunch in manpower, funding, and time. It really is more oriented toward cost saving in manhours by simply offloading that work to the user’s machine. The cynic in me might even say that it gets the armchair devs that excited to throw a new buzzword around about their new favorite game while managers see a great chance to reduce timelines and cut manpower :wink:

For the indie space it’s a bit harder to judge. On the one hand it could save some significant time in content production which is something every small team desperately needs. But I also agree that there’s a real chance for this to blow up in general when every person with a quixel account suddenly crams their poorly-made weekend project full of million-poly models and flips a switch thinking it’s fine because it works on their $1200 GPU so it should run on everyone’s.

My own personal opinion isn’t much different from yours though. It’s a huge ‘meh’ to me. It literally wouldn’t do a thing to improve any of my games’ performance. CPU optimizations and easier access to more direct systems like they’ve been adding go a much longer way. I’m far more interested to see what plans they have to actually integrate ECS into the engine so that it feels like a first-class citizen. And that pipeline unification can’t come fast enough!

EDIT: Omg I still can’t get this new sight to properly quote the right person when I’m trying to respond. It’s driving me nuts!

This is false on so many levels:
1- if Unity makes a similar tech to Nanite they would not call it Nanite, so they can’t ride Nanite’s marketing hype.
2- Nanite’s marketing hype came from its usefulness and impact on game development, there’s no empty marketing hype around it, it is backed by real-world performance.

UE supports more graphical features that Unity simply does not have or support it in a very poor manner, so yes, switching the engine to UE would enable those developers to make better looking games even on mobile and VR, I feel bad for the people you have misled.

No, Unity’s job is to have a performant and practical solution, a good example of this is Unity’s horrendous Ray Tracing implementation which is plagued by light leaking and visual artifacts and crippling performance comparable to Path Tracing, while what Unity have is Screen Space RT-GI, not even a normal RTGI, it’s screen space and somehow managed to be more intensive than Path Tracing in other engines. So no, Unity’s job is not to make things look good only.

Quick lesson on Nanite:
The idea is if you have a bunch of triangles, the ones regarded as waste would be the ones smaller than a pixel, because they won’t be rendered, so what Nanite does is take the total number of pixels the user have on their monitor (say in a 1440p screen that’s 3.11 Million pixels) anything more than 3.11 Million triangle is a waste of performance assuming each triangle is as small as 1 pixel, in reality objects closer to the camera will have bigger triangles, so the optimal tris count is even less than 3.11M, Nanite dynamically crunches down the geometrical complexity of the scene to be at the number of pixels at most, and it can do so in real-time removing the need to create LOD’s which tend to have their own issues… Nanite was a major time saver as studios can simply throw their photogrammetry or any sort of high poly models and UE takes care of it, no longer needing to create LOD’s which take time and don’t even look good, and if you have developed any sort of okey looking game you’d know how easy it is to cross 3M tris, most projects are wasting performance on geometry, having a Nanite solution would not be an empty marketing win, it would be a major performance win that would lead to a marketing win for Unity.

After hitting ‘Reply’ you can select some text within a post and a menu will show with a Quote option.

I also forget to select the text before clicking on the reply button, but when the text editor is open you can select any text in the entire thread and it will insert a quote snippet with the correct username. is really handy actually way better than the older forum where you needed to carefully cut and paste if you wanted to reply to different people

Easier said than done on my cellphone :upside_down_face:

To be honest all of our lighting is calculated offline in Vray or Cycles, so I don’t think switching to UE5 would make much difference in our use case. We have real time lights disabled in the project settings.

Automatic LOD Generation would actually be a massive help though, as we haven’t gotten around to implementing this yet.

Baking everything offline has increased the memory usage, but nothing compared to what nanite would require.

This is a good video that goes in depth into how Nanite works.

Instead of virtualized geometry, they could build tools that automate the tech art process as well:

This new trend of gaming studios to simply not bother with optimization, find shortcuts like upscaling and TAA, are going to eventually come back to bite them.

Thanks for the reply. The only thing that puzzles me now is, from what I know the direction Unity China was driven largely by mobile devs. So it is curious why they went for features like virtual geometry, as like you say most phones probably can’t use it.

phones in china on average are more advanced that those in the west for a couple of reasons.

embargoes and sanctions against Chinese meant hardware and software development split between western countries and the chinese which resulted in advanced but cheaper devices. which means more people have access to flagship like types of phones that can run high end graphics comparing with western countries.

phones in china are the main and only device that most people have, where in the west more people will have multiple type of devices like desktop computers, laptops or consoles. and if you have the choice you tend to play games on more comfortable devices instead on the phone. but in china, you play game on phones or you don’t play them at all. having the phone as the main device to do stuff digitally will push the people to get the best they can find, another reason why improvements in mobile tech is more advanced there.

Yes, agreed. Unlike ray tracing, Nanite is not something you can really toggle off for lower specs.

Our current target spec is providing an excellent experience on RTX 3060. The bigger UE5 games barely run on this most popular graphics card and appear to suffer in terms of sales.

Would prefer HDRP focus remains on improved performance rather than more features. It looks good enough. I’m more interested on bringing handhelds into the fold. Steam Deck is no easy target for HDRP currently.

This doesn’t make sense. Modern VR is 4k per eye, which is double the work necessary for a regular 4k monitor. And VR is 90Hz minimum, 120hz recommended for an optimal user experience so people don’t get sick. Running Unreal’s advanced graphical features at those framerates at nearly 8k resolution is not possible, especially on something like Quest 3s, which is the defacto standard for current gen VR targets.

Similarly, mobile developers target all devices possible, including older devices. Nanite works only on the most cutting edge phones, which is not a realistic business target for a mobile based company. Same with other Unreal’s advanced rendering features. In general, when doing mobile you’re going for the lowest common denominator. Unreal’s fancy rendering is entirely mid to high-end PC/Console territory.

And having the rendering prowess/look of an AAA game, while not matching content quantity, quality and basically everything else is a recipe for failure. Why would you want to compete with AAA?

As I explained to the stakeholders, you wouldn’t be able to use those advanced graphical features and still target mobile web browsers. We’re barely making it through with 2 million poly count, completely static scene, unlit shaders and it only just works. I don’t think adding motion blur or auto exposure is going to be possible.

Not all of them, but a few non technical people saw the UE5 demo and thought it would run on their laptop browser. I do believe a few business decisions have been made based on similar assumptions.

Post Processing camera effects (Depth of Field, motion blur, lens flare, chromatic abrasion, vignette etc) are note applicable to VR either.

Although would be good to toggle those features for higher end devices.

I would prefer unity just to make an easy way to make mesh lods and billboards.
It is easy, it is just works. Everywhere.
Plus update API to manage additive scenes.

What’s the plan after U6.1?