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 Build engine'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 Daggerfall communities, kindling the hope that through open source and collaboration solid voxel support will be implemented in many ports.
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. A Shadow Warrior Port by ProAsm proves that voxel objects in hardware accelerated 3D engines are possible.
- 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.
- Many people reported that Voxels cause lag when they are many Voxels installed and play, especially in OpenGL renderer. The only good explanation about that subject is that OpenGL rendering method tries to render the Voxels, but horribly fails.
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. There is even a Wolfenstein inspired open-source game called Voxelstein 3D which is using the VOXLAP engine by Ken Silverman (programmer of the Build engine).