Jump to content

Hedgehog Engine 2 - Deferred Rendering

From HedgeDocs
Revision as of 18:46, 11 July 2025 by Justin113D (talk | contribs) (Created page with "Deferred rendering is a rendering technique used in Hedgehog Engine 2 games. The “standard” way of rendering is called “forward rendering”, and simply draws one mesh after another, including all the lighting calculations. But since one mesh can hide a significant portion of another, many of those lighting calculations go to waste and could be better spent elsewhere. This is where deferred rendering comes in: Instead of calculating the lighting for every mesh in...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Deferred rendering is a rendering technique used in Hedgehog Engine 2 games.

The “standard” way of rendering is called “forward rendering”, and simply draws one mesh after another, including all the lighting calculations. But since one mesh can hide a significant portion of another, many of those lighting calculations go to waste and could be better spent elsewhere.

This is where deferred rendering comes in: Instead of calculating the lighting for every mesh individually, a meshes rendering properties can be stored in multiple frame buffers, which can then be composited together and achieve a similar result!

An Example

Here are some example frame buffers for a scene that uses deferred rendering, captured in Kingdom Valley from Shadow Generations:

The albedo buffer of Kingdom Valley in Shadow Generations
The albedo buffer of Kingdom Valley in Shadow Generations

The albedo buffer

The normal buffer of Kingdom Valley in Shadow Generations
The normal buffer of Kingdom Valley in Shadow Generations

The specular, inverted smoothness and ambient occlusion buffer

The specular, roughness and ambient occlusion buffer of Kingdom Valley in Shadow Generations
The specular, roughness and ambient occlusion buffer of Kingdom Valley in Shadow Generations

The normals buffer

The emission buffer of Kingdom Valley in Shadow Generations
The emission buffer of Kingdom Valley in Shadow Generations

The Emission buffer

Drawbacks

While faster than forward rendering, this technique is not perfect and has several drawbacks:

  • Requires more GPU memory to store the frame buffers
  • Does not allow for transparency blending
  • No multi-sample-anti-aliasing (MSAA)

Since transparency is a very important feature, only opaque and punch-through meshes use deferred rendering, while transparent meshes get drawn after the deferred buffers have been combined.

Cookies help us deliver our services. By using our services, you agree to our use of cookies.