IP Library Granted Patent US 7,812,837
Granted Patent B2
US 7,812,837 · App. 11/741,945 · Granted Oct 12, 2010

Reduced Z-buffer generating method, hidden surface removal method and occlusion culling method

Assignee: Sony Computer Entertainment 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 7,812,837
App. No.
11/741,945
Granted
Oct 12, 2010
Kind
B2
Abstract

A rendering processing apparatus is provided which performs occlusion culling for excluding from rendering targets a hidden object behind another object as seen from a point of view, when given a plurality of objects. An object input unit stores a plurality of objects in an object storing unit. An internal volume generating unit generates an internal volume which is included in a target object. A reduced Z-buffer updating unit updates a reduced Z-buffer based on the internal volume. An external volume generating unit generates an external volume which includes the target object subject to culling test. A culling determination unit consults the reduced Z-buffer and performs a Z culling test on the target object based on the external volume.

Claims (17)

1. A reduced Z-buffer generating method comprising:

providing a reduced Z-buffer that stores, in a non-hierarchical manner, representative Z values for determining a positional relationship between plural objects or fragments constituting the objects in a depth direction, each representative Z value indicating one depth value, from a point of view, for a unit of once-grouped predetermined pixel blocks, each including a plurality of neighboring pixels; and

comparing the Z values of respective rasterized pixels in a pixel block of an object or a fragment to be rendered with the representative Z value of a corresponding pixel block stored in the reduced Z-buffer, and updating the representative Z value of the pixel block with a farthest Z value if the farthest Z value indicates lying closer to the point of view than the representative Z value of the pixel block does, the farthest Z value indicating lying the farthest from the point of view among the per-pixel Z values in the pixel block,

wherein the representative Z value of the pixel block in the reduced Z-buffer is updated only if the object or the fragment is rendered on all the pixels within the pixel block, and

wherein when comparing the Z values of the rasterized pixels in the pixel block of the object or fragment to be rendered with the representative Z value of the corresponding pixel block stored in the reduced Z-buffer, the representative Z value is exclusively compared with: a Z value of a pixel at a vertex of a polygon of the object or fragment falling within the pixel block; a Z value of a pixel at an intersection between an edge of the polygon and a border of the pixel block; and the Z values of pixels located at the pixel block corners, among the four corners falling within the polygon.

2. An occlusion culling method for excluding from rendering targets, an object hidden behind other objects as seen from a point of view, when given a plurality of objects, the method comprising:

providing a reduced Z-buffer that stores, in a non-hierarchical manner, representative Z values for determining the positional relationship between the objects in a depth direction, each representative Z value indicating one depth value, from a point of view, for a unit of once-grouped predetermined pixel blocks, each including a plurality of neighboring pixels;

comparing the Z values of respective rasterized pixels in a pixel block of an object to be rendered with the representative Z value of a corresponding pixel block stored in the reduced Z-buffer, and updating the representative Z value of the pixel block with a farthest Z value if the farthest Z value indicates lying closer to the point of view than the representative Z value of the pixel block does, the farthest Z value indicating lying the farthest from the point of view among the per-pixel Z values in the pixel block;

determining that the object has a possibility of being rendered if it turns out that at least one of the pixel blocks of the object to be rendered has any rasterized pixel having a Z value that indicates lying closer to the point of view than the representative Z value of a corresponding pixel block stored in the Z-buffer does; and

determining that the object has a possibility of being culled if, for every pixel block of the object to be rendered, a most significant per-pixel Z value, which indicates lying closest to the point of view among the per-pixel Z values in the every pixel block, indicates lying farther from the point of view than the representative Z value of the corresponding pixel block stored in the reduced Z-buffer does,

wherein when comparing the per-pixel Z values in a pixel block of the objects determined whether to be culled with the representative Z value of the corresponding pixel block stored in the reduced Z-buffer, the representative Z value is exclusively compared with: a Z value of a pixel at a vertex of a polygon of the external volume falling within the pixel block; a Z value of a pixel at an intersection between an edge of the polygon and a border of the pixel block; and a Z value of a pixel allocated at the pixel block corners, among the four corners falling within the polygon.

3. A hidden surface removal method for removing a hidden surface behind another object as seen from a point of view, when given a plurality of objects, the method comprising:

providing a reduced Z-buffer that stores, in a non-hierarchical manner, representative Z values for determining the positional relationship between fragments constituting the plurality of objects in a depth direction, each representative Z value indicating one depth value, from a point of view, for a unit of once-grouped predetermined pixel blocks, each including a plurality of neighboring pixels;

comparing the Z values of respective rasterized pixels in a pixel block of a fragment to be rendered with the representative Z value of a corresponding pixel block stored in the reduced Z-buffer, and updating the representative Z value of the pixel block with a farthest Z value if the farthest Z value indicates lying closer to the point of view than the representative Z value of the pixel block does, the farthest Z value indicating lying the farthest from the point of view among the per-pixel Z values in the pixel block; and

determining that the fragment has the possibility of being rendered if it turns out that at least one of the pixel blocks of the fragment to be rendered has any rasterized pixel having a Z value that indicates lying closer to the point of view than the representative Z value of a corresponding pixel block stored in the Z-buffer does,

wherein the fragment is excluded from rendering targets if for every pixel block of the fragment to be rendered a most significant per-pixel Z value, which indicates lying closest to the point of view among the per-pixel Z values in the every pixel block, indicates lying farther from the point of view than the re representative Z value of the corresponding pixel block stored in the reduced Z-buffer does, and

wherein when comparing the per-pixel Z values in a pixel block of the fragments with the representative Z value of the corresponding pixel block stored in the reduced Z-buffer, the representative Z value is exclusively compared with: a Z value of a pixel at a vertex of a polygon of the external volume falling within the pixel block; a Z value of a pixel at an intersection between an edge of the polygon and a border of the pixel block; and a Z value of a pixel located at a pixel block corner, among the four corners falling within the polygon.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 27, 2011
From: SONY NETWORK ENTERTAINMENT PLATFORM INC.
To: SONY COMPUTER ENTERTAINMENT INC.
Reel/Frame 027449/0380 →
CHANGE OF NAME Recorded Dec 26, 2011
From: SONY COMPUTER ENTERTAINMENT INC.
To: SONY NETWORK ENTERTAINMENT PLATFORM INC.
Reel/Frame 027445/0773 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2007
From: NAOI, JUNICHI
To: SONY COMPUTER ENTERTAINMENT INC.
Reel/Frame 019444/0602 →
Priority Claims (1)
JP 2006-141473 · May 22, 2006 · national
Continuity (1)
Related Publication 20070268290A1 · Nov 22, 2007