# US 2014/0152662 A1 · Visibility silhouettes for masked spherical integration

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0152662 A1
- Document ID: US20140152662A1
- Status: Published application
- Kind: A1
- Application number: 13/692,482
- Filed: 2012-12-03
- Published: 2014-06-05
- Earliest claimed: 2012-12-03
- Assignees: Disney Enterprises, Inc.
- Inventors: Derek NOWROUZEZAHRAI; Ilya BARAN; Kenny MITCHELL; Wojciech JAROSZ
- Web page: https://patentgrep.com/patent/US20140152662A1

## CPC

- G06T 15/06: Ray-tracing
- G06T 15/40: Hidden part removal
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

The disclosure provides an approach for determining, in 3D rendering, the integrals of visibility-masked spherical functions using visibility silhouettes. For a given shade point, the visibility silhouette for that shade point includes a set of edges from the scene geometry which form the boundaries between visible and invisible regions of a hemisphere having the shade point as its center. For each shade point, a rendering application determines a set of contour edges of scene geometry, the contour edges being a superset of the set of visibility silhouette edges, by querying a 4D dual mesh. The rendering application then evaluates the integral of the visibility-masked spherical function for a given shade point by integrating over segments of discrete u-isolines for which an overlap function indicates that a ray from the shade point would not intersect scene geometry.

## Claims

### Claim 1

A computer-implemented method, comprising:
receiving geometry of a scene; and
for each of a plurality of shade points in the scene:
determining a visibility silhouette, the visibility silhouette having edges which define boundaries between visible and occluded regions from a perspective of the shade point, and
determining a spherical visibility-masked integral, wherein spherical visibility in the integral is represented by the visibility silhouette.

### Claim 2 (depends on 1)

The method of claim 1, wherein determining the visibility silhouette includes determining contour edges, and determining visibility silhouette edges from the contour edges.

### Claim 3 (depends on 2)

The method of claim 2, wherein the contour edges are determined by:
determining boundary edges of the scene geometry; and
processing 4D line segment representations of respective non-boundary edges of the scene geometry into a bounding volume hierarchy and querying the bounding volume hierarchy for intersection with a 3D hyperplane normal to the shade point, wherein the 4D line segments have triangles adjacent to the respective edges as endpoints.

### Claim 4 (depends on 2)

The method of claim 2, wherein the contour edges are projected onto a sphere, wherein edges of the visibility silhouette are determined based on changes in value of an overlap function at intersections between the contour edges and u-isolines of a parameterization of the sphere, and wherein the overlap function indicates whether geometry is intersected by a ray originating from the shade point.

### Claim 5 (depends on 4)

The method of claim 4, wherein the u-isolines do not cross back from a half-space which is invisible from the perspective of the shade point if the u-isolines cross into the invisible half-space.

### Claim 6 (depends on 2)

The method of claim 2, wherein the contour edges are projected onto an octahedron, wherein edges of the visibility silhouette are determined based on changes in values of an overlap function at intersections between the contour edges and u-isolines of a parameterization of the octahedron, wherein the overlap function indicates whether geometry is intersected by a ray originating from the shade point, and wherein the u coordinate of the octahedral parameterization is the x coordinate of the octahedron equation |x|+|y|+|z|=1.

### Claim 7 (depends on 6)

The method of claim 6, wherein the u-isolines do not cross back from a half-space which is invisible from the perspective of the shade point if the u-isolines cross into the invisible half-space.

### Claim 8 (depends on 2)

The method of claim 2, wherein determining the integral includes integrating a spherical function over segments of the u-isolines where the overlap function indicates the ray originating from the shade point does not intersect any scene geometry.

### Claim 9 (depends on 1)

The method of claim 1, wherein the integral is determined during one of glossy rendering, material editing, image relighting, all-frequency diffuse shading, and ambient occlusion computation.

### Claim 10

A non-transitory computer-readable storage medium storing instructions, which when executed by a computer system, perform operations comprising:
receiving geometry of a scene; and
for each of a plurality of shade points in the scene:
determining a visibility silhouette, the visibility silhouette having edges which are boundaries between visible and invisible regions from a perspective of the shade point, and
determining a spherical visibility-masked integral, wherein spherical visibility in the integral is represented by the visibility silhouette.

### Claim 11 (depends on 10)

The computer-readable storage medium of claim 10, wherein determining the visibility silhouette includes determining contour edges, and determining visibility silhouette edges from the contour edges.

### Claim 12 (depends on 11)

The computer-readable storage medium of claim 11, wherein the contour edges are determined by:
determining boundary edges of the scene geometry; and
processing 4D line segment representations of respective non-boundary edges of the scene geometry into a bounding volume hierarchy and querying the bounding volume hierarchy for intersection with a 3D hyperplane normal to the shade point, wherein the 4D line segments have triangles adjacent to the respective edges as endpoints.

### Claim 13 (depends on 11)

The computer-readable storage medium of claim 11, wherein the contour edges are projected onto a sphere, wherein edges of the visibility silhouette are determined based on changes in value of an overlap function at intersections between the contour edges and u-isolines of a parameterization of the sphere, and wherein the overlap function indicates whether geometry is intersected by a ray originating from the shade point.

### Claim 14 (depends on 13)

The computer-readable storage medium of claim 13, wherein the u-isolines do not cross back from a half-space which is invisible from the perspective of the shade point if the u-isolines cross into the invisible half-space.

### Claim 15 (depends on 11)

The computer-readable storage medium of claim 11, wherein the contour edges are projected onto an octahedron, wherein edges of the visibility silhouette are determined based on changes in values of an overlap function at intersections between the contour edges and u-isolines of a parameterization of the octahedron, wherein the overlap function indicates whether geometry is intersected by a ray originating from the shade point, and wherein the u coordinate of the octahedral parameterization is the x coordinate of the octahedron equation |x|+|y|+|z|=1.

### Claim 16 (depends on 15)

The computer-readable storage medium of claim 15, wherein the u-isolines do not cross back from a half-space which is invisible from the perspective of the shade point if the u-isolines cross into the invisible half-space.

### Claim 17 (depends on 11)

The computer-readable storage medium of claim 11, wherein determining the integral includes integrating a spherical function over segments of the u-isolines where the overlap function indicates the ray originating from the shade point does not intersect any scene geometry.

### Claim 18 (depends on 10)

The computer-readable storage medium of claim 10, wherein the integral is determined during one of glossy rendering, material editing, image relighting, all-frequency diffuse shading, and ambient occlusion computation.

### Claim 19

A system, comprising:
a processor; and
a memory, wherein the memory includes an application program configured to perform operations comprising:
receiving geometry of a scene; and
for each of a plurality of shade points in the scene:
determining a visibility silhouette, the visibility silhouette having edges which are boundaries between visible and invisible regions from a perspective of the shade point, and
determining a spherical visibility-masked integral, wherein spherical visibility in the integral is represented by the visibility silhouette.

### Claim 20 (depends on 19)

The system of claim 19, wherein determining the visibility silhouette includes determining contour edges, and determining visibility silhouette edges from the contour edges.
