I’m trying to figure out how to improve performance in my voxel engine, and one of the things I’m considering is using flat specialmeshes in parts instead of baseparts alone. If I understand them correctly, putting the scale of a specialmesh as (1, 0, 1) would reduce the triangle count of a part by a factor of 6. Instead of rendering visible blocks in my game, I could instead render visible faces, allowing me to potentially reduce the tri count and rendering overhead significantly. Is there anyone who’s done something similar or could confirm this would work? The only thing I’m concerned about is the large number of meshes I’d be creating. I’ve implemented greedy meshing, so I wouldn’t be using a new mesh for each part, but instead for each visible face of a cuboid. My number of instances would go up significantly, but since I pre-instance parts (then resize, reparent, and reposition them), this shouldn’t be too much of an issue.
It’d add a significant amount of noise to Parts - which are already incredibly efficient.
Also a Special mesh is still rendered as a cube even if it’s flat because the geometry is still there, it doesn’t merge the vertices just because they occupy the same space. And this isn’t even acknowledging the mess of Part collision inaccuracies you’ll have as a result.
In short, this likely isn’t a valid solution and would just make performance worse.
1 Like