Abstract
A method for rendering sun shadows that decides visibility once per receiving surface, from the light's side, instead of tracing a shadow ray for every pixel. Each receiver (a light-facing face of a primitive, a region of a rounded face, a small or carved primitive, a coarse stand-in, or a ground tile) is classified against exactly the occluders its reference shadow rays can meet: LIT when no occluder's outer bounding box, grown by a floating-point margin, meets the shaft swept toward the light; DARK when every ray crosses one opaque occluder's inner box, proven to lie inside its solid; EDGE when at most six occluders remain, which the pixel tests exactly; OVERFLOW, which is split into patches; or UNKNOWN, which falls back to the reference ray. Verdicts are computed off the frame, kept in a CPU store and a tagged GPU cache, and invalidated through light-space bins when something changes. A light-space relief map of nearest and fully shadowing depths settles or shortens the remaining rays. A verify mode compares every answer with the reference ray, so the cache changes the cost of shadows but never the image.
Creative Commons License

This work is licensed under a Creative Commons Attribution 4.0 License.
Recommended Citation
Kimberlin, Kyle, "Sun Shadows Decided Per Receiver from the Light's Side", Technical Disclosure Commons, ()
https://www.tdcommons.org/dpubs_series/12433