2
\$\begingroup\$

It sounds like a bit of a stupid question; why would anyone want technology for triangle-per-pixel rendering in a low poly aesthetic game? The answer is that Nanite offers continuous LOD with high performance. For my game, I want the geometry to look good and have a consistent level of detail from both close-up and far away while not relying on the graphics card being able to swap and hold the entire high-res model in memory. This situation is warranted in the case of extreme size-changing mechanics (detail is a matter of player scale/distance!) and dense, varied scenes (enormous space stations, BLAME!, etc.) where decomposing the model into smaller elements presents a serious challenge.

The questions, then, are:

  • Can Nanite be adapted to target larger triangle sizes?
  • Can Nanite, under the above condition, run on older/weaker hardware than it otherwise could?
  • Is this possible from within the UE5 GUI, or does it require modifying the source code? If so, to what extent?
\$\endgroup\$

1 Answer 1

2
\$\begingroup\$

Yes to all, but with caveats.

Looking at the Nanite deep dive slides, you can see that the continuous LOD breakthrough is in how meshes are decomposed into a DAG of triangle (or cluster-) clusters, where the cluster boundaries are not shared between levels - hence forming a DAG instead of a tree. Aided by the some clever error metrics, this results in a very fast CLOD solution which can be adapted to any desired triangle size.

However, part of the efficiency of the whole Nanite pipeline comes from the fact that cluter<->triangle transitions at the pixel scale don't pop. Moving to larger triangles would introduce the need for a geomorphing or blending operation that would balloon rendering cost. Then again, for a sufficiently low poly aesthetic, the reduced number of triangles to draw would make up for it.

For scaling to lower-end hardware, the entire virtualized geometry process relies on the modern programmable pipeline. In principle, you could write a CPU implementation of the CLOD system, but it would not be as efficient per-vertex as Nanite. That aside, if the issue is just the available FLOPs, Nanite scales very well and and would benefit more from a reduced number of instances and larger clusters/triangles than lower triangle counts.

DISCLAIMER: I am an amateur gamedev, and Nanite is breakthrough technology. It is entirely possible I have some details incorrect. Please read the slides for yourself - they are very good.

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .