Blended texture illumination mapping
AssigneeSilicon Graphics, Inc.
InventorJohn J. Kichury
Life of this patent
Estimating the term…
Abstract
A method and apparatus for expeditiously rendering realistic bumpy self-shadowed textured computer graphics is provide. Illuminated texture images of an object are obtained and stored in a data base as texture maps. These illuminated texture images are superimposed on top of each other and blended according to their weighted illumination contributions from the light sources to create a blended texture map. This blended texture map is then mapped to the desired surface of the geometric object.
Claims17
A method to render blended texture illumination computer graphics, the method comprising the steps of:
- generating a plurality of N illuminated texture images of a bumpy surface, wherein the N illuminated texture images depict the bumpy surface with a light source located at different positions,
- blending the N illuminated texture images to produce the blended texture illumination.
A method to render bumpy self-shadowed textured computer graphics, the method comprising the steps of:
- creating a plurality of N illuminated texture images of a bumpy surface, wherein the N illuminated texture images are created by positioning a light source at predetermined positions;
- mapping the N illuminated texture images to a selected surface of a geometric model of an object based on illumination contribution from a light source;
- superimposing the N illuminated texture images on top of each other;
- and
- blending the N illuminated texture images according to an illumination equation:
- ##EQU3## where intensity is a combined pixel intensity at (x,y) to be computed, image i is an illuminated texture image pixel normalized intensity, N is the number of illuminated texture images, Light is a normalized light vector from a center of an illuminated texture image to a light source, and DirVec.sub.i is a normalized direction vector paired with the illuminated texture image.sub.i ;
- wherein resulting values of (Light.multidot.DirecVec.sub.i) are clamped between 0-1.
A method to render bumpy self-shadowed textured computer graphics, the method comprising the steps of:
- a) creating a geometric model of an object;
- b) creating a plurality of N illuminated texture images of a bumpy surface having at least two illuminated texture images, wherein each of the N illuminated texture images is created by positioning a light source at a predetermined position;
- and
- c) mapping the N illuminated texture images to a selected surface of the geometric model of the object by performing the following steps:
- d) disabling blending function;
- e) setting depth function to allow coplanar rendering;
- f) enabling depth buffer;
- g) enabling shading function;
- h) disabling graphics substantive lighting function;
- i) drawing the object in ambient lighting;
- j) enabling blending function;
- k) selecting an illuminated texture image;
- l) selecting a vertex of the selected surface;
- m) computing red, green, blue (RGB) and transparency (Alpha) values based on illumination contribution from the light source;
- n) drawing the selected vertex of the selected surface using the RGB and Alpha values computed;
- o) repeating steps (l)-(n) for all vertices of the selected surface;
- and
- p) repeating steps (k)-(o) for all illuminated texture images.
A computer system adapted to render bumpy self-shadowed textured computer graphics, the computer system comprising:
- a bus;
- a processor coupled to the bus;
- memory coupled to the bus, the memory storing a geometric model of an object and a plurality of N illuminated texture images of a bumpy surface, wherein the N illuminated texture images are blended together according to an illumination contribution of a light source.
A computer system adapted to render bumpy textured computer graphics, the computer system comprising:
- a processor coupled to the bus;
- memory coupled to the bus, the memory storing a geometric model of an object and a plurality of N illuminated texture images of a bumpy surface, the memory further storing instruction codes, the instruction codes, when executed by the processor, maps the N illuminated texture images to a selected surface of the geometric model of the object, the N illuminated texture images including at least two illuminated texture images, wherein illumination contribution from the light source is calculated according to:
- intensity (x,y)=clamp(Light.multidot.DirVec.sub.i)
- where intensity is a pixel intensity at (x,y) to be computed, Light is a normalized light vector from a center of an illuminated texture image to a light source, and DirVec.sub.i is a normalized direction vector paired with the illuminated texture image;
- wherein resulting values of (Light.multidot.DirecVec.sub.i) are clamped between 0-1.
Dependencies are inferred from the claim text.