Claims
- 1. A system for rendering a pixel of a digital image, said system comprising:
a texture map data structure representing a texture map of a plurality of texels, said texture map structure comprising a plurality of coefficients for each texel of said texture map, said plurality of coefficients defining lighting characteristics of the respective texel in response to illumination in a plane; a modulation data structure, said modulation data structure defining a range of values associated with an illumination vector; and a rendering algorithm, said rendering algorithm operable to calculate a texel display value using said texture map data structure, said rendering algorithm operable to determine an illumination modulation value from said modulation data structure, and said rendering algorithm operable to multiply said texel display value by said illumination modulation value to render a pixel.
- 2. The system of claim 1 wherein said illumination in said plane is defined by two scalar parameters, wherein each of said scalar parameters reflects intensity of illumination in a direction in said plane, and wherein the directions associated with said scalar parameters are orthogonal to each other.
- 3. The system of claim 2 wherein a first one of said two scalar parameters is represented by u, wherein a second one of said two scalar parameters is represented by v, and wherein said rendering algorithm calculates said texel display value utilizing six coefficients from said texture map data structure utilizing an equation of the following form:
- 4. The system of claim 1 wherein said modulation data structure maps illumination vectors associated with back-facing illumination to a minimum illumination modulation value.
- 5. The system of claim 4 wherein said minimum illumination modulation value is zero.
- 6. The system of claim 4 wherein said minimum illumination modulation value is greater than zero.
- 7. The system of claim 1 wherein said modulation data structure maps illumination vectors associated with front-facing light to a maximum value.
- 8. The system of claim 4 wherein said modulation data structure maps at least one illumination vector associated with front-facing light to a maximum value.
- 9. The system of claim 8 wherein said modulation data structure maps certain illumination vectors to ramp values between said minimum value and said maximum value.
- 10. The system of claim 1 further comprising:
an illumination data structure, wherein said illumination data structure comprises chromatic parameters associated with a light source.
- 11. A method for rendering a pixel of digital image, said method comprising:
providing a texture map including a plurality of texels; determining a plane associated with a texel of said plurality of texels; determining a surface normal vector to said plane; determining a light vector defining illumination of said texel; calculating scalar vector components associated with projection of said light vector onto said plane; calculating a display value for said texel utilizing at least said scalar vector components; determining a modulation value utilizing a dot product of said light vector and said surface normal vector; and multiplying said display value by said modulation value to render a pixel.
- 12. The method of claim 11 wherein said display value represents a brightness parameter.
- 13. The method of claim 11 wherein said display value represents a gray level intensity of a chromatic channel of said texel.
- 14. The method of claim 11 wherein said scalar vector components are represented by u and v, and wherein said step of calculating a display value utilizes a function in the form of:
- 15. The method of claim 11 wherein said step of determining a modulation value assigns a minimum value when said light vector is in a direction opposite to said surface normal vector.
- 16. The method of claim 15 wherein said minimum value is zero.
- 17. The method of claim 15 wherein said minimum value is greater than zero.
- 18. The method of claim 11 wherein said step of determining a modulation value assigns a maximum value when said light vector is in a common direction as said surface normal vector.
- 19. The method of claim 11 wherein said step of determining a modulation value assigns ramp values between a minimum value and a maximum value.
- 20. The method of claim 11 further comprising the step of:
multiplying said display value by a chromatic parameter.
- 21. A computer readable medium containing processor executable instructions, said computer readable medium comprising:
code for calculating a display value of a texel of a texture, said texture being defined by a parametric texture map algorithm; code for determining a modulation value by mapping a dot product of an illumination vector and a surface normal vector associated with said texel; and code for multiplying said display value by said modulation value.
- 22. The computer readable medium of claim 21 wherein said code for determining maps back-facing illumination to a minimum value.
- 23. The computer readable medium of claim 22 wherein said minimum value is zero.
- 24. The computer readable medium of claim 22 wherein said minimum value is greater than zero.
- 25. The computer readable medium of claim 21 wherein said code for determining maps front-facing illumination to a maximum value.
- 26. The computer readable medium of claim 21 wherein said code for determining maps predefined dot product values to ramp values between a minimum value and a maximum value.
- 27. The computer readable medium of claim 21 further comprising:
code for multiplying said display value by a chromatic parameter.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present invention is related to co-pending and commonly assigned U.S. Patent Application Ser. No. 09/528,700, entitled “APPARATUS FOR AND METHOD OF RENDERING 3D OBJECTS WITH PARAMETRIC TEXTURE MAPS,” and co-pending and commonly assigned U.S. patent application Ser. No.______,entitled “SYSTEM AND METHOD FOR SYNTHESIS OF PARAMETRIC TEXTURE MAP TEXTURES,” which are incorporated herein by reference.