IP Library Granted Patent US 8,390,621
Granted Patent B2
US 8,390,621 · App. 11/942,702 · Granted Mar 5, 2013

System and method for calculating multi-resolution dynamic ambient occlusion

Inventor: Henrik Carl Holmdahl (San Francisco, CA)
Assignee: Take Two Interactive Software, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,390,621
App. No.
11/942,702
Granted
Mar 5, 2013
Kind
B2
Abstract

A system and method for generating a three-dimensional image is provided. An embodiment of the present invention includes calculating the ambient occlusion at a vertex in multiple, independent stages. Determining the global AO at the vertex may be performed using a first technique. Determining the local AO at the vertex may be performed using a second technique. The total AO can be found as a function of the local AO and global AO.

Claims (48)

1. A computer program product tangibly embodied in a machine-readable storage device, the product comprising instructions operable to cause a data processing apparatus to:

receive a signal to produce an image, the image to include a first object;

determine the location of a vertex of the first object;

determine a global ambient occlusion (AO) at the vertex of the first object using a first technique;

determine a local ambient occlusion (AO) at the vertex of the first object using a second technique;

determine a total ambient occlusion (AO) at the vertex of the first object as a function of the local AO and global AO; and,

produce the image, the shading at the vertex of the first object to be dependent on the total AO,

wherein the image includes other objects formed on triangle-based models comprising a plurality of triangles and approximated by sphere-based models comprising a plurality of spheres,

wherein the local AO is determined as a function of the geometry of a set of triangles in the triangle-based model.

2. A computer program product tangibly embodied in a machine-readable storage device, the product comprising instructions operable to cause a data processing apparatus to:

receive a signal to produce an image, the image to include a first object;

determine the location of a vertex of the first object;

determine a global ambient occlusion (AO) at the vertex of the first object using a first technique;

determine a local ambient occlusion (AO) at the vertex of the first object using a second technique;

determine a total ambient occlusion (AO) at the vertex of the first object as a function of the local AO and global AO; and,

produce the image, the shading at the vertex of the first object to be dependent on the total AO,

wherein the image includes other objects formed on triangle-based models comprising a plurality of triangles and approximated by sphere-based models comprising a plurality of spheres,

wherein the global AO is determined as a function of the geometry of a set of spheres in the sphere-based model.

3. A computer program product tangibly embodied in a machine-readable storage device, the product comprising instructions operable to cause a data processing apparatus to:

receive a signal to produce an image, the image to contain a first object;

determine the location of a vertex of the first object;

determine a global ambient occlusion (AO) at the vertex of the first object using a first technique;

determine a local ambient occlusion (AO) at the vertex of the first object using a second technique;

determine a total ambient occlusion (AO) at the vertex of the first object as a function of the local AO and global AO;

produce the image, the shading at the vertex of the first object to be dependent on the total AO;

determine if a second vertex is a redundant vertex; and,

upon determining that a second vertex is a redundant vertex, not determining a total AO for the second vertex.

4. A computer program product tangibly embodied in a machine-readable storage device, the product comprising instructions operable to cause a data processing apparatus to:

receive a signal to produce an image, the image to contain a first object;

determine the location of a vertex of the first object;

determine a global ambient occlusion (AO) at the vertex of the first object using a first technique;

determine a local ambient occlusion (AO) at the vertex of the first object using a second technique;

determine a total ambient occlusion (AO) at the vertex of the first object as a function of the local AO and global AO;

produce the image, the shading at the vertex of the first object to be dependent on the total AO; and,

determine a set of spheres of the plurality of spheres that do not contribute to the AO at the vertex.

5. A computer program product tangibly embodied in a machine-readable storage device, the product comprising instructions operable to cause a data processing apparatus to:

receive a signal to produce an image, the image to contain a first object;

determine the location of a vertex of the first object;

determine a global ambient occlusion (AO) at the vertex of the first object using a first technique;

determine a local ambient occlusion (AO) at the vertex of the first object using a second technique;

determine a total ambient occlusion (AO) at the vertex of the first object as a function of the local AO and global AO;

produce the image, the shading at the vertex of the first object to be dependent on the total AO; and

determine a set of triangles of the plurality of triangles that do not contribute to the AO at the vertex.

6. The computer program product of claim 1 , wherein the data processing apparatus is a video game console.

7. The computer program product of claim 2 , wherein the data processing apparatus is a video game console.

8. The computer program product of claim 3 , wherein the data processing apparatus is a video game console.

9. The computer program product of claim 4 , wherein the data processing apparatus is a video game console.

10. The computer program product of claim 5 , wherein the data processing apparatus is a video game console.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Jul 22, 2020
From: LESLIE BENZIES; DAN HOUSER; SAM HOUSER; ANOTHER GAME COMPANY LP
To: TAKE TWO INTERACTIVE SOFTWARE, INC.
Reel/Frame 053276/0123 →
RELEASE OF SECURITY INTEREST Recorded Feb 14, 2019
From: WELLS FARGO CAPITAL FINANCE, LLC (F/K/A WELLS FARGO FOOTHILL, INC.)
To: TAKE-TWO INTERACTIVE SOFTWARE, INC.
Reel/Frame 048327/0555 →
CONFIRMATION OF SECURITY INTEREST GRANT (PATENTS) Recorded Oct 18, 2011
From: TAKE-TWO INTERACTIVE SOFTWARE, INC.
To: WELLS FARGO CAPITAL FINANCE INC.
Reel/Frame 027083/0001 →
SECURITY AGREEMENT Recorded Mar 23, 2009
From: TAKE TWO INTERACTIVE SOFTWARE, INC.
To: ANOTHER GAME COMPANY LP; HOUSER, SAM; HOUSER, DAN; BENZIES, LESLIE
Reel/Frame 022436/0328 →
Continuity (2)
Provisional Application 60886387 · Jan 24, 2007
Related Publication 20080218517A1 · Sep 11, 2008