Professional Services
Order outsourcing

Modernizing Retro 3D Games Visuals With Voxel Displacement Renderer

Daniel S. shared a video demo and in-depth breakdown of a custom renderer that uses very small voxels to produce a distinctive visual style that modernizes the look of classic 90s 3D games like DOOM and Quake.

In recent years, there's been a considerable increase in early to mid-90s 3D game aesthetics popularity, with the limitations of their visuals taking on a retro appeal. The environments were simple but imaginative with sharp pixel textures visibly standing out, becoming a big source of inspiration for modern retro-style indie titles in particular.

Developer Daniel S. started this project with a simple question: what if surfaces in these environments had voxels instead of pixies? As he writes, "For example, a cobblestone wall could pop with geometric depth while retaining a pixelated look when viewed up close". In other words, this project's idea is to connect both worlds – the original visuals of 90s games and something more modern-looking. Or, as Daniel puts it, "This is what DOOM looked like to me when I was young".

Image Credits: Daniel S.

Daniel's method essentially uses traditional low-poly meshes to model environments like those of old 3D games, applies displacement maps to define voxel-scale surface details, and renders a result that actually looks like it was built from voxels.

In the image above, you can see a close-up of the demo environment before and after the displacement. As Daniel explains, the brownstone arches were created as triangle meshes and then displaced, but the results look like they are assembled from voxels, even along the edges of the original mesh.

Image Credits: Daniel S.

With the technology ready to be used, there are two kinds of assets to create: textures and meshes.

This picture shows albedo and displacement maps for the gray stone block material along with the rendered result. "Large changes in displacement become voxel-scale geometry; subtler changes, like the ridges on the surface of each stone, may not become voxels but do affect how the surface is lit", commented the developer.

As for meshes, below Daniel presented the comparison of a Blender-modeled cave and a render. All the hard edges on the original entrance have become detailed according to the displacement of the stone texture.

Image Credits: Daniel S.

Daniel highlights, that approaching the voxel aesthetic in this way has some major benefits, for example, you get to employ a familiar workflow, rather than having to use specialized voxel-editing software for your project. Authored textures can be also reused across various geometry without voxel-scale work.

And the most interesting part is, since with this renderer the environment is authored as triangle meshes, with the voxel features being only surface decoration, you can treat the environment as being polygonal geometry whenever it's convenient.

According to the description, the renderer demo on top of the article was captured on a Radeon RX 5700 XT at 1440p with frame times from 4 to 9 ms, or 250 to 110 FPS. The same demo sequence stays above 60 FPS on a Steam Deck OLED at its native 800p, with many parts locked at 90 FPS. And honestly, these visuals are gorgeous.

Image Credits: Daniel S.

Image Credits: Daniel S.

Right now, there's still room for improvement with a better lighting system, animated, smaller objects, decorations, and dynamic elements like enemies being next on Daniel's list. If you're a developer or studio who finds this work intriguing, please see Daniel's second post here.

We highly encourage you to read the original detailed post and follow Daniel S. on X/Twitter for more future updates on this incredible project. Also, don't forget to join our 80 Level Talent platform and our Telegram channel, follow us on InstagramTwitter, and LinkedIn, where we share breakdowns, the latest news, awesome artworks, and more.

Join discussion

Comments 0

    You might also like

    We need your consent

    We use cookies on this website to make your browsing experience better. By using the site you agree to our use of cookies.Learn more