Systems and methods for reproduction of shadows from multiple incident light sources
AssigneeTake-Two Interactive Software, Inc.
InventorsRowan WYBORN, Mathi NAGARAJAN
Life of this patent
Estimating the term…
Abstract
Systems and methods are provided for simulating shadows in a scene. In an embodiment, two or more light sources that cast shadows from objects are identified. Each of those light sources is then assigned to a channel in a shadow mask buffer. The shadows are then accumulated into the shadow mask buffer and may be combined with corresponding lights to render the scene.
Claims16
1-25. (canceled)
A computer processor implemented method for rendering shadows from multiple light sources in a 3D computer graphics scene, where the scene has an associated binary space partition (BSP) comprising a number of leaves, the method comprising:
- generating a list identifying the light sources that affect each of a plurality of the BSP leaves;
- assigning each of the light sources on the list to a channel in a shadow mask buffer, wherein the shadow mask buffer has a plurality of channels, the assigning step comprising:
- calculating the amount of overlap between each pair of lights on the list;
- prioritizing the assigning light sources with high degrees of overlap to different channels from one another;
- generating shadows cast by each light source and accumulating the results into the light source's assigned channel;
- generating the final 3D computer graphics scene using the shadow mask.
A computer implemented method for simulating shadows in a 3D graphics scene having a plurality of light sources, including static and dynamic light sources, casting shadows comprising:
- generating a binary space partitioning (BSP) having a plurality of leaves;
- determining which static light sources each BSP leaf receives light from and adding those light sources to a list recording the light sources that affect each BSP leaf;
- determining which BSP leaves are visible;
- determining the dynamic light sources that effect each visible BSP leaf and adding those light sources to the list;
- assigning the light sources to a channel of a shadow mask buffer having a plurality of channels;
- rendering the shadows generated by each light source into its respective channel of the shadow mask buffer;
- rendering the final 3D computer graphics scene using the shadow mask buffer.
A computer processor implemented method for rendering shadows from static and dynamic light sources in a 3D computer graphics scene, where the scene has an associated binary space partition (BSP) comprising a number of leaves, and a list identifying the static light sources that affect each of a plurality of the BSP leaves, the method comprising:
- determining which BSP leaves receive light from the dynamic light sources and adding those light sources to the list entry for those BSP leaves;
- assigning each of the light sources on the list to a channel in a shadow mask buffer, wherein the shadow mask buffer has a plurality of channels, the assigning step comprising:
- calculating the amount of overlap between each pair of lights on the list;
- prioritizing the assigning light sources with high degrees of overlap to different channels from one another;
- generating shadows cast by each light source and accumulating the results into the light source's assigned channel;
- generating the final 3D computer graphics scene using the shadow mask.
Dependencies are inferred from the claim text.