Hey everyone, I have a few things I would like some advice on before I start this project.
I want to build a voxel based terrain engine that can be dynamically altered. I have experimented with marching cubes before and made some meshes and such in OpenGL and C++ but only basic stuff.
My aims for what I want to do is is have the terrain optimized (my old stuff would slow down real fast), The map / terrain data needs to small and at some point hopefully be able to be streamed to clients.
The terrain needs to be able to altered by the user.
I will be using XNA 4.0
Okay, So the first question is about storing the terrain data / volumetric data... I think I should be using chunks and or an Oct tree.
Normally when I have implemented an Oct tree I have used it for collision and such.. But for the voxels I would be using it to save memory for example for large areas of the same id type like air.
Would I use just chunks? or chunks that each are a Oct tree?
With XNA how is the best way of dynamically creating the meshes for each chunk? Is a content pipeline the wrong way to go because it cant be used dynamically? MeshBuilder class cant be used dynamically from what I have read?
How should I store the terrain data? With XNA? if i want to stream it later will should it be in a SQL database of some sort?