If I wanted to build a primitive object such as a cube, in world space; based on my understanding of the programming guide the recommended workflow would look something like:
- Initialize an instance of gvdb
- define a Vector3DF list of the desired voxel locations in world space (we’ll call it “CubeList”)
- call gvdb.ActivateSPace on each point in “CubeList”
- define a compute kernel which uses surf3Dwrite to update channel 0 from a low value to a high value if the voxel’s world position matches a point in “CubeList”
- after the compute kernel call gvdb.UpdateAtlas() to update the apron
Does this seem like a good workflow, or is there a more efficient method that would be recommended? Also, after the compute kernel would I need to call: gvdb.RebuidTopology and gvdb.FinishTopology?
Thank you in advance for the insight!