[SOLVED] Multiple vs Single VertexBuffer per chunk in Voxel Game for optimal performance

Hi all,
I’ve been working on a simple Voxel engine for the last few days, to experiment with 3D in MonoGame. Now I’ve come to the stage where I would like to optimise the rendering performance and reduce memory footprint when drawing neighbouring chunks. At the moment I am using 1 VertexBuffer per cube, I’ve done some research into the topic and some people have mentioned that they use 1 VertexBuffer per cube face (6 per cube), does this result in better performance (with culling and other techniques)? or would it be better to minimise and combine the VertexBuffers of the visible terrain for that chunk?

Thanks in advance!

I already create a voxel prototype and use one VerteBuffer per chunk.

1 Like

Thanks, that’s what I thought would be the case, as I am currently using one per cube which is very inefficient and laggy. Perhaps I should use a DynamicVertexBuffer for the chunk which the player is in, as it may be modified often, when a player is mining / building, etc. ?

Hey, I update the DynamicVertexBuffer when the player mining / building but there are maybe a better option