System and method for designing computer generated imagery of a two dimensional array of objects advancing in a third dimension
First Claim
1. A process for generating animated images of a two-dimensional array of objects advancing in a third dimension, the process comprising the steps of:
- defining an array of objects;
defining a start position, an end position, and an advancement path associated with each of said objects, each said advancement path extending from the associated start position to the associated end position;
defining a manifold surface including a locus of points each being defined in a three dimensional coordinate system and having an associated height coordinate value, each of said objects being associated with one of said points on said manifold surface;
determining an associated advancement start time for each of said objects based on an associated height coordinate value of an associated point on said manifold surface; and
defining animated images of said array of objects advancing along said associated advancement paths in accordance with said associated rates of advancement and said associated start times.
1 Assignment
0 Petitions
Accused Products
Abstract
A process for generating animated images of a two-dimensional array of objects advancing in a third dimension includes the steps of: defining an array of objects; defining a start position, an end position, and an advancement path associated with each of the objects, each advancement path extending from the associated start position to the associated end position; defining an associated rate of advancement for each of the objects along the associated path; defining a manifold surface including a locus of points each being defined in a three dimensional coordinate system and having an associated height coordinate value, each of the objects being associated with one of the points on the manifold surface; determining an associated advancement start time for each of the objects based on the associated rate of advancement and an associated height coordinate value of an associated point on the manifold surface; and defining animated images of the array of objects advancing along the associated advancement paths in accordance with the associated rates of advancement and the associated advancement start times. The manifold surface provides an animator with a means for controlling a resulting animation in order to achieve a desired animated effect without the need to perform a cumbersome trial and error process.
24 Citations
30 Claims
-
1. A process for generating animated images of a two-dimensional array of objects advancing in a third dimension, the process comprising the steps of:
-
defining an array of objects;
defining a start position, an end position, and an advancement path associated with each of said objects, each said advancement path extending from the associated start position to the associated end position;
defining a manifold surface including a locus of points each being defined in a three dimensional coordinate system and having an associated height coordinate value, each of said objects being associated with one of said points on said manifold surface;
determining an associated advancement start time for each of said objects based on an associated height coordinate value of an associated point on said manifold surface; and
defining animated images of said array of objects advancing along said associated advancement paths in accordance with said associated rates of advancement and said associated start times. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
determining an average duration attribute associated with said array of objects, said average duration attribute indicating an average time required for advancement of said objects from said associated start positions to said associated end positions along said associated advancement paths;
determining an average duration variance attribute associated with said array of objects, said average duration variance attribute indicating a variance in the time required for each of said objects to advance from said associated start position to said associated end position along said associated advancement path; and
defining said associated rate of advancement based on said average duration attribute and said average duration variance attribute using a noise function.
-
-
3. A process as recited in claim 1 wherein said step of defining an array of objects includes defining a muscle structure including an array of fibers each being defined by at least one associated primitive describing the associated fiber, and wherein said start position, said end position, and said advancement path associated with each of said fibers is defined by said associated primitive, and wherein said step of defining animated images includes defining animated images of portions of said fibers gradually appearing or disappearing along said associated primitive.
-
4. A process as recited in claim 3 wherein said step of defining a muscle structure further comprises:
-
generating a muscle surface having an array of control points configured to form an outer surface generally defining a muscle structure having an associated volume;
specifying a desired fiber diameter value for each of said muscle fibers; and
determining attributes of each of said primitives defining said associated muscle fibers based on said volume of said muscle structure and said desired fiber diameter value.
-
-
5. A process as recited in claim 4 wherein said step of determining attributes of each of said primitives further comprises:
-
determining a maximum transverse cross-sectional area of said muscle structure, said maximum transverse cross-sectional area being bounded by a maximum circumscribing boundary curve tracing said maximum transverse cross-sectional area on said outer surface, said boundary curve having a length;
determining at least one scaled down continuous curve based on said boundary curve, said first scaled down continuous curve being concentric with said boundary curve and having an associated length;
determining fiber center points along said scaled down continuous curve; and
determining an actual fiber diameter value for each of a plurality of fibers to be defined along said scaled down continuous curve.
-
-
6. A process as recited in claim 4 wherein said outer surface defines a muscle structure having a substantially concave shaped transverse cross-section, and wherein step of determining attributes of each of said primitives further comprises:
-
determining a maximum transverse cross-sectional area of said muscle structure, said maximum transverse cross-sectional area being bounded by a maximum circumscribing boundary curve tracing said maximum transverse cross-sectional area on said outer surface;
determining a first isoparm tracing a first portion of said boundary curve;
determining a second isoparm tracing a second portion of said boundary curve;
duplicating and morphing a selected one of said first and second isoparms to generate a replicated isoparm;
determining fiber center points along said replicated isoparm; and
determining an actual fiber diameter value for each of a plurality of fibers to be defined along said replicated isoparm.
-
-
7. A process as recited in claim 1 wherein said associated primitive is a Ri-cylinder.
-
8. A process as recited in claim 1 wherein each of said objects has an associated identification value that is mapped to an associated point on said manifold surface, and wherein said identification values are assigned to said associated objects in accordance with a noise function.
-
9. A process as recited in claim 1 wherein said manifold surface includes at least one set of local maxima points each having an associated height value that is substantially close to the height values of other ones of said set of local maxima points.
-
10. A process as recited in claim 1 wherein said step of defining said manifold surface includes:
-
defining a first mathematical relationship expressed as a function of a first predefined frequency value defining at least one set of local maxima points on said manifold surface;
determining a second mathematical relationship expressed as a function of a second predefined frequency value that is lower than said first predefined frequency value; and
clamping said first mathematical relationship based on said second mathematical relationship so that each of said local maxima points of said set has an associated height value that is substantially close to the height values of other ones of said set of local maxima points.
-
-
11. A process as recited in claim 10 further comprising a step of quantizing said first mathematical relationship.
-
12. A machine readable storage device having stored therein encoding instructions for executing a process of generating animated images of a muscle structure comprising the steps of:
-
defining an array of objects;
defining a start position, an end position, and an advancement path associated with each of said objects, each said advancement path extending from the associated start position to the associated end position;
defining a manifold surface including a locus of points each being defined in a three dimensional coordinate system and having an associated height coordinate value, each of said objects being associated with one of said points on said manifold surface;
determining an associated advancement start time for each of said objects based on an associated height coordinate value of an associated point on said manifold surface; and
defining animated images of said array of objects advancing along said associated advancement paths in accordance with said associated rates of advancement and said associated advancement start times. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
determining an average duration attribute associated with said array of objects, said average duration attribute indicating an average time required for advancement of said objects from said associated start positions to said associated end positions along said associated advancement paths;
determining an average duration variance attribute associated with said array of objects, said average duration variance attribute indicating a variance in the time required for each of said objects to advance from said associated start position to said associated end position along said associated advancement path; and
defining said associated rate of advancement based on said average duration attribute and said average duration variance attribute using a noise function.
-
-
14. A machine readable storage device as recited in claim 12 wherein said step of defining an array of objects includes defining a muscle structure including an array of fibers each being defined by at least one associated primitive describing the associated fiber, and wherein said start position, said end position, and said advancement path associated with each of said fibers is defined by said associated primitive, and wherein said step of defining animated images includes defining animated images of portions of said fibers gradually appearing or disappearing along said associated primitive.
-
15. A machine readable storage device as recited in claim 14 wherein said step of defining a muscle structure further comprises:
-
generating a muscle surface having an array of control points configured to form an outer surface generally defining a muscle structure having an associated volume;
specifying a desired fiber diameter value for each of said muscle fibers; and
determining attributes of each of said primitives based on said volume of said muscle structure and said desired fiber diameter value.
-
-
16. A machine readable storage device as recited in claim 15 wherein said step of determining attributes of each of said primitives further comprises:
-
determining a maximum transverse cross-sectional area of said muscle structure, said maximum transverse cross-sectional area being bounded by a maximum circumscribing boundary curve tracing said maximum transverse cross-sectional area on said outer surface, said boundary curve having a length;
determining at least one scaled down continuous curve based on said boundary curve, said first scaled down continuous curve being concentric with said boundary curve and having an associated length;
determining fiber center points along said scaled down continuous curve; and
determining an actual fiber diameter value for each of a plurality of fibers to be defined along said scaled down continuous curve.
-
-
17. A machine readable storage device as recited in claim 20 wherein said outer surface defines a muscle structure having a substantially concave shaped transverse cross-section, and wherein step of determining attributes of each of said primitives further comprises:
-
determining a maximum transverse cross-sectional area of said muscle structure, said maximum transverse cross-sectional area being bounded by a maximum circumscribing boundary curve tracing said maximum transverse cross-sectional area on said outer surface;
determining a first isoparm tracing a first portion of said boundary curve;
determining a second isoparm tracing a second portion of said boundary curve;
duplicating and morphing a selected one of said first and second isoparms to generate a replicated isoparm;
determining fiber center points along said replicated isoparm; and
determining an actual fiber diameter value for each of a plurality of fibers to be defined along said replicated isoparm.
-
-
18. A machine readable storage device as recited in claim 12 wherein said associated primitive is a Ri-cylinder.
-
19. A machine readable storage device as recited in claim 12 wherein each of said objects has an associated identification value that is mapped to an associated point on said manifold surface, and wherein said identification values are assigned to said associated objects in accordance with a noise function.
-
20. A machine readable storage device as recited in claim 12 wherein said manifold surface includes at least one set of local maxima points each having an associated height value that is substantially close to the height values of other ones of said set of local maxima points.
-
21. A machine readable storage device as recited in claim 12 wherein said step of defining said manifold surface includes:
-
defining a first mathematical relationship expressed as a function of a first predefined frequency value defining at least one set of local maxima points on said manifold surface;
determining a second mathematical relationship expressed as a function of a second predefined frequency value that is lower than said first predefined frequency value; and
clamping said first mathematical relationship based on said second mathematical relationship so that each of said local maxima points of said set has an associated height value that is substantially close to the height values of other ones of said set of local maxima points.
-
-
22. A machine readable storage device as recited in claim 21 further comprising a step of quantizing said first mathematical relationship.
-
23. A system for executing a process of generating animated images of a two-dimensional array of objects advancing in a third dimension, the system comprising:
-
means for defining an array of objects;
means for defining a start position, an end position, and an advancement path associated with each of said objects, each said advancement path extending from the associated start position to the associated end position;
means for defining a manifold surface including a locus of points each being defined in a three dimensional coordinate system and having an associated height coordinate value, each of said objects being associated with one of said points on said manifold surface;
means for determining an associated advancement start time for each of said objects based on an associated height coordinate value of an associated point on said manifold surface; and
means for defining animated images of said array of objects advancing along said associated advancement paths in accordance with said associated rates of advancement and said associated advancement start times. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30)
means for determining an average duration attribute associated with said array of objects, said average duration attribute indicating an average time required for advancement of said objects from said associated start positions to said associated end positions along said associated advancement paths;
means for determining an average duration variance attribute associated with said array of objects, said average duration variance attribute indicating a variance in the time required for each of said objects to advance from said associated start position to said associated end position along said associated advancement path; and
means for defining said associated rate of advancement based on said average duration attribute and said average duration variance attribute using a noise function.
-
-
25. A system as recited in claim 23 wherein said means for defining an array of objects includes means for defining a muscle structure including an array of fibers each being defined by at least one associated primitive describing the associated fiber, and wherein said start position, said end position, and said advancement path associated with each of said fibers is defined by said associated primitive, and wherein said means for defining animated images includes defining animated images of portions of said fibers gradually appearing or disappearing along said associated primitive.
-
26. A system as recited in claim 23 wherein said associated primitive is a Ri-cylinder.
-
27. A system as recited in claim 23 wherein each of said objects has an associated identification value that is mapped to an associated point on said manifold surface, and wherein said identification values are assigned to said associated objects in accordance with a noise function.
-
28. A system as recited in claim 23 wherein said manifold surface includes at least one set of local maxima points each having an associated height value that is substantially close to the height values of other ones of said set of local maxima points.
-
29. A system as recited in claim 23 wherein said means for defining said manifold surface includes:
-
means for defining a first mathematical relationship expressed as a function of a first predefined frequency value defining at least one set of local maxima points on said manifold surface;
means for determining a second mathematical relationship expressed as a function of a second predefined frequency value that is lower than said first predefined frequency value; and
means for clamping said first mathematical relationship based on said second mathematical relationship so that each of said local maxima points of said set has an associated height value that is substantially close to the height values of other ones of said set of local maxima points.
-
-
30. A system as recited in claim 29 further comprising means for quantizing said first mathematical relationship.
Specification