Virtual Mesh 02: Triangle Culling

This week I have finished implementing compute-based Triangle Culling. Instead of relying on hardware to drop small or out of frustum primitives, the meshlet pipeline allows this to be done before rendering has even started. This reduces the pressure on both programmable and fixed-function vertex processing units, which in turn may give a nice performance win.

Virtual Mesh currently supports the following methods of per-primitive culling:

Performance-wise, this results in a whopping 67% speed-up for shadows and 15% for the main view. While my solution benefits from triangle culling on this particular hardware, the outcome is dependent on mesh shader usage, GPU vendor/architecture, and many other factors.

01: Occlusion Culling < – > Coming Soon