Complete deferred render pipeline for panda3d (Work in progress)
- Still allows some objects to have forward passes
- Pre-Renders depth to avoid overdraw
- with one bounce for indirect lighting / color bleeding
complete lighting and shadows via compute shader- Too slow, replaced by regular fragment shaders
-
Point Lights
- Either shadow casting or not
- When shadow casting, only use 2 perspectives
- Parabolic mapping
-
Directional Lights
- Sun only
- PSSM Shadows
-
Ambient Lights
- Darken or Bright
- Artist controlled Global Illumination
- Darken or Bright
-
Projector Lights
- Either shadow casting or not
- Only 1 perspective
- Projection texture
- Can be used for flashlights for example
-
Area Lights
- Caster is a rectangle
- Orthographic Lens
- Also supports projection texture
- Maybe Cone-Mapping
- Caster is a rectangle
- Only in areas where reflective materials are used
- and SSLR does not work well for the material
- like water patches
- and SSLR does not work well for the material
- Image based lighting
- Screen Space Local Reflections
- For specular materials
- Cheapest solution for reflections
- rare usage, because of performance
- Render only 2 perspectives, parabolic mapping
- Not updated every frame
- Focal Blur
- Movement Blur (edges)
- Mipmap based + in place 4x4 kernel
- Varying radius (DOF)
- Based on displacement map, or detail normals
- Height stored in z component of normalmap
- In combination with blur