With virtual reality, digital painting on 2D canvas is now being extended to 3D space. In this paper, we generalize the 2D pixel canvas to a 3D voxel canvas to allow artists to synthesize volumetric color fields. We develop a deep and dynamic octree-based painting and rendering system using both CPU and GPU to take advantage of the characteristics of both processors (CPU for octree modeling and GPU for volume rendering). On the CPU-side, we dynamically adjust an octree and incrementally update the octree to GPU with low latency without compromising the frame rates of the rendering. Our octree is balanced and uses a novel 3-neighbor connectivity for format simplicity and efficient storage, while allowing constant neighbor access time in ray casting. To further reduce the GPU-side 3-neighbor computations, we precompute a culling mask in CPU and upload it to GPU. Finally, we analyze the numerical error-propagation in ray casting through high resolution octree and present a theoretical error bound.
- CCS Concepts
- Volumetric models; Rendering
- •Computing methodologies → Virtual reality