System, method, and computer program product for optimization of a scene graph
First Claim
1. A system for optimization of a scene graph, comprising:
- an optimization base comprising logic for at least one atomic optimization;
an optimization registry listing said at least one atomic optimization, and further listing parameter and priority information associated with said at least one atomic optimization;
an optimization manager for creating, configuring, and applying an optimization process to an input scene graph, wherein said optimization process comprises logic for an atomic optimization; and
an optimization configuration manager for accepting user configuration information to said optimization process, said user configuration information comprising selection of one or more of said at least one atomic optimization.
6 Assignments
0 Petitions
Accused Products
Abstract
The invention described herein is a system, method, and computer program product for optimization of a scene graph. The system includes an optimization base that contains a set of specific atomic optimizations. The system also includes an optimization registry that lists each atomic optimization, parameters associated with each optimization, and priority information relating to the necessary order in which optimizations must be performed. The system also includes an optimization manager which creates, configures, and applies an optimization process to an input scene graph. The system further includes an optimization configuration module for accepting user input to the optimization process. The method includes the steps of receiving an input scene graph, creating the optimization process, applying the optimization process to the input scene graph, and post-optimization processing. The optimization process can be performed for any of a number of purposes, such as the enhancement of scene graph traversal time, the enhancement of drawing time, the reduction of memory usage, improved efficiency of data manipulation, and the targeting of a specific rendering platform.
-
Citations
60 Claims
-
1. A system for optimization of a scene graph, comprising:
-
an optimization base comprising logic for at least one atomic optimization; an optimization registry listing said at least one atomic optimization, and further listing parameter and priority information associated with said at least one atomic optimization; an optimization manager for creating, configuring, and applying an optimization process to an input scene graph, wherein said optimization process comprises logic for an atomic optimization; and an optimization configuration manager for accepting user configuration information to said optimization process, said user configuration information comprising selection of one or more of said at least one atomic optimization. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A method of optimization of a scene graph, comprising the steps of:
-
a. receiving an input scene graph; b. creating an optimization process; and c. applying the optimization process to the input scene graph to create a scene graph optimized for at least one of enhancement of traversal time, enhancement of drawing time, reduction of memory usage, efficiency of data manipulation, and targeting a specific rendering platform, wherein said step b comprises the steps of; i. receiving user input identifying an atomic optimization and any associated parameters; ii. accessing the atomic optimization via an optimization registry; iii. incorporating the atomic optimization into the optimization process; iv. if the user input comprises parameters associated with the optimization, configuring the optimization process according to the parameters; and v. if the user input does not comprise parameters, configuring the optimization process according to default parameters. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
-
-
40. A computer program product comprising a computer usable medium having computer readable program code means embodied in said medium for causing an application program to execute on a computer that optimizes a scene graph, said computer readable program code means comprising:
-
a. computer readable program code means for causing the computer to receive an input scene graph; b. computer readable program code means for causing the computer to create an optimization process; and c. computer readable program code means for causing the computer to apply the optimization process to the input scene graph to create a scene graph optimized for at least one of enhancement of traversal time, enhancement of drawing time, reduction of memory usage, efficiency of data manipulation, and targeting a specific rendering platform, wherein said computer readable program code means b comprises; i. computer readable program code means for causing the computer to receive user input identifying an atomic optimization and any associated parameters; ii. computer readable program code means for causing the computer to access the atomic optimization via an optimization registry; iii. computer readable program code means for causing the computer to incorporate the atomic optimization into the optimization process; iv. computer readable program code means for causing the computer to configure the optimization process according to the parameters, if the user input comprises parameters associated with the optimization; and v. computer readable program code means for causing the computer to configure the optimization process according to default parameters, if the user input does not comprise parameters. - View Dependent Claims (41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58)
-
-
59. A method of optimization of a scene graph, comprising the steps of:
-
a. receiving an input scene graph; b. creating an optimization process; c. applying the optimization process to the input scene graph to create a scene graph optimized for at least one of enhancement of traversal time, enhancement of drawing time, reduction of memory usage, efficiency of data manipulation, and targeting a specific rendering platform; and d. performing post optimization processing, wherein said step d comprises the steps of; i. performing validity checks on the optimized scene graph; ii. creating statistics based on the optimization process; and iii. outputting the statistics.
-
-
60. A computer program product comprising a computer usable medium having computer readable program code means embodied in said medium for causing an application program to execute on a computer that optimizes a scene graph, said computer readable program code means comprising:
-
first computer readable program code means for causing the computer to receive an input scene graph; second computer readable program code means for causing the computer to create an optimization process; and third computer readable program code means for causing the computer to apply the optimization process to the input scene graph to create a scene graph optimized for at least one of enhancement of traversal time, enhancement of drawing time, reduction of memory usage, efficiency of data manipulation, and targeting a specific rendering platform; and fourth computer readable program code means for causing the computer to perform post optimization processing wherein said fourth computer readable program code means comprises; i. computer readable program code means for causing the computer to perform validity checks on the optimized scene graph; ii. computer readable program code means for causing the computer to create statistics based on the optimization process; and iii. computer readable program code means for causing the computer to output the statistics.
-
Specification