User-selectable forced contiguous data for execution of evaluation logic used in animation control
Abstract
An aspect provides a computer-implemented method for constructing evaluation logic associated with an animation software package. The method comprises receiving at least one software module, the at least one software module including at least one evaluator; writing the at least one software module to at least one executable code object; accepting a signal from a user input device to enable user control over use of the one or more functions; and converting variable length data types to be input into the one or more modules into fixed-length data types in advance of providing the data types as input arguments into the one or more modules.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A computer-implemented method for implementing evaluation logic associated with an animation control rig, the method comprising:
receiving a command to execute the evaluation logic to manipulate the animation control rig, wherein the evaluation logic includes at least two data structures that would be stored noncontiguously in one or more memories; modifying a storing of at least one of the two data structures so that the two data structures are selectively stored in cache memory to reduce data access time to within a time reduction threshold; storing the data structures in association with a computing object that implements at least a portion of the evaluation logic; integrating one or more modules associated with the computing object with one or more host applications, wherein: the one or more host applications includes an animation software package; the one or more modules include one or more functions usable via one of the one or more host applications; accepting a signal from a user input device to enable user control over use of the one or more functions; converting variable length data types to be input into the one or more modules into fixed-length data types in advance of providing the data types as input arguments into the one or more modules; and implementing the evaluation logic by executing the computing object using the two data structures in cache memory, and the animation software package, to cause an animation of the animation control rig.
2 . The computer-implemented method of claim 1 , wherein modifying a storing includes modifying a storing of at least one of the two data structures so that the two data structures are stored in close proximity in cache address memory that is within a proximity threshold, whereby the data structures exhibit increased cache locality relative to initial storage locations.
3 . The computer-implemented method of claim 1 , wherein the two data structures include skeleton data associated with an animation control rig, wherein the skeleton data is represented by the two data structures, which include one or more transform matrices.
4 . The computer-implemented method of claim 3 , wherein the two data structures include skeleton data associated with multiple animation control rigs associated with a particular scene.
5 . The computer-implemented method of claim 1 , wherein the skeleton data is represented by the two data structures, which include one or more transform matrices.
6 . The computer-implemented method of claim 1 , further including selectively restricting connecting one or more Graphics Processing Unit (GPU) variables with a function running on a Central Processing Unit (CPU).
7 . The computer-implemented method of claim 1 , wherein the one or more functions include a function to perform one or more kinematics or inverse kinematics operations, whereby one or more inputs to the function include position or orientation of one or more features of an animation control rig.
8 . The computer-implemented method of claim 1 , further including providing a UI widget with one or more UI controls for enabling user control over functionality and use of the one or more functions by the host application.
9 . The computer-implemented method of claim 1 , wherein the one or more functions include one or more evaluators and control logic for selective manipulation of an animation rig within the host application.
10 . The computer-implemented method of claim 1 , wherein the one or more functions include a scaling function to selectively scale a rendered object.
11 . The computer-implemented method of claim 1 , wherein the one or more functions include a rotation function to selectively rotate a rendered object.
12 . The computer-implemented method of claim 1 , wherein the one or more functions include a translation function to selectively translate a rendered object.
13 . The computer-implemented method of claim 1 , further including using the one or more modules to expose user versioning control of modules via the one or more host application.
14 . The computer-implemented method of claim 1 , further including converting variable length data types to be input into the one or more modules into fixed-length data types in advance of providing the data types as input arguments into the one or more modules.
15 . The computer-implemented method of claim 1 , wherein the one or more modules are implemented via one or more flat files in the portion of contiguous memory.
16 . The computer-implemented method of claim 15 , wherein the one or more modules includes a hierarchy of modules.
17 . The computer-implemented method of claim 16 , wherein the one or more modules includes integration software for facilitating use of functionality provided by the one or more modules.
18 . The computer-implemented method of claim 17 , wherein the integration software includes a compiler enabling Just-In-Time (JIT) compilation of one or more processes for use by the host application.
19 . An apparatus implementing the computer-implemented method of claim 1 .
20 . A non-transitory medium including machine-executable instructions to implement the computer-implemented method of claim 1 .Join the waitlist — get patent alerts
Track US2022188127A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.