摘要:
A system for improved shadowing of images using a multiple pass, depth buffer approach includes rendering a scene from the perspective of a light source to construct a shadow depth map in a rasterization buffer. The system computes depth values for the two nearest geometric primitives to the light source for pixels, and stores these depth values in the rasterization buffer. Once the shadow map is constructed, it is stored in shared memory, where it can be retrieved for subsequent rendering passes. The two depth values for each element in the shadow map can be used in combination with a global bias to eliminate self-shadowing artifacts and avoid artifacts in the terminator region. The system supports linear or higher order filtering of data from the shadow depth map to produce smoother transitions from shadowed and un-shadowed portions of an image.
摘要:
A system for improved shadowing of images using a multiple pass, depth buffer approach includes rendering a scene from the perspective of a light source to construct a shadow depth map in a rasterization buffer. The system computes depth values for the two nearest geometric primitives to the light source for pixels, and stores these depth values in the rasterization buffer. Once the shadow map is constructed, it is stored in shared memory, where it can be retrieved for subsequent rendering passes. The two depth values for each element in the shadow map can be used in combination with a global bias to eliminate self-shadowing artifacts and avoid artifacts in the terminator region. The system supports linear or higher order filtering of data from the shadow depth map to produce smoother transitions from shadowed and un-shadowed portions of an image. In addition, the system supports the re-use of the shadow map and shadowed images for more than one frame.
摘要:
A method for supporting image compression in a real-time graphics rendering pipeline includes sorting object geometry for a scene among image regions called chunks. The object geometry for each chunk is rendered separately, and in a serial fashion. After the object geometry is completely rendered for a given chunk, the pixel data for that chunk is compressed and stored. Each chunk of an image can be generated and stored in this manner. To assemble a display image, compressed image chunks are retrieved, decompressed, and temporarily cached. Decompressed image data in the cache is combined into a display image. The process of generating a display image with compression can be performed at real-time rates.
摘要:
A gsprite engine circuit reads a display list identifying gsprite image layers to be composited for display, retrieves gsprite image data from an external memory, and transforms the gsprite data to display device coordinates. The gsprite image layers represent independently rendered graphical objects in a graphics scene. The gsprite engine can simulate the motion of the graphical objects in a sequence of display images by performing affine transformations on the gsprite image layers. The interface to the gsprite engine circuit includes the display list and gsprite header blocks. The display list enumerates the gsprites to be composited as a display image. The header blocks describe a gsprite transform, which can be an affine transform, used to transform gsprites to display device coordinates. The header blocks also provide an array of references to image blocks or "chunks" comprising the gsprite.
摘要:
A graphics rendering chip serially renders a stream of geometric primitives to image regions called chunks. A set-up processor in the chip parses rendering commands and the stream of geometric primitives and computes edge equation parameters. A scan-convert processor receives the edge equation parameters from the set-up processor and scan converts the geometric primitives to produce pixel records and fragment records. An internal, double-buffered pixel buffer stores pixel records for fully covered pixel addresses and also stores references to fragment lists stored in a fragment buffer. A pixel engine performs hidden surface removal and controls storage of pixel and fragment records to the pixel and fragment buffers, respectively. An anti-aliasing engine resolves pixel data for one pixel buffer while the pixel engine fills the other pixel buffer with pixel data for the next chunk.
摘要:
A system for spatially transforming images by separate transformation of each dimension of the image is exemplified by a raster scan television system which includes for each color component a transposing memory providing a change of scan direction from horizontal to vertical, a vertical transformation system transforming in the vertical direction the vertically scanned video information, a second transposing memory coupled to receive vertically transformed video information and provide a change of scan direction from vertical back to horizontal, and a horizontal transformation system coupled to horizontally transform the horizontally scanned video signal to produce a color component output signal. The transformation system is controlled by a transform composer and factorizor which receives input commands designating X and Y pretranslations, X and Y size control, Z axis rotation angles, and X and Y post translations to produce a commanded composite transformation which is then factored into horizontal and vertical components.
摘要:
A control system is coupled to control a system for spatially transforming images by separate transformation of each dimension of the image. The control system includes a control panel having a three-axis joystick and a set of keys providing function selection and assignment of the joystick to a particular control function, a panel processor coupled to receive and interpret control panel data and a high level controller. The high level controller responds to the operator control information from the panel processor to establish selected image transformation information at selected knot points and communicates to a transformation portion of the transformation system data controlling the transformation of each image field with data for fields between knot points being developed from a cubic spline interpolation between knot points.
摘要:
A spatial transformation system includes a processing system for each component of an input video signal. The processing systems respond to operator commands entered through a control panel to provide spatial transformation such as enlargement, reduction, translation, and three-dimensional perspective rotation. The system further includes a key processing system connected to operate in tandem with the video component processing systems to transform an input key signal indicating a portion of a video image to be viewed in exactly the same way as the image defined by the input video signal. The output key signal thus exactly defines the same portions of the output video image as it did for the input video image notwithstanding significant changes in image shape which may result from a selected given spatial transformation. A proportional switcher is connected to receive a transformed image from the spatial transformation system on one channel and a second video image on a second channel and mix them in proportion to the magnitude of the key signal generated by the key processing system. The image from one channel may thus be smoothly blended into the image of the other input channel to eliminate aliasing along a boundary between two adjacent images. The transformation system may further include a key signal generator providing an internal key signal defining a standard sized video image and a switch coupled to provide an operator selection between the internal key signal and an externally generated key signal. A cropping circuit responsive to operator controls may modify the selected key signal by imposing more restrictive limits on the boundary of the key signal selected viewing area than provided by the original key signal. This selectively restricted key signal is provided as an input key signal to the key processing system. By performing the same spatial transformation upon the key signal as upon the input video image, the key signal precisely defines the borders of the selected viewing region to eliminate undesirable demarcation lines between the boundaries of two intermixed video images when they are displayed.
摘要:
A method for texture mapping an image includes passing an interpolating filter along a line of anisotropy in a texture map and computing a weighted sum of the outputs of the interpolating filter to compute pixel intensity values. The weighting of these output values can be computed using a one dimensional digital filter. The line of anisotropy is derived from the inverse transform, which describes the mapping of a point on the surface of a geometric primitive to a point in the texture map. A system supporting anisotropic filtering includes texture memory, a set-up processor, and a texture filter engine. The set-up processor parses a command stream and retrieves texture data into the texture memory. The texture filter engine determines the line of anisotropy for a pixel and computes a weighted sum of interpolated values sampled along the line of anisotropy.
摘要:
A method and system for improved motion compensation between a previous frame of video information and a new frame. Each block of pixels in a block-based compression scheme uses four vectors, three from proximate blocks, to determine motion-induced changes to its pixels. The vectors are interpolated for each pixel based on the location of the pixel in the block with respect to the vectors. The address of each pixel in the frame block of the previous frame is altered based on the resultant vector determined therefor, whereby a color value for the new pixel is obtained from the altered address. Sharp contrasts at the edges between blocks are eliminated due to the gradual blending obtained by using vectors of the adjacent blocks to determine a pixel's color.