Methods and Apparatus for Specifying and Interpolating Hierarchical Procedural Models
First Claim
1. A computer-implemented method comprising:
- obtaining a procedural model, the procedural model specified as a hierarchy of two or more modules, each module specifying a sequence of one or more procedural methods, and at least one module specifying a geometry to be drawn by the procedural model according to the procedural methods; and
executing the procedural model to draw a graphical structure comprising one or more geometries specified by the two or more modules, said executing the procedural model comprising;
executing each of the two or more modules according to the hierarchy, said executing each of the two or more modules comprises comprising;
sequentially executing the one or more procedural methods of the respective module, execution of at least one of the procedural methods being controlled by one or more parameters of the respective procedural method, each parameter controlling a specific behavior of a respective procedural method.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus for procedural modeling are described for generating procedural models and exploring procedural model space. Common procedural components (models, modules, and methods) and a hierarchical framework are described that may be used to construct hierarchical procedural models. A model may comprise a hierarchy of one or more modules. Each module includes a sequence of methods and an optional geometry for display. A method may be controlled by one or more parameters. The values of the parameters may be specified via curves. A module description may be condensed into a single array of values for parameters of the module. Thus, a model or module may be specified by filling in values for arrays of parameters for the sequence of methods. An interpolation technique for interpolating between models is described in which models are matched according to a cost function so that ancestry is preserved.
-
Citations
20 Claims
-
1. A computer-implemented method comprising:
-
obtaining a procedural model, the procedural model specified as a hierarchy of two or more modules, each module specifying a sequence of one or more procedural methods, and at least one module specifying a geometry to be drawn by the procedural model according to the procedural methods; and executing the procedural model to draw a graphical structure comprising one or more geometries specified by the two or more modules, said executing the procedural model comprising; executing each of the two or more modules according to the hierarchy, said executing each of the two or more modules comprises comprising; sequentially executing the one or more procedural methods of the respective module, execution of at least one of the procedural methods being controlled by one or more parameters of the respective procedural method, each parameter controlling a specific behavior of a respective procedural method. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system, comprising:
-
at least one processor; a display device; and a memory comprising program instructions, the program instructions executable by the at least one processor to; obtain a procedural model, the procedural model specified as a hierarchy of two or more modules, each module specifying a sequence of one or more procedural methods, and at least one module specifying a geometry to be drawn by the procedural model according to the procedural methods; and execute the procedural model to draw a graphical structure to the display device, the graphical structure comprising one or more geometries specified by the two or more modules, the program instructions further executable by the at least one processor to; execute each of the two or more modules according to the hierarchy; and sequentially execute the one or more procedural methods of the respective module, execution of at least one of the procedural methods being controlled by one or more parameters of the respective procedural method, each parameter controlling a specific behavior of a respective procedural method. - View Dependent Claims (13, 14, 15, 16)
-
-
17. One or more computer-readable storage memories storing program instructions, wherein the program instructions are computer-executable to implement:
-
obtaining a procedural model, the procedural model specified as a hierarchy of two or more modules, each module specifying a sequence of one or more procedural methods, and at least one module specifying a geometry to be drawn by the procedural model according to the procedural methods; and executing the procedural model to draw a graphical structure comprising one or more geometries specified by the two or more modules, said executing the procedural model comprising; executing each of the two or more modules according to the hierarchy, said executing each of the two or more modules comprising; sequentially executing the one or more procedural methods of the respective module, execution of at least one of the procedural methods being controlled by one or more parameters of the respective procedural method, each parameter controlling a specific behavior of a respective procedural method. - View Dependent Claims (18, 19, 20)
-
Specification