Lessico IT › Programmazione › Greedy meshing

Greedy meshing

Programmazione Svenska → Aggiornato: 2026-10-24

Algoritmo che riduce le facce esposte di un chunk di voxel al minor numero possibile di rettangoli grandi, abbattendo il numero di triangoli che un mesher ingenuo produrrebbe.

La mesh ingenua di un volume voxel genera due triangoli per ogni faccia visibile di un blocco: un singolo chunk diventa milioni di triangoli, per lo più piatti e nascosti. Il greedy meshing percorre ogni piano e ingrandisce i rettangoli finché le celle vicine condividono orientamento e texture, in modo «avido» (da cui il nome), fino a che non possono più crescere. Il risultato è la stessa silhouette con una frazione dei vertici e molte meno draw call.

La tecnica fu resa popolare intorno al 2012 dall'articolo di Mikola Lysenko e divenne standard nei motori voxel in stile Minecraft. Il compromesso: le facce unite perdono le informazioni per cella, per cui illuminazione per singolo voxel o texture uniche per blocco diventano macchinose e ci si appoggia a un texture atlas. Per superfici lisce e arrotondate si ricorre invece al marching cubes.

← Torna al lessico