Struct representing contact shadow parameters. Screen-space ray-marched shadows that add fine detail at object contact points where shadow maps lack resolution.
More...
#include <light.h>
Struct representing contact shadow parameters. Screen-space ray-marched shadows that add fine detail at object contact points where shadow maps lack resolution.
Definition at line 344 of file light.h.
◆ enabled
| bool unravel::light::contact_shadow_params::enabled {false} |
Whether contact shadows are enabled for this light.
Definition at line 347 of file light.h.
◆ n_dot_l_fade_end
| float unravel::light::contact_shadow_params::n_dot_l_fade_end {0.475f} |
N·L smoothstep high edge: at or above this, contact shadow has full strength.
Definition at line 357 of file light.h.
◆ n_dot_l_fade_start
| float unravel::light::contact_shadow_params::n_dot_l_fade_start {0.0f} |
N·L smoothstep low edge: below this, contact shadow fades out (surface faces away from light).
Definition at line 355 of file light.h.
◆ normal_facing_reject
| float unravel::light::contact_shadow_params::normal_facing_reject {-1.0f} |
If in [0, 1], reject ray hits whose reconstructed occluder normal faces the light more strongly than this cosine (reduces false self-contact). Below zero disables.
Definition at line 360 of file light.h.
◆ ray_length
| float unravel::light::contact_shadow_params::ray_length {0.2f} |
Maximum ray length in view-space units. Shorter = tighter contact detail, longer = catches more occluders but may produce artifacts on thin geometry.
Definition at line 350 of file light.h.
◆ thickness
| float unravel::light::contact_shadow_params::thickness {0.15f} |
View-space depth comparison thickness for ray hits. Zero uses automatic thickness from ray length (legacy 15 percent of ray length).
Definition at line 353 of file light.h.
The documentation for this struct was generated from the following file: