Method and apparatus for approximating a signed value between two endpoint values in a three-dimensional image rendering device
AssigneeApple Computer, Inc.
InventorsMichael W. Kelley, Stephanie L. Winner
Life of this patent
Estimating the term…
Abstract
A method and apparatus for providing a correctly signed result of a linear interpolation (LIRP) function in a compute controlled display system. A correctly signed LIRP evaluation may be performed by simply adding a bias to each of the operands of the LIRP function and subtracting the bias to the result. Adding the bias is achieved by inverting the high (sign) bit of each of the operands. Subtracting the bias is achieved by inverting the high (sign) bit of the result.
Claims17
In a pixel rendering system for generating pixel values for the display of an image on a display device, said pixel rendering system being coupled to said display device, said image being represented as a plurality of objects, a method for displaying a pixel on said display device comprising the steps of:
- obtaining an interpolation weight W having one or more bits;
- retrieving a first endpoint value from a first circuit, said fast endpoint value corresponding to a first pixel value of a fast portion of an object;
- a processor, being coupled to said first circuit, generating a first result by adding a bias value to said first endpoint value;
- providing a second endpoint value corresponding to a second pixel value of a second portion of said object;
- generating a second result by adding said bias value to said second endpoint value;
- generating an interpolation result from said interpolation weight W, said first result and said second result;
- generating a pixel signal corresponding to a third result, said third result generated by subtracting said bias value from said interpolation result;
- and
- displaying said pixel using said pixel signal on said display device.
A circuit for generating a signal corresponding to a pixel value, said circuit comprised of:
- a first circuit having as inputs a bias signal and a first endpoint signal and a second endpoint signal, said first endpoint signal corresponding to a pixel value, said second endpoint signal corresponding to a second pixel value, said first circuit having as outputs a first result and a second result, said first result corresponding to a sum of said bias signal with said first endpoint signal, said second result corresponding to a sum of said bias signal with said second endpoint signal;
- a second circuit having as inputs said first result and said second result, said second circuit having as an output a third result corresponding to an interpolation result between said first result and said second result;
- and
- a third circuit having as inputs said third result and said bias signal, said third circuit having as an output said signal corresponding to said bias signal subtracted from said third result.
In a computer system, said computer system including a processor coupled to a display, a method for generating and displaying a pixel signal corresponding to a pixel value for a portion of an image, said portion of an image having a first endpoint and a second endpoint, said method comprising the steps of:
- providing a first endpoint signal corresponding to said first endpoint, and a second endpoint signal corresponding to said second endpoint, said first endpoint signal representing a floating point decimal format, said second endpoint signal representing said floating point decimal format;
- a processor converting said first endpoint signal and second endpoint signal to represent a two's complement binary format;
- providing an interpolation signal representing an interpolation value in a floating point format;
- converting said interpolation signal to represent said two's complement binary format;
- converting each of said first endpoint signal and second endpoint signal to represent positive values;
- generating an interpolation result signal from said interpolation signal and said first endpoint signal and second endpoint signal;
- inverting a sign of said interpolation result signal;
- generating said pixel signal by converting said interpolation result signal to represent said floating point decimal format;
- and
- displaying said pixel signal on said display.
A computer system for displaying images comprising:
- a storage device including an active object;
- a processor being coupled to said storage device, said processor for rendering a scanline corresponding to said active object, said scanline including a plurality of pixel values, said processor for determining a first endpoint and a second endpoint for said active object on said scanline, said processor for adding a bias value to said first endpoint and to said second endpoint, said processor for generating an interpolation result from said first endpoint, said second endpoint and a interpolation weight value, said processor for generating one of said plurality of pixel values using said interpolation result minus said bias value;
- a frame buffer, being coupled to said storage device, including a plurality of scanlines representing a frame;
- and
- a display device, being coupled to said frame buffer, for displaying said frame.
Dependencies are inferred from the claim text.