US2022188127A1PendingUtilityA1

User-selectable forced contiguous data for execution of evaluation logic used in animation control

Assignee: UNITY TECH SFPriority: Jul 24, 2020Filed: Mar 8, 2022Published: Jun 16, 2022
Est. expiryJul 24, 2040(~14 yrs left)· nominal 20-yr term from priority
G06F 8/44G06T 2213/08G06F 8/65G06F 9/5027G06F 9/451G06F 9/44526G06T 13/40G06F 9/5011G06T 2200/24G06T 2219/2016G06F 3/04845G06T 19/20G06F 3/04842G06T 1/60G06F 9/45504
60
PatentIndex Score
0
Cited by
0
References
0
Claims

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-modified
What 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.