Three-dimensional paint projection weighting of diffuse and scattered illumination methods and apparatus
First Claim
1. A method for rendering an object comprises:
- determining diffuse illumination values for surface points on the object;
associating a three-dimensional grid with the object, wherein the three-dimensional grid includes a plurality of vertices, wherein the plurality of vertices define a plurality of voxels, and wherein each voxel includes at least a portion of the object;
mapping surface points on the object to a plurality of voxels;
determining diffuse illumination values for the plurality of vertices from the plurality of voxels in response to the diffuse illumination values for the surface points on the object,performing one or more low pass filter operations on the diffuse illumination values for the plurality of vertices to determine diffuse illumination compensation values for the plurality of vertices;
determining diffuse illumination compensation values for the surface points in response to the diffuse illumination compensation values for the plurality of vertices;
determining compensated diffuse illumination values for the surface points on the object in response to a weighted combination of the diffuse illumination values for the surface points and the diffuse illumination compensation values for the surface points anddisplaying an image on a display, wherein the image includes an appearance of at least a portion of the object determined in response to at least some of the compensated diffuse illumination values for the surface points.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods for rendering an object includes determining diffuse illumination values for object surface points, associating a 3D grid including vertices with the object, mapping object surface points to vertices, determining diffuse illumination values for vertices from the diffuse illumination values for object surface points, low pass filtering diffuse illumination values for the vertices to determine illumination compensation values for the vertices, determining illumination compensation values for the object surface points from the illumination compensation values for the vertices, and determining compensated diffuse illumination values for the object surface points from a weighted combination of the diffuse illumination values and illumination compensation values for the surface points.
-
Citations
22 Claims
-
1. A method for rendering an object comprises:
-
determining diffuse illumination values for surface points on the object; associating a three-dimensional grid with the object, wherein the three-dimensional grid includes a plurality of vertices, wherein the plurality of vertices define a plurality of voxels, and wherein each voxel includes at least a portion of the object; mapping surface points on the object to a plurality of voxels; determining diffuse illumination values for the plurality of vertices from the plurality of voxels in response to the diffuse illumination values for the surface points on the object, performing one or more low pass filter operations on the diffuse illumination values for the plurality of vertices to determine diffuse illumination compensation values for the plurality of vertices; determining diffuse illumination compensation values for the surface points in response to the diffuse illumination compensation values for the plurality of vertices; determining compensated diffuse illumination values for the surface points on the object in response to a weighted combination of the diffuse illumination values for the surface points and the diffuse illumination compensation values for the surface points and displaying an image on a display, wherein the image includes an appearance of at least a portion of the object determined in response to at least some of the compensated diffuse illumination values for the surface points. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An computer system comprises:
-
a memory configured to store a geometric description of an object; a processor coupled to the memory, wherein the processor is configured to determine diffuse illumination values for surface points on the object, wherein the processor is configured to associate a three-dimensional grid comprising vertices and voxels with the object, wherein the processor is configured to map the surface points on the object to the voxels;
wherein the processor is configured to determine diffuse illumination values associated with the vertices in response to diffuse illumination values associated with the surface points, wherein the processor is configured to perform one or more low pass filtering operations on the diffuse illumination values associated with the vertices to determine compensation values for the plurality of vertices, wherein the processor is configured to determine compensation values for the surface points in response to the compensation values for the plurality of vertices, and wherein the processor is configured to determine compensated diffuse illumination values for the surface points on the object in response to a weighted combination of the diffuse illumination values for the surface points and the compensation values for the surface points. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A computer program product for a computer system including a processor comprises:
-
code that directs the processor to determine illumination values for surface positions on an object; code that directs the processor to associate a three-dimensional grid including vertices and voxels with the object, wherein the surface positions on the object are within a plurality of voxels; code that directs the processor to determine illumination values for a plurality of vertices associated with the plurality of voxels in response to the illumination values for the surface positions on the object; code that directs the processor to perform a plurality of directional low pass filtering operations on the illumination values for the plurality of vertices to determine compensation values for the plurality of vertices; code that directs the processor to determine compensation values for the surface positions on the object in response to the compensation values for the plurality of vertices; code that directs the processor to form a weighted combination of the illumination values for the surface positions and the compensation values for the surface positions; and code that directs a processor to display an image on a display, wherein the image includes an appearance of at least apportion of the object determined in response to at least some compensation values for the surface positions; wherein the codes reside on a computer readable tangible media. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
Specification