[Epic] Shared ray-traced visibility pass (ray queue) for shadows, GI, reflections and lit shaders #1039
Labels
No labels
amd
avatars
bug
builder
cannot-reproduce
crash
epic
feature
from-viewer
gl-removal
known-limitation
monitoring
parity
perf
platform
priority
critical
priority
high
priority
low
priority
medium
provenance
rendering
rt
status
in-progress
status
testing
status
up-next
triage
ui
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Blocks
#849 Move projector-shadow ray queries out of the main lit shader
sky_line/Slipstream
#1044 Alpha-test rule exists in five or more forms that disagree
sky_line/Slipstream
#1041 RT hits and the lit shader let a lamp's own fixture shadow its light
sky_line/Slipstream
#1042 Older shadow core copy is missing the terminator escape-check fix
sky_line/Slipstream
#1043 Light cutoff fade missing from several light loops
sky_line/Slipstream
#1048 Duplicate copies: cluster-rig lift probe (3x), closest-hit walk (3x), god-ray sun ray
sky_line/Slipstream
#1045 RT hit material decode is a copy of the raster shading; RT terrain hits skip the terrain bake and hex tiling
sky_line/Slipstream
#1046 RT sky misses use a haze-only sky with no clouds
sky_line/Slipstream
#1047 The two sun shadow denoisers' history caps have drifted apart
sky_line/Slipstream
Reference
sky_line/Slipstream#1039
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Epic. Replace the ray-traced visibility walks that are inlined into many kernels with one shared visibility pass driven by a ray queue.
Why
The same walk (the candidate alpha test, transmission / foliage / blend-layer accumulation, the fixture rule) is inlined into the RT shadow visibility kernels, GI hit lighting (sun ray), RT reflection lighting (sun ray + blend layers), probe RT, and the forward lit shader's ray-query variants. The 2026-10-24 profiling (#1031 / #1036) showed:
Shape
Per-kind policies replace per-consumer special cases. For example, a GI-hit sun request can be opaque-only (#981), and weak point lights can skip their rays (#983).
Phases
Related
#849 (phase 3), #981, #983, #890, #1031, #1036. #256 (raster visibility buffer) is separate.
A design document comes first (agent design pass): request and result formats, kinds, consumer splits, memory budget, async scheduling, the expected pipeline count / compile-size reduction, plus a survey of other duplicated code and features in the pipeline that could be split out the same way.