Computer graphics processing and selective visual display system – Computer graphics processing – Graphic manipulation
Reexamination Certificate
1999-04-29
2003-07-08
Razavi, Michael (Department: 2672)
Computer graphics processing and selective visual display system
Computer graphics processing
Graphic manipulation
C345S621000, C345S622000, C345S623000, C345S624000
Reexamination Certificate
active
06590582
ABSTRACT:
CLAIM OF PRIORITY
This application makes reference to, incorporates the same herein, and claims all benefits accruing under 35 U.S.C. '119 from an application entitled CLIPPING PROCESSING METHOD earlier filed in the Korean Industrial Property Office on Apr. 29, 1998, and there duly assigned Serial No. 98-15353.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a graphics processing method, and more particularly, to a clipping processing method.
2. Description of the Related Art
A three-dimensional (3D) graphics technique is widely used in various apparatuses communicating with the user through a screen, for example, in multimedia devices, game machines, and personal computers. Its application range is also gradually widening. The 3D graphics processing can be divided into geometry processing and rasterization. The geometry processing includes transformation, lighting, clipping and perspective projection. The rasterization includes interpolation and texture mapping.
As one example of a 3D graphics processing device, there is illustrated a 3D simulator device in FIG.
1
. The 3D simulator device includes a control section
100
, a virtual 3D space calculation section
102
, an image synthesis section
104
, and a cathode ray tube (CRT)
106
. The 3D simulator device of
FIG. 1
is disclosed in detail in U.S. Pat. No. 5,559,937, issued on Sep. 24, 1996. The 3D simulator device of
FIG. 1
will now be described with reference to the above U.S. Pat. No. 5,559,937 on the assumption that it is applied to a 3D game. The virtual 3D space calculation section
102
sets a virtual 3D space in response to control signals from the control section
100
and to a game program stored in a central processing unit mounted in the control section
100
. That is, the virtual 3D space calculation section
102
calculates the position of a 3D object and the arranged direction thereof. The image synthesis section
104
synthesizes a pseudo-3D image in response to setting information on the virtual 3D space from the virtual 3D space calculation section
102
. The pseudo-3D image synthesized from the image synthesis section
104
is transmitted to the CRT
106
and displayed on a CRT screen. Then an observer who is a game player can see a 3D image appearing on the virtual 3D space through the pseudo-3D image displayed on the CRT screen.
The virtual 3D space where the observer sees the 3D image corresponds to a 3D image display region. This display region is represented as a viewing frustum
200
consisting of 6 planes
202
-
212
, as indicated in FIG.
2
. An observer
210
sees the 3D image within the viewing frustum
200
through the screen of the CRT
106
. In this case, only an object within the viewing frustum
200
appears on the screen.
Meanwhile, the 3D image displayed within the viewing frustum
200
should be changed by rotation or conversion processing according to a change in factors, for example, the viewpoint position or line-of-sight direction of the observe
210
, or the position or moving direction of a vehicle in which the observer
210
is seated. “Clipping processing” is one of 3D graphics processing for this and it is processed by the image synthesis section
104
.
In clipping processing of graphics processing, it is simple to process objects which are inside or outside the viewing frustum
200
, but it is necessary to perform interpolation with respect to objects which are on the boundary of the viewing frustum
200
. That is, images which are outside the viewing frustum
200
whose vertex is the position of observer's eyes are excluded from an object to be processed, images which are inside the viewing frustum
200
are included for rendering, and the other part except a part within the viewing frustum
200
among images which are on the boundary of the viewing frustum
200
is clipped. The images for clipping processing are divided into polygons which are geometric units for graphics rendering.
In the following description, a triangle will be proposed as one form of the polygons. The triangle to be clipped in geometric units for graphics rendering is defined by three vertices each further defined in terms of the x, y, z coordinates, the R, G, B, A color values, and the U, V, S, T parameter values. This triangle is clipped with respect to each of the 6 planes
202
-
212
constituting the viewing frustum
200
. Therefore, the 6 planes
202
-
212
correspond to “clipping planes”.
FIG. 3
is an exemplary diagram illustrating triangles which are situated differently from each other with respect to one clipping plane. In
FIG. 3
, the clipping plane
206
is an example of one plane constituting the viewing frustum
200
, and three triangles T
1
-T
3
show the cases that triangles to be clipped can be situated with respect to the clipping plane
206
. For the clipping processing, it should be determined whether a triangle is outside the viewing frustum
200
with respect to the clipping plane
206
like the triangle T
1
, whether it is inside the viewing frustum
200
like the triangle T
3
, or whether it is on the boundary of the clipping plane
206
like the triangle T
2
. The triangle T
2
should be clipped, T
1
is excluded from an object to be processed, and T
3
is included as an object for rendering. If the triangle T
2
is clipped, a quadrangle is left. This quadrangle is cut into two triangles.
FIG. 4
illustrates a general clipping processing procedure executed by, for example, the image synthesis section
104
of the 3D simulator device of
FIG. 1. A
triangle to be clipped is inputted at step
300
. The first to sixth clipping planes
202
-
212
constituting the viewing frustum
200
are sequentially clipped at steps
302
-
312
.
The clipping processing commonly performed at steps
302
-
312
shown in
FIG. 4
is illustrated in FIG.
5
. For the clipping processing, the position of a triangle to be clipped with respect to a clipping plane is determined. Thereafter, the triangle may be excluded from an object to be processed, included for rendering, or clipped according to the determined result.
A plane equation defining one infinite plane is represented by the following equation (1):
f
(
x,y,z
)=
ax+by+cz+d
(1)
where a, b, c and d are coefficients.
If a functional value f(x,y,z) at a point (x,y,z) is a positive value, that point is inside the plane, if it is a negative value, that point is outside the plane, and if it is 0, that point is on the plane. Therefore, the functional value for each vertex of the inputted triangle is calculated by the equation (1) to determine where the triangle is positioned.
At step
400
, the functional values for three vertices of the triangle are calculated by the equation (1) with respect to the clipping plane. Assuming that three vertices are V
1
, V
2
and V
3
, functional values f
1
, f
2
and f
3
at the vertices V
1
, V
2
and V
3
are calculated by substituting coordinate values of the vertices V
1
, V
2
and V
3
for the equation (1). At steps
402
and
404
, the position of the triangle is determined. That is, whether the functional values f
1
(=f(V
1
)), f
2
(=f(V
2
)) and f
3
(=f(V
3
)) are all less than 0 is checked at step
402
. If they are less than 0, it is determined that the triangle is outside the clipping plane
206
like the triangle T
1
shown in FIG.
3
. In such a case, the triangle is excluded from an object to be processed and step
402
is followed by step
300
illustrated in FIG.
4
. If all the functional values f
1
, f
2
and f
3
are not less than 0, it is checked at step
404
whether they are all greater than 0. If they are all greater than 0, it is determined that the triangle is inside the clipping plane
206
like the triangle T
3
shown in FIG.
3
. In that case, step
404
is followed by corresponding one among steps
302
-
312
to perform the clipping processing with respect to the next clipping plane. If the clipping processing with respect to the sixth clipping plane has been done, step
314
is pe
Chung Daniel J
Razavi Michael
Samsung Electronics Co,. Ltd.
Sughrue & Mion, PLLC
LandOfFree
Clipping processing method does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Clipping processing method, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Clipping processing method will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3041554