Technically this is not related to voxels ("volumetric pixels", so to say), which split the 3D space equally along all three axes. This is just a height map, a set of prisms, not entirely unlike a Doom map. Every prism has a regular fixed-size square base.
Reverse painters algorithm is still painters algorithm. You trade off the cost of a full screen clear before the frame, in return for eliminating overdraw
I remember how groundbreaking Comanche was. Now I learned that it was a result of the programmer's experience in the medical industries (CT/MRI scanning): https://en.wikipedia.org/wiki/Voxel_Space
When this was first posted I made a game with a port of this approach to AGS Engine. Nowadays AGS is much faster since we have improved a lot of things, but this wasn’t the case at the time, so I had to make a few little tricks to make the rendering work well with the engine at the time.
Technically this is not related to voxels ("volumetric pixels", so to say), which split the 3D space equally along all three axes. This is just a height map, a set of prisms, not entirely unlike a Doom map. Every prism has a regular fixed-size square base.
For 1992, this was mind-boggling though.
[Edit] ah ok they clarify later as a performance enhancement. I think it was pretty integral to the algorithm, but ok.
Wait why do they say painter's algorithm. Comanche and other such voxel terrain engines went front to back and never had overdraw.
Reverse painters algorithm is still painters algorithm. You trade off the cost of a full screen clear before the frame, in return for eliminating overdraw
I remember how groundbreaking Comanche was. Now I learned that it was a result of the programmer's experience in the medical industries (CT/MRI scanning): https://en.wikipedia.org/wiki/Voxel_Space
When this was first posted I made a game with a port of this approach to AGS Engine. Nowadays AGS is much faster since we have improved a lot of things, but this wasn’t the case at the time, so I had to make a few little tricks to make the rendering work well with the engine at the time.
https://github.com/ericoporto/i_rented_a_boat
It's interesting that the color maps seem to have shadows "built in", so that you get a 3D bevel effect from just looking at the color map.
I really love this kind of articles, so much to learn.
If you render columns instead of rows you can render near-to-far without a Y-buffer and with zero overdraw. :)