Nanite is the new and improved virtualized geometry system implemented in Unreal Engine 5. Nanite provides a internal format for imported meshes, creating “Nanite Meshes” instead of the previous “Static Meshes”. Through the use of new rendering technology Nanite is able to render pixel scale and high poly counts effortlessly. Nanite harnesses new Level of Detail (LOD) rendering methods which allow for differing detail and polycounts from every unique perspective.
Geometry Complexity – The most evident benefit is the massive increase in geometry complexity and overall polycounts able to be rendered in real-time.
Photogrammetry Assets – The ability to import complex Geometries directly into engine allows artists to work more freely and efficiently with photogrammetry assets, bringing true reality into all projects without the concern of multi-million polycounts.
Frame Budget – Frame budgets are no longer limited by polycounts, draw calls or mesh memory usage.
Automatic LOD – Level of details are now automatically set-up upon importing, improving artists workflows through removing the need of manual individual mesh LOD set-ups.
How Nanite Works?
Nanite is a process which starts at the initial importation of the mesh, during the importation Nanite will analyzes and breaks down data into individual clusters of triangles. After the importation process has organised the relevent clusters, the rendering process works off these clusters and swaps between them in real-time to provide the correct level of detail for that current camera perspective. The data of the Nanite asset is streamed in on demand so that only the relevant visible data is held within the memory, once again automatically optimizing the scene for artists.
With the new Nanite geometry system comes several visualization modes to see exactly how Nanite is working within your scene. The related Modes are as follows:
- Overview – Overview provides users with a reference image in the center of the screen and 8 individual viewports surrounding showing the same scene.
- Mask – Visualization that marks Nanite (green) and Non-Nanite (red) geometry.
- Triangles – Displays all triangles of the Nanite meshes in the current scene.
- Clusters – Displays colored representations of all grouping of triangles being rendered in the current scene view.
- Primitives – Visualization that colors components all the same color for all instances in an Instance Static Mesh.
- Instances – Visualization that applies a different color for each instance in the scene.
- Overdraw – Displays the amount of overdraw happening for scene geometry. Smaller objects that are closely stacked together create more overdraw than larger ones.
- Material Complexity – Displays the complexity of the materials on Nanite geometry.
- Material ID – Displays separate colors for each Material ID of individual Nanite meshes.
- Lightmap UV – Visualization that displays the UV coordinates of Nanite mesh surfaces.