Efficient computation of shadows
First Claim
1. A method, comprising:
- determining a light-source polygon of a polygonal light source configured to emit light using a computing device, wherein the light-source polygon comprises a plurality of light-source vertices;
determining an occluding polygon using the computing device, wherein the occluding polygon is between the light-source polygon and a background surface;
determining a shadow of the occluding polygon on the background surface using the computing device by at least;
for each light-source vertex in the plurality of light-source vertices, determining a vertex-shadow region of the background surface corresponding to a shadow cast upon the background surface by the occluding polygon for light emitted from the light-source vertex,determining an umbra of the shadow of the occluding polygon based on an intersection of the plurality of vertex-shadow regions, anddetermining a penumbra of the shadow of the occluding polygon based on a convex representation of a union of the plurality of vertex-shadow regions; and
displaying at least part of the shadow of the occluding polygon using the computing device.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus are provided for displaying shadows of polygonal light sources. A computing device can determine a light-source polygon of a polygonal light source, where the light-source polygon includes light-source vertices. The computing device can determine an occluding polygon between the light-source polygon and a background surface. The computing device can determine a shadow of the occluding polygon on the background surface by: for each light-source vertex, determining a vertex-shadow region of the background surface corresponding to a shadow cast upon the background surface by the occluding polygon for light emitted from the light-source vertex, determining an umbra of the shadow based on an intersection of the vertex-shadow regions, and determining a penumbra of the shadow based on a convex representation of a union of vertex-shadow regions. The computing device can display the shadow.
-
Citations
20 Claims
-
1. A method, comprising:
-
determining a light-source polygon of a polygonal light source configured to emit light using a computing device, wherein the light-source polygon comprises a plurality of light-source vertices; determining an occluding polygon using the computing device, wherein the occluding polygon is between the light-source polygon and a background surface; determining a shadow of the occluding polygon on the background surface using the computing device by at least; for each light-source vertex in the plurality of light-source vertices, determining a vertex-shadow region of the background surface corresponding to a shadow cast upon the background surface by the occluding polygon for light emitted from the light-source vertex, determining an umbra of the shadow of the occluding polygon based on an intersection of the plurality of vertex-shadow regions, and determining a penumbra of the shadow of the occluding polygon based on a convex representation of a union of the plurality of vertex-shadow regions; and displaying at least part of the shadow of the occluding polygon using the computing device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computing device, comprising:
-
a processor; and a non-transitory computer readable medium configured to store at least executable instructions, wherein the executable instructions, when executed by the processor, cause the computing device to perform functions comprising; determining a light-source polygon of a polygonal light source configured to emit light, wherein the light-source polygon comprises a plurality of light-source vertices, determining an occluding polygon, wherein the occluding polygon is between the light-source polygon and a background surface, determining a shadow of the occluding polygon on the background surface by at least; for each light-source vertex in the plurality of light-source vertices, determining a vertex-shadow region of the background surface corresponding to a shadow cast upon the background surface by the occluding polygon for light emitted from the light-source vertex, determining an umbra of the shadow of the occluding polygon based on an intersection of the plurality of vertex-shadow regions, and determining a penumbra of the shadow of the occluding polygon based on a convex representation of a union of the plurality of vertex-shadow regions, and displaying of at least part of the shadow of the occluding polygon. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. An article of manufacture comprising a non-transitory computer readable medium configured to store at least executable instructions, wherein the executable instructions, when executed by a processor of a computing device, cause the computing device to perform functions comprising:
-
determining a light-source polygon of a polygonal light source configured to emit light, wherein the light-source polygon comprises a plurality of light-source vertices; determining an occluding polygon, wherein the occluding polygon is between the light-source polygon and a background surface; determining a shadow of the occluding polygon on the background surface by at least; for each light-source vertex in the plurality of light-source vertices, determining a vertex-shadow region of the background surface corresponding to a shadow cast upon the background surface by the occluding polygon for light emitted from the light-source vertex, determining an umbra of the shadow of the occluding polygon based on an intersection of the plurality of vertex-shadow regions, and determining a penumbra of the shadow of the occluding polygon based on a convex representation of a union of the plurality of vertex-shadow regions; and displaying of at least part of the shadow of the occluding polygon.
-
Specification