Doom voxel project

The Doom Voxel Project is a project to convert many of Doom's items to a 3D voxel format. It began on 23rd February 2004 as the result of a thread posted on the Doomworld forums by Tony "Ghostpilot" Lindberg. Other forum members took an interest, and Lee "DooMAD" Wallis joined the project.

Despite suggestions that such a feature would never be supported in any source ports, work continued on the new voxel items. A simple web page was setup in order to show progress, but it disappeared shortly after, and development of the project ceased for several months. The project was revived on 1st January 2006, when DooMAD created a new webpage. It then lapsed into quiescence again.

A second revival happened in October 2010 when Stroggos expressed his intent of coding voxel support into a Doom source port. The perspective of actually seeing these voxel models in-game renewed interest in the project, with the creation of new models and the arrival of new contributors. This in turn motivated Randy Heit to port the 's voxel code to an experimental branch of ZDoom. To keep things in sync, Graf Zahl created an experimental branch of GZDoom with voxel support in the OpenGL renderer. Simultaneously, voxel project appeared as well in other retro-gaming communities, notably the Rise of the Triad and communities, kindling the hope that through open source and collaboration solid voxel support will be implemented in many ports.

Voxel objects have been used already in Shadow Warrior and Blood – two games based on an enhanced Build engine which was originally used in Duke Nukem 3D, one of the successors of Doom. A Shadow Warrior Port by ProAsm proves that voxel objects in hardware accellerated 3D engines are possible.

Problems to overcome

 * It is often claimed that voxels are inherently incompatible with OpenGL rendering, which many Doom source ports now use. This problem was solved in the aforementioned experimental GZDoom branch by converting voxels to the already-supported MD2 model format.


 * There is no accurate way to automatically convert a series of Doom sprites to a 3D voxel model. The work must be done by hand, which is very time consuming.