idTech 666: The Secret of DOOM's Render
Subscribe:  iCal  |  Google Calendar
7, Mar — 12, Jun
San Francisco US   19, May — 24, May
Krakow PL   21, May — 23, May
London GB   29, May — 1, Jun
Birmingham GB   1, Jun — 4, Jun
Latest comments
by Assignment help
49 min ago

Our expert guides dependably work in a state of harmony with the necessities given to us, and this makes our task arrangement a perfect one. We provide best Online Assignment Help . Allassignmenthelp deals with all the contextual investigations and assignments relating to aces.

by Matthieu CHOLLET
12 hours ago

Lovely work ! You mentioned "When lighting the scene, I used Light Functions to create the illusion of light passing through clouds, thus lighting the environment unevenly" do you think you could show what is the setup to get such a precise result ?(meaning highlight the area you want?)

by Emanuel
20 hours ago

Amazing art. I'm curious how the rocks manage to be such a natural part of the terrain! It really looks like they have been there for ages.

idTech 666: The Secret of DOOM's Render
5 August, 2016

SIGGRAPH 2016 had a lot of very interesting technical talks from some of the best programmers and artists working in game development. One of the highlighted talks of last week was the description of the technology used to render DOOM. The game features amazing 3d visuals and mind-blowing 60 FPS. To achieve this the team of developers, including Tiago Sousa & Jean Geffroy had to invent a lot of clever technical things.


The talk itself is not yet featured on the SIGGRAPH website, but you can download the slides from the presentation and read the text of the whole talk (which is even better).

At a high level a frame in DOOM looks something as this. We do a Hybrid approach, by using opaque passes and deferred for a nice quality / performance ratio. Using Forward also has some auto-magic benefits for quality ( which we will talk soon ) and things like MSAA. As you might have guessed, being Forward forces us to prepare all lighting and shading data ahead of time as much as possible. That means things like the data structure used to index into things like Light sources, are prepared ahead of time. Shadows are other obvious case. We do quite some work keeping costs down here, resorting to things like caching and smart composite to mitigate costs when update required.

For the deferred stage, we output the minimal data required for doing things like reflections, specular occlusion and so on. I mention approximated times has times are always variable. For example posts can grow when DOF is enabled or some game related Post Process – albeit posts run in Async on consoles and Vulkan.Or the usual Particles, where we can get cases with some heavy overdraw.

To achieve the incredible speed developers kept the amount of shaders to a minimum. There are about 100 unique shaders and the team believes it could actually be less if some tidy up.

Here’s just some slides to show how the team worked with lighting.


2016-08-05_12-55-54 2016-08-05_12-55-36 2016-08-05_12-55-20

2016-08-05_12-55-03 2016-08-05_12-53-40 2016-08-05_12-50-41

You can download the full version of the lecture here (addition). Don’t forget to go over those slides. There’s a lot of very interesting stuff there if you’re into rendering.

Leave a Reply

Be the First to Comment!