Hidden surface processor
First Claim
1. A hidden surface processor to distinguish between the hidden and visible surfaces of a pair of video scan line segments relative to a viewpoint, one of said segments being positioned behind the other, said segments comprising one or more picture elements and forming portions of a three dimensional scene, and said hidden surface processor including:
- first memory means including buffer memories to store information regarding a first scan line segment including the location thereof relative to an arbitrary set of axes,second memory means including a random access memory to store information regarding the second scan line segment including the location thereof relative to said set of axes,processor means interconnected with said first and second memory means for accessing the memories thereof and for comparing the information regarding the first and second scan line segments to determine whether the respective locations of said segments relative to one another are such that at least a portion of one of said segments is obscured by the other of said segments with respect to the viewpoint, andmultiplier means interconnected with said processor means for multiplying together certain of the information stored in said first and second memory means for providing an indication of the distance from the viewpoint to a picture element which forms one of said first or second scan line segments.
3 Assignments
0 Petitions
Accused Products
Abstract
A high speed hidden surface processor capable of operating in real time and suitable for interaction with a computer-generated imagery or computer graphics system, whereby a realistic three-dimensional scene can be projected on a two-dimensional video display. The scene is formed by one or more polygons that are visible from an arbitrary viewpoint. The present hidden surface processor employs a hidden surface algorithm, such that certain polygons or portions of polygons, which polygons are obscured by other polygons lying closer to the viewpoint, are removed or truncated. Ordered linked lists of scan line data corresponding to the surfaces of the visible polygons are assembled and stored, so that the complete scene may be subsequently displayed with increased speed and minimized hardware implementation costs.
80 Citations
20 Claims
-
1. A hidden surface processor to distinguish between the hidden and visible surfaces of a pair of video scan line segments relative to a viewpoint, one of said segments being positioned behind the other, said segments comprising one or more picture elements and forming portions of a three dimensional scene, and said hidden surface processor including:
-
first memory means including buffer memories to store information regarding a first scan line segment including the location thereof relative to an arbitrary set of axes, second memory means including a random access memory to store information regarding the second scan line segment including the location thereof relative to said set of axes, processor means interconnected with said first and second memory means for accessing the memories thereof and for comparing the information regarding the first and second scan line segments to determine whether the respective locations of said segments relative to one another are such that at least a portion of one of said segments is obscured by the other of said segments with respect to the viewpoint, and multiplier means interconnected with said processor means for multiplying together certain of the information stored in said first and second memory means for providing an indication of the distance from the viewpoint to a picture element which forms one of said first or second scan line segments. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. In a computer graphics system for projecting on a video display a two dimensional image of a three dimensional scene, said computer graphics system having information stored therein corresponding to a list of previously read video scan line segments to represent one or more polygons which form the three dimensional scene, a hidden surface processor to receive information corresponding to a new video scan line segment so that information corresponding to said new segment can be added to the list of previous scan line segments, said hidden surface processor distinguishing between the hidden and visible surfaces of a selected one of said previously read segments and said new segment relative to a viewpoint, each of said previous and new segments being arranged in the X and Z directions of a three dimensional coordinate system and having a length in the X direction and being spaced from the viewpoint by a distance in the Z direction, said existing and new scan line segments being positioned behind one another in the Z direction, said hidden surface processor including:
-
first register means to receive and store an indication of the starting and ending coordinates in the X direction of said previously read scan line segment, second register means to receive and store an indication of the starting and ending coordinates in the X direction of said new scan line segment, computing means for receiving information regarding the positions of said previous and new scan line segments relative to the viewpoint in the Z direction and calculating the distance from said viewpoint to each of said previous and new segments at the same coordinate therealong in the X direction, and processor means interconnected with each of said first and second register means and said computing means for receiving therefrom and comparing relative to one another both the starting and ending coordinates of said previous and new scan line segments and the distances from said viewpoint to the same coordinate along each of said previous and new scan line segments so as to determine whether one of said scan line segments is obscured by the other of said scan line segments with respect to the viewpoint. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification