Deferred renderer: Difference between revisions
m (→External Links) |
No edit summary |
||
Line 1: | Line 1: | ||
__NOTOC__ | |||
{{DISPLAYTITLE:Deferred lighting}} | {{DISPLAYTITLE:Deferred lighting}} | ||
{{Stub}} | {{Stub}} | ||
Line 6: | Line 7: | ||
==Availability== | ==Availability== | ||
Very few Source games utilize this lighting technique, as it is very complicated to implement, the games that do use this are listed here: | Very few Source games utilize this lighting technique, as it is very complicated to implement, the games that do use this are listed here: | ||
*{{asd|4}} | *{{asd|4}} [https://code.google.com/archive/p/swarm-deferred/ OpenSource] | ||
*{{lw|4}} [https://github.com/Sandern/lambdawars OpenSource] | |||
*{{van|4}} | |||
*{{p2d|4}} | |||
*{{bms|4}} | *{{bms|4}} | ||
*{{hammer|4}} (Lighting Preview in Stock HL2 and {{strata|4}}) | *{{hammer|4}} (Lighting Preview in Stock HL2 and {{strata|4}}) | ||
Line 12: | Line 16: | ||
==Differences from stock Source radiosity== | ==Differences from stock Source radiosity== | ||
When compiling a map in any of Valve's games, each map is run through [[VRAD]], which takes data from all the light sources and compile them into a "lightmap" texture. While this does provide high-quality and variable lighting, it is completely static, save for the limited ability to toggle on some lights in a scene. The difference between radiosity and Deferred lighting is that Deferred lighting computes all its lights in real time. The game takes data from the normals of the object, its geometry, its albedo, and its specular lighting to create real time accurate lighting. | When compiling a map in any of Valve's games, each map is run through [[VRAD]], which takes data from all the light sources and compile them into a "lightmap" texture. While this does provide high-quality and variable lighting, it is completely static, save for the limited ability to toggle on some lights in a scene. The difference between radiosity and Deferred lighting is that Deferred lighting computes all its lights in real time. The game takes data from the normals of the object, its geometry, its albedo, and its specular lighting to create real time accurate lighting. | ||
{{ | |||
===Upsides:=== | |||
*Quite cheap realtime lighting and shadows | |||
{{todo|add more}} | |||
===Downsides:=== | |||
*Traditional antialiasing like MSAA might not work with it like in {{bms|2}}, but it depends how it was implemented into the game. As with {{asd|2}}, and {{lw|2}} is still supported. | |||
*{{only|{{asd}}}} All lightmaps are disabled and only deferred lighting lights the world. | |||
==Implementing Deferred lighting into Source 2013 SP== | |||
{{todo|Write a complete tutorial on how to do this with {{lw}}'s implementation as it's the most robust that is available to the public. | |||
The following directories contents need to be edited to implement deferred lighting: | |||
*game | |||
**Client | |||
***? | |||
**Server | |||
***? | |||
**Shared | |||
***? | |||
*materialsystem | |||
**stdshaders | |||
***? | |||
*public | |||
**renderparm.h | |||
}} | |||
== See also == | == See also == | ||
* {{asd|4}} | * {{asd|4}} |
Revision as of 07:56, 12 March 2024

Remember to check for any notes left by the tagger at this article's talk page.
Deferred lighting is an alternate lighting technique, which is much different from the default Radiosity lighting that comes with Source. It uses many different lighting passes to generate higher quality lighting, with real time shadows.
Availability
Very few Source games utilize this lighting technique, as it is very complicated to implement, the games that do use this are listed here:
Alien Swarm Deferred OpenSource
Lambda Wars OpenSource
- Template:Van
Portal 2: Desolation
Black Mesa
Hammer (Lighting Preview in Stock HL2 and
Strata Source)
Differences from stock Source radiosity
When compiling a map in any of Valve's games, each map is run through VRAD, which takes data from all the light sources and compile them into a "lightmap" texture. While this does provide high-quality and variable lighting, it is completely static, save for the limited ability to toggle on some lights in a scene. The difference between radiosity and Deferred lighting is that Deferred lighting computes all its lights in real time. The game takes data from the normals of the object, its geometry, its albedo, and its specular lighting to create real time accurate lighting.
Upsides:
- Quite cheap realtime lighting and shadows
Downsides:
- Traditional antialiasing like MSAA might not work with it like in
Black Mesa, but it depends how it was implemented into the game. As with
Alien Swarm Deferred, and
Lambda Wars is still supported.
- (only in
) All lightmaps are disabled and only deferred lighting lights the world.
Implementing Deferred lighting into Source 2013 SP

The following directories contents need to be edited to implement deferred lighting:
- game
- Client
- ?
- Server
- ?
- Shared
- ?
- Client
- materialsystem
- stdshaders
- ?
- stdshaders
- public
- renderparm.h
See also
External Links
Deferred lighting on Wkipedia
- Deferred Shading on LearnOpenGL (same basic principals apply)