I am writing a voxel ray caster that implements a form of an N^3 tree. The voxels are stored in a large chunk pool of size 1024^3 and is segmented into 32^3 chunks. The chunk pool needs to be updated every frame either once or multiple times.
I have all the rendering working on sample data of a 3D texture I generated with a compute shader. I just can’t seem to figure out how to update N^3 chunks of a 3D texture.
I have come across glMapBufferRange and glTexSubImage3D. How do I efficiently stream portions of a 3D texture to the GPU?