Z-texturing
First Claim
1. A method of producing a 3D image comprising:
- (a) applying texture coordinates to a texture mapper;
(b) using the texture mapper to resample a stored z texture map based on the texture coordinates;
(c) performing a depth blending in screen or eye space based at least in part on the accessed stored z texture map to specify data for depth buffering; and
(d) rendering an image based at least in pan on the depth buffered data.
1 Assignment
0 Petitions
Accused Products
Abstract
A graphics system including a custom graphics and audio processor produces exciting 2D and 3D graphics and surround sound. The system includes a graphics and audio processor including a 3D graphics pipeline and an audio digital signal processor. The same texture mapping hardware used for color texturing provides resampled z texturing for sprites with depth or other applications. A z blender performs a z blending operation in screen space to blend surface z values with z texel values to provide per-pixel mapping of resampled z textures onto sampled 3D surface locations. Z texels can represent absolute depths or depth displacements relative to primitive surface depth. The z texel values may add to or replace primitive surface z values, and a constant bias may be added if desired. The resulting depth values are used for occlusion testing. Z textures can be generated by copying out portions of an embedded z buffer and providing the copied depth values to the texture mapping hardware. Multiple z texel formats are supported.
-
Citations
17 Claims
-
1. A method of producing a 3D image comprising:
-
(a) applying texture coordinates to a texture mapper;
(b) using the texture mapper to resample a stored z texture map based on the texture coordinates;
(c) performing a depth blending in screen or eye space based at least in part on the accessed stored z texture map to specify data for depth buffering; and
(d) rendering an image based at least in pan on the depth buffered data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 9)
-
-
8. A method of producing a 3D image comprising:
-
(a) applying texture coordinates to a texture mapper;
(b) using the texture mapper to resample a stored z texture map based on the texture coordinates;
(c) performing a depth blending in screen or eye space based at least in part on the accessed stored z texture map to specify data for depth buffering;
(d) rendering an image based at least in part on the depth buffered data; and
(e) further including adding a bias value to a screen space blend of z texel values and rasterized surface z values.
-
-
10. A z blender comprising:
-
a first input adapted to receive at least one rasterized depth value corresponding to a pixel;
a second input adapted to receive at least one z texel value;
blend logic coupled to the first and second inputs, said blend logic blending the first input with the second input to provide a z blend for said pixel; and
further blend logic that adds a bias value to the z blend and provides at least one depth value for use in a hidden surface removal operation.
-
-
11. In a graphics pipeline including a texture mapper and an embedded z buffer, a method of performing z texturing comprising:
-
copying out at least a part of the embedded z buffer into a texture memory associated with the texture mapper; and
performing a z texture mapping operation based on the copied z texture.
-
-
12. A graphics chip including:
-
a graphics pipeline including a texture unit having an embedded texture memory, and an embedded frame buffer including a color frame buffer and a z buffer, wherein said embedded texture memory is configurable to store the z textures in any of a plurality of different formats. - View Dependent Claims (14, 15)
-
-
13. A graphics chip including:
-
a graphics pipeline including a texture unit having an embedded texture memory, and an embedded frame buffer including a color frame buffer and a z buffer, wherein said embedded texture memory is configurable to store the z textures in any of a plurality of different formats, wherein said embedded texture memory is configurable to store z texels in any of unsigned 8-bit, unsigned 16-bit or unsigned 24-bit formats.
-
-
16. In a graphics pipeline, a multi-stage texture environment pixel shader comprising:
-
a plurality of input selectors;
a texture environment operator coupled to the plurality of input selectors;
at least one intermediate value storage register; and
a z blender adapted to blend, in at least one stage, resampled z texel values with per-pixel primitive surface z values to provide blended z values for occlusion testing. - View Dependent Claims (17)
-
Specification