Graphics system configured to determine triangle orientation...

Computer graphics processing and selective visual display system – Computer graphics processing – Attributes

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

Reexamination Certificate

active

06624823

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates generally to the field of 3-D graphics and, more particularly, to a system and method for determining the orientation of triangles which represent a graphical object.
2. Description of the Related Art
Prior art graphics systems have typically represented objects as a collection of triangles. Each triangle may comprise three vertices with assigned color values and represents a localized portion of some object. In certain situations, the two sides of a triangle may be treated differently by a rendering algorithm. For example, a triangle on the surface of an opaque sphere has a side interior to the sphere and a side exterior to the sphere. The interior side of the triangle may be invisible with respect to viewpoints outside the sphere. Thus, before transmitting the triangle to a rendering agent (which implements the rendering algorithm), some indication of the exterior side may be associated with the triangle vertex data. The rendering algorithm may detect the indication and selectively perform rendering computations only for the exterior side of the triangle.
More generally, triangles are assigned an orientation which selects one of the sides of the triangle prior to transmission to a rendering agent. The rendering agent may receive a stream of triangles (e.g. as a stream of vertices), and may determine the orientation of each triangle. Furthermore, the rendering agent may determine if the selected side of each triangle is front-facing or back-facing with respect to a current viewpoint. If the selected side of a triangle is back-facing, triangle rendering computations may be skipped. In prior art systems, determination of the triangle orientation has involved calculating at least a partial cross-product. Because the partial cross-product is a relatively slow computation, there exists a need for a system and method which could determine triangle orientation without performing a time-consuming cross product computation. Such a system and method may improve the performance of rendering agents (e.g. graphics rendering boards, software rendering applications, etc.) per unit cost.
SUMMARY OF THE INVENTION
A graphics system may, in one embodiment, comprise a rendering unit and a filtering unit (e.g. a convolve unit). The rendering unit may comprise one or more processors (e.g. DSP chips), dedicated hardware, or any combination thereof. The rendering unit may be configured to receive graphics data including three vertices defining a triangle. The vertices may be presented as coordinate pairs with respect to the coordinate axes of a virtual screen space. The rendering unit is further configured to generate a first octant identifier word for a first edge of the triangle and a second octant identifier word for a second edge of the first triangle. In most cases, the two octant identifier words determine the triangle orientation. In a few cases (i.e. in those cases where the two octant identifier words correspond to the same octant or opposite octants), the triangle orientation may be resolved by a comparison of the slopes of the first edge and the second edge.
In one embodiment, the rendering unit may perform further rendering operations on a triangle only if the triangle is front-facing, i.e. if the triangle orientation takes a first value which indicates that the triangle is facing towards the virtual viewer in a 3D coordinate space. Back-facing triangles (i.e. triangles with orientation different from the first value) may be rejected. In another embodiment, the rendering unit may be configured to appropriately handle some or all back-facing triangles (e.g. back-facing triangles that have a back-face render bit equal to one). For example, the rendering unit may negate a normal vector associated with the back-facing triangle (effectively redefining the back face as the front face), access property data associated with the back-face, invoke a light computation for the back face, etc.
It is noted that the triangle orientation may be used to determine which side of a triangle edge is interior to the triangle. The rendering unit may then test samples with respect to the triangle edge to determine if they fall on the interior side. Samples which fall on the interior side of all three triangle edges are interior to the triangle.
Rendering computations include computations such as the interpolation of ordinate values (e.g. color values) at locations interior to the triangle. Rendering units may store ordinate values in the sample buffer. A sample-to-pixel calculation unit may read the sample buffer and filter one or more of the ordinate values to generate pixel values which may be transmitted to a display device.


REFERENCES:
patent: 5117289 (1992-05-01), Farley et al.
patent: 5446834 (1995-08-01), Deering
patent: 5594854 (1997-01-01), Baldwin et al.
patent: 5619438 (1997-04-01), Farley et al.
patent: 5638176 (1997-06-01), Hobbs et al.
patent: 5651104 (1997-07-01), Cosman
patent: 5757375 (1998-05-01), Kawase
patent: 5793371 (1998-08-01), Deering
patent: 5877771 (1999-03-01), Drebin et al.
patent: 6038374 (2000-03-01), Jacob et al.
patent: 6072500 (2000-06-01), Foran et al.
patent: 6128000 (2000-10-01), Jouppi et al.
patent: 6173372 (2001-01-01), Rhoades
patent: 6356278 (2002-03-01), Stamm et al.
patent: 6373482 (2002-04-01), Migdel et al.
patent: 6535220 (2003-03-01), Deering et al.
patent: 0 463 700 (1992-01-01), None
patent: 0 506 429 (1992-09-01), None
patent: 0 278 524 (1994-11-01), None
patent: 91/14995 (1991-10-01), None
Patent Abstract of Japan, vol. 098, No. 007, Mar. 31, 1998, and JP 08 063608 A.
“Simulating Peripheral Vision in Immersive Virtual Environments,” M. Slater, et al., Nov. 1993, No. 6, Headington hill Hall, Oxford, GB, pp. 80-82, 91-94, and 105.
The RenderMan Companion, “A Programmer's Guide to Realistic Computer Graphics,” Steve Upstill, 1990, pp. 137-146, 171-178, 193-237, and 273-309.
“Principles of Digital Image Synthesis,” Andrew S. Glassner, vol. 1, Morgan Kaufman Publisher's, Inc., San Francisco, CA., 1995, pp. 243-244, 359-365.
“CIG Scene Realism: The World Tomorrow,” Cosman, et al., Evans & Sutherland Computer Corporation, Salt Lake City, UT, Jan. 29, 1999, 18 pages.
Computer Graphics, “Principles and Practice,” Second Edition In C, Foley, et al., Addison-Wesley Publishing Co., 1996, pp. 643-645, 788-791.
“Spatial Vision,” De Valois, et al., Oxford Psychology SEries No. 14, 1990, pp38-60.
International Search Report, Jan. 6, 1999. PCT/US 99/03270.
Bjernfalk, “The Memory System Makes The Difference,” © 1999 Evans & Sutherland Computer Corporation, pp. 1-11.
Foley, VanDam, Feiner & Hughes, “Computer Graphics—Principles and Practice,” Jul. 1997, pp. 663-664, 806-808 and 809.
Watt, Alan, “Fundamentals of Three-Dimensional Computer Graphics,” 1991, pp. 36-37.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Graphics system configured to determine triangle orientation... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Graphics system configured to determine triangle orientation..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Graphics system configured to determine triangle orientation... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3111825

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.