Subject Area

Computer Science

Abstract

Modern video games must render scenes with increasingly complex geometry. Technologies like Nanite in Unreal Engine 5 enable the handling of scenes with significantly higher object and triangle counts than ever before. This project draws inspiration from Nanite by operating on triangle clusters, allowing artists to focus solely on creating high-poly meshes. The primary objective is to implement fine-grained culling techniques on meshlets, combined with efficient meshlet instancing, to reduce render time and memory usage.

Meshlet instancing plays a crucial role in optimizing rendering performance by allowing multiple objects sharing the same geometry to be rendered efficiently. Instead of duplicating geometry data for every instance, meshlet instancing reuses meshlet data while applying different transformations, significantly reducing memory overhead and draw calls. This approach is particularly beneficial in scenes with a high number of repeated objects, such as forests or urban environments.

Unlike mesh-level culling, which requires the entire mesh to be out of view, these techniques can discard clusters even when parts of the mesh remain visible. While triangle-level culling offers the finest granularity, it involves a trade-off between the time spent on additional culling computations and the actual performance gains. Meshlet culling strikes a balance between the coarser granularity of meshes and the finer detail of triangle-level culling, while meshlet instancing ensures that shared geometry can be rendered efficiently at scale.

Degree Date

Spring 5-17-2025

Document Type

Thesis

Degree Name

M.I.T.

Department

Programming

Advisor

Matt Butler

Format

.pdf

Creative Commons License

Creative Commons Attribution-Noncommercial 4.0 License
This work is licensed under a Creative Commons Attribution-Noncommercial 4.0 License

Share

COinS