Forum archive
Is a quadratic intermediate buffer better?
- After I had a look at your GROUDRAW-Demos, I decided to restart working on my heightfield-rasterizer again (the idea is to have a sort of extension to standart texture mapping where every texel has also a height value).
My approach would have been to use a linear buffer and render everything in a single pass by using horizontal and vertical scanlines, instead of rendering into an two-dimensional buffer and then transform this to get 6DOF.
I'm sure that you thought about this too, and decided to use a quadratic buffer instead. What were your reasons (besides the implementation complications)?
Also the scanline traversal seems to be a pain. The best solution i came up with so far is having 4 different scanning innerloops, one for each main direction on the HF. Do you have some neat optimization trick for this? :)
Also, did you ever think about seperating the color and height information (in a non-aligned fashion) so that you could reuse textures an different parts of geometry?
BTW, it would be really nice if you could make a small tutorial explaining the voxlap technique (especially the optimisations in scanning, inner loop, ...) because I think that voxlap is the only 6DOF Voxel renderer so far and as such of scientific interest :) My approach would have been to use a linear buffer and render everything in a single pass by using horizontal and vertical scanlines, instead of rendering into an two-dimensional buffer and then transform this to get 6DOF.
Have you actually tried implementing your approach? I'm a little curious how your wave surfing would work if your planes would not be perpendicular to the ground. The GROUDRAW demos all take advantage of vertical ray coherence, an idea which is described nicely by this tutorial: http://www.flipcode.com/articles/voxelland_part02.shtml (I use wave surfing - raycasting style)I'm sure that you thought about this too, and decided to use a quadratic buffer instead.
I guess you're talking about curves, but I have no idea how that's related to voxel rendering.Also, did you ever think about seperating the color and height information (in a non-aligned fashion) so that you could reuse textures an different parts of geometry?
No, not really. I'd rather use a tiled grid to save memory.BTW, it would be really nice if you could make a small tutorial explaining the voxlap technique (especially the optimisations in scanning, inner loop, ...)
At some point, I might release some technical demos that show how small parts of the engine work. These should be just as good as a tutorial.