USRE41677EExpiredUtility
Hybrid subdivision in computer graphics
Est. expiryAug 4, 2017(expired)· nominal 20-yr term from priority
G06T 13/40
44
PatentIndex Score
0
Cited by
58
References
40
Claims
Abstract
Different limit surfaces are derived from the same initial arbitrary polygon mesh by sequentially combining different subdivision rules. This added freedom allows for the more efficiently modeling of objects in computer graphics including objects and characters with semi-sharp features.
Claims
exact text as granted — not AI-modified1. A computer-implemented method for generating a surface feature of a limit surface in a graphical object represented at least in part as a polygonal mesh, said computer-implemented method comprising the steps of :
a) subdividing all or part of a polygon mesh representation of at least a portion of said graphical object a first number of times using one or more shape parameters and a first set of rules to produce a first mesh representation in addition to the polygon mesh of said at least a portion of said graphical object, wherein at least one of the shape parameters has a non- integer value that defines the limit surface;
b) subdividing said first mesh representation of said at least a portion of said graphical object a second number of times using a second set of rules, different than said first set of rules, for generating a second mesh representation of said at least a portion of said graphical object in addition to the first mesh representation and the polygon mesh representation; and
c) outputting a representation of said graphical object having said surface feature;
wherein a sum of the first and second numbers is equal to a total number of iterations required to achieve the surface feature of the limit surface; and
wherein the points on the limit surface are determined as the infinite subdivision limit of the second mesh using the second set of rules.
2. The method of claim 1 wherein the points on a limit surface are determined by taking the infinite subdivision limit of said second mesh using said second set of rules.
3. The method of claim 2 1 comprising the further step of determining the smooth surface limit normals at the limit locations of the points in the final mesh in order to shade the rendered image.
4. In a computer graphics system, a method of creating subdivision surface features in graphical objects the method comprising the steps of :
sequentially applying distinct first and second sets of subdivision rules to a polygonal mesh representation of a feature of a limit surface of a graphical object; and
displaying said graphical object having said feature;
wherein said first set of subdivision rules uses one or more shape parameters, wherein the second set of subdivision rules is applied to an intermediate mesh representation, in addition to the polygonal mesh representation, resulting from the application of said first set of subdivision rules to said polygonal mesh representation of said feature of said graphical object , wherein at least one of the shape parameters has a non- integer value that define the limit surface, and wherein the points on the limit surface are determined as the infinite subdivision limit of the intermediate mesh using the second set of rules.
5. A computer readable medium storing code for controlling a processor to generate render data, the code comprising:
code that directs the processor to retrieve a polygonal mesh associated with a three - dimensional object; code that directs the processor to subdivide the polygonal mesh to form a first subdivided polygonal mesh using one or more shape parameters and a first subdivision rule, wherein the first subdivided polygonal mesh comprises a first plurality of vertices, and wherein at least one of the shape parameters has a non - integer value that defines a limit surface; code that directs the processor to subdivide the first subdivided polygonal mesh one or more times to form a second subdivided polygonal mesh using a second subdivision rule, wherein the second subdivision rule is different than the first subdivision rule, wherein the second subdivided polygonal mesh comprises a second plurality of vertices; code that directs the processor to determine a first plurality of scalar values associated with vertices from the second plurality of vertices; code that directs the processor to determine a second plurality of scalar values associated with vertices from the first plurality of vertices in response to the first plurality of scalar values; and code that directs the processor to output data for rendering a portion of the three - dimensional object based on the second plurality of scalar values, and wherein the points on the limit surface are determined as the infinite subdivision limit of the second subdivided polygonal mesh using the second subdivision rule.
6. The computer readable medium of claim 5 wherein scalar values from the second plurality of scalar values comprise parametric shading values.
7. The computer readable medium of claim 5 further comprising:
code that directs the processor to determine a third plurality of scalar values associated with the vertices from the second plurality of vertices in response to the first plurality of scalar values and the second plurality of scalar values; and wherein the scalar values from the third plurality of scalar values are used for mapping purposes selected from the group consisting of: texture, surface.
8. The computer readable medium of claim 5 further comprising:
code that directs the processor to determine a third plurality of scalar values associated with the vertices from the second plurality of vertices in response to the first plurality of scalar values and the second plurality of scalar values; and code that directs the processor to render a portion of the three - dimensional object in response to the third plurality of scalar values.
9. The computer readable medium of claim 5 wherein the scalar values from the first plurality of scalar values comprise parameters selected from the group consisting of: kinematic parameters, animation parameters.
10. The computer readable medium of claim 5 wherein code that directs the processor to determine the first plurality of scalar values comprises code that directs the processor to determine the first plurality of scalar values associated with the vertices from the second plurality of vertices in response to a projection of a two- dimensional image comprising intensity values.
11. The computer readable medium of claim 5 wherein code that directs the processor to determine the first plurality of scalar values comprises code that directs the processor to smooth a third plurality of scalar values associated with the vertices from the second plurality of vertices.
12. The computer readable medium of claim 11 wherein the third plurality of scalar values associated with the vertices from the second plurality of vertices are specified by a user.
13. The computer readable medium of claim 11 wherein the third plurality of scalar values comprise energy values.
14. The computer readable medium of claim 5 wherein the code that directs the processor to determine the second plurality of scalar values comprises:
code that directs the processor to receive a plurality of estimated scalar values associated with the first plurality of vertices; code that directs the processor to determine a plurality of estimated scalar values associated with the second plurality of vertices; code that directs the processor to determine a plurality of error values in response to the plurality of estimated scalar values and the plurality of estimated scalar values associated with the second plurality of vertices; and code that directs the processor to determine the second plurality of scalar values associated with the first plurality of vertices in response to the plurality of estimated scalar values associated with the first plurality of vertices, and in response to the plurality of error values.
15. A computer system that comprises:
a memory configured to store a polygonal mesh associated with a three - dimensional object, wherein the memory is also configured to store a scalar field; and a processor coupled to the memory, wherein the processor is configured to retrieve the polygonal mesh associated with a three - dimensional object from the memory, wherein the processor is also configured to subdivide the polygonal mesh to form a first subdivided polygonal mesh using one or more shape parameters and a first subdivision rule, wherein at least one of the shape parameters has a non - integer value that defines a limit surface, wherein the first subdivided polygonal mesh comprises a first plurality of vertices, wherein the processor is configured to subdivide the first subdivided polygonal mesh one or more times to form a second subdivided polygonal mesh using a second subdivision rule, wherein the first subdivision rule is different than the second subdivision rule, wherein the second subdivided polygonal mesh comprises a second plurality of vertices, wherein the processor is configured to determine a first plurality of scalar values associated with vertices from the second plurality of vertices in response to the scalar field, wherein the processor is configured to determine a second plurality of scalar values associated with vertices from the first plurality of vertices in response to the first plurality of scalar values, and wherein the processor is configured output data for rendering a portion of the three dimensional object based on the second plurality of scalar values, and wherein the points on the limit surface are determined as the infinite subdivision limit of the second subdivided polygonal mesh using the second subdivision rule.
16. The computer system of claim 15 wherein scalar values from the second plurality of scalar values comprise parametric shading values.
17. The computer system of claim 15 wherein the processor is configured to determine a third plurality of scalar values associated with the vertices from the second plurality of vertices in response to the first plurality of scalar values and the second plurality of scalar values; and wherein the scalar values from the third plurality of scalar values are used for a mapping purpose selected from the group consisting of: texture, surface.
18. The computer system of claim 15 wherein the processor is also configured to determine a third plurality of scalar values associated with the vertices from the second plurality of vertices in response to the first plurality of scalar values and the second plurality of scalar values, and wherein the processor is configured to render a portion of the three - dimensional object in response to the third plurality of scalar values.
19. The computer system of claim 15 wherein the scalar values from the first plurality of scalar values comprise parameters selected from the group consisting of: kinematic parameters, animation parameters.
20. The computer system of claim 15 wherein the scalar field comprises a two- dimensional image comprising intensity values.
21. The computer system of claim 15 wherein the scalar field specifies a third plurality of scalar values associated with at least some of the vertices from the second plurality of vertices; and wherein the processor is configured to determine the first plurality of scalar values by smoothing the third plurality of scalar values associated with the vertices from the second plurality of vertices.
22. The computer system of claim 21 wherein the third plurality of scalar values associated with at least some of the vertices from the second plurality of vertices are specified by a user.
23. The computer system of claim 21 wherein the third plurality of scalar values comprise energy values.
24. The computer system of claim 15 wherein the processor is configured to determine the second plurality of scalar values by being configured to receive a plurality of estimated scalar values associated with the first plurality of vertices, being configured to determine a plurality of estimated scalar values associated with the second plurality of vertices, being configured to determine a plurality of error values in response to the plurality of estimated scalar values and the plurality of estimated scalar values associated with the second plurality of vertices, and being configured to determine the second plurality of scalar values associated with the first plurality of vertices in response to the plurality of estimated scalar values associated with the first plurality of vertices, and in response to the plurality of error values.
25. A method for a computer system that comprises:
retrieving a polygonal mesh associated with a three - dimensional object; subdividing the polygonal mesh using one or more shape parameters and a first subdivision rule to form a first subdivided polygonal mesh including a first plurality of vertices, wherein at least one of the shape parameters has a non - integer value that defines a limit surface; subdividing the first subdivided polygonal mesh one or more times using a second subdivision rule to form a second subdivided polygonal mesh comprising a second plurality of vertices, wherein the first subdivision rule and the second subdivision rule are different; determining a first plurality of scalar values, wherein the first plurality of scalar values is associated with vertices from the second plurality of vertices; determining a second plurality of scalar values in response to the first plurality of scalar values, wherein the second plurality of scalar values is associated with vertices from the first plurality of vertices; and outputting data for rendering at least a portion of the three dimensional object based on the second plurality of scalar values and wherein the points on the limit surface are determined as the infinite subdivision limit of the second subdivided polygonal mesh using the second subdivision rule.
26. The method of claim 25 wherein scalar values from the second plurality of scalar values comprise parametric shading values.
27. The method of claim 25 further comprising:
determining a third plurality of scalar values in response to the first plurality of scalar values and the second plurality of scalar values, wherein the third plurality of scalar values is associated with the vertices from the second plurality of vertices; wherein the scalar values from the third plurality of scalar values are used for mapping purposes selected from the group consisting of: texture mapping, surface mapping.
28. The method of claim 25 further comprising:
determining a third plurality of scalar values in response to the first plurality of scalar values and the second plurality of scalar values, wherein the third plurality of scalar values is associated with the vertices from the second plurality of vertices; and rendering a portion of the three - dimensional object in response to the third plurality of scalar values.
29. The method of claim 25 wherein the scalar values from the first plurality of scalar values comprise parameters selected from the group consisting of: kinematic parameters, animation parameters.
30. The method of claim 25 wherein determining the first plurality of scalar values comprises determining the first plurality of scalar values in response to a projection of a two- dimensional image comprising intensity values onto the second plurality of vertices.
31. The method of claim 25 wherein determining the first plurality of scalar values comprises smoothing a third plurality of scalar values, wherein the third plurality of scalar values is associated with at least some of the vertices from the second plurality of vertices.
32. The method of claim 31 wherein the third plurality of scalar values are specified by a user.
33. The method of claim 31 wherein the third plurality of scalar values comprise energy values.
34. The method of claim 25 wherein determining the second plurality of scalar values comprises:
receiving a plurality of estimated scalar values associated with the first plurality of vertices; determining a plurality of estimated scalar values associated with the second plurality of vertices in response to the plurality of estimated scalar values associated with the first plurality of vertices; determining a plurality of error values in response to the plurality of estimated scalar values and the plurality of estimated scalar values associated with the second plurality of vertices; and determining the second plurality of scalar values associated with the first plurality of vertices in response to the plurality of estimated scalar values associated with the first plurality of vertices, and in response to the plurality of error values.
35. The method of claim 25 , wherein the one or more shape parameters are assigned to one of a vertex, a plurality of vertices, a face, a plurality of faces, an edge, a plurality of edges, or a plurality of connected edges.
36. The method of claim 25 , wherein one or both of the first plurality of scalar values and the second plurality of scalar values represent coordinates.
37. A computer- implemented method for generating a feature of a limit surface in a graphical object represented at least in part as a polygonal mesh, the computer - implemented method comprising: a ) receiving one or more shape parameters associated with a polygon mesh representation of at least a portion of the graphical object, wherein at least one of the shape parameters has a non - integer value that defines the limit surface; b ) subdividing all or part of the polygon mesh representation a first number of times using the one or more shape parameters and a first set of rules to produce a first mesh representation in addition to the polygon mesh of the at least a portion of said graphical object; c ) subdividing the first mesh representation a second number of times using a second set of rules, different than the first set of rules, for generating a second mesh representation in addition to the first mesh representation and the polygon mesh representation; and d ) outputting a representation of the graphical object having the surface feature; wherein a sum of the first and second numbers is equal to a total number of iterations required to achieve the feature of the limit surface; and wherein the points on the limit surface are determined as the infinite subdivision limit of the second mesh using the second set of rules.
38. The method of claim 37 , wherein the one or more shape parameters are selected or input by a user.
39. The method of claim 1 , wherein the one or more shape parameters are assigned to one of a vertex, a plurality of vertices, a face, a plurality of faces, an edge, a plurality of edges, or a plurality of connected edges.
40. The method of claim 1 , wherein the non- integer value of the at least one shape parameter enables a sharpness of the feature of the limit surface to vary continuously.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.