render3d: under a fog wall the volumetric air is marched only to it, SSGI stops where it is solid, and card casters that fill the wall stop rebuilding
The volumetric pass marched 800 m in a fixed number of steps whatever the wall: it now stops at the wall with steps in proportion (at least 8) - 0.57 -> 0.33 ms at 30 m by the pass timers. SSGI skipped only past 900 m; it now also skips past 0.85 of a wall, where the fog is solid (u_ao_far). applyFog samples the fog's colour only where its weight is above zero. A card layer whose casters inside the wall are 80% or more of it (a kilometre's wall) casts from its static list and is not refiltered and re-uploaded every 4 m of camera motion. Fog off: the frame unchanged (0 pixels over 8). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
5b3cfac48e
commit
329439cf61
32 changed files with 36 additions and 14 deletions
|
|
@ -551,7 +551,7 @@ T 3e4b62f9 u_tershadow 8
|
|||
T 3e4b62f9 u_tershadow_aux 9
|
||||
T 3e4b62f9 u_ts_height 10
|
||||
P 676965ab fullscreen.vert ssgi.frag
|
||||
B 676965ab frag 1 984
|
||||
B 676965ab frag 1 1000
|
||||
U 676965ab frag u_cascade_vp 0 mat4 5 64
|
||||
U 676965ab frag u_cascade_split 320 float 5 16
|
||||
U 676965ab frag u_cascade_range 400 float 5 16
|
||||
|
|
@ -588,13 +588,14 @@ U 676965ab frag u_time 816 float 1 0
|
|||
U 676965ab frag u_fog_inscatter 820 float 1 0
|
||||
U 676965ab frag u_fog_desat 824 float 1 0
|
||||
U 676965ab frag u_fog_wall 828 float 1 0
|
||||
U 676965ab frag u_inv_proj 832 mat4 1 0
|
||||
U 676965ab frag u_proj 896 mat4 1 0
|
||||
U 676965ab frag u_texel 960 vec2 1 0
|
||||
U 676965ab frag u_radius 968 float 1 0
|
||||
U 676965ab frag u_intensity 972 float 1 0
|
||||
U 676965ab frag u_contact 976 float 1 0
|
||||
U 676965ab frag u_frame 980 float 1 0
|
||||
U 676965ab frag u_ao_far 832 float 1 0
|
||||
U 676965ab frag u_inv_proj 848 mat4 1 0
|
||||
U 676965ab frag u_proj 912 mat4 1 0
|
||||
U 676965ab frag u_texel 976 vec2 1 0
|
||||
U 676965ab frag u_radius 984 float 1 0
|
||||
U 676965ab frag u_intensity 988 float 1 0
|
||||
U 676965ab frag u_contact 992 float 1 0
|
||||
U 676965ab frag u_frame 996 float 1 0
|
||||
T 676965ab u_brdf 2
|
||||
T 676965ab u_depth 3
|
||||
T 676965ab u_irradiance 4
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue