Blended Animation for Arbitrary Aiming in Virtual Space
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Standard inverse kinematic techniques in animation systems only allow limited control over bones and joints, making it difficult for animated characters to aim at arbitrary points in a virtual space, limiting their ability to realistically interact with objects and environments.
Innovation Solution
A method and system for blended animation that generates a geometric representation of a blend space, selects a subset of animation sequences, determines blend weights, and combines them to create a blended animation, allowing characters to aim at arbitrary points by casting a ray from a reference bone and selecting animation sequences associated with intersected polygons.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If standard inverse kinematic techniques are used to control character bones and joints, then the control system remains simple, but the character cannot aim at arbitrary points in virtual space
Solution Approach 1:
The animation control system is segmented into multiple independent animation sequences, each handling a specific bone or joint. This allows the system to control complex character poses by combining simpler, pre-defined animation sequences rather than managing all joints simultaneously, thereby enabling arbitrary point aiming while maintaining manageable system complexity.
Solution Approach 2:
The system transitions from traditional 3D inverse kinematics to a 4D blend space that includes time as an additional dimension. By pre-computing and storing animation sequences in this extended space, the system can efficiently retrieve and blend appropriate sequences for any target position and orientation, achieving arbitrary point aiming capability.
2Adaptability or versatility
If multiple animation sequences are blended to achieve complex character actions, then the character can perform diverse movements, but it becomes difficult to select which sequences to combine and how to weight them
Solution Approach 1:
Animation sequences are pre-computed and stored in a structured blend space during an offline preparation phase. This preliminary action organizes the sequences with their associated weights and selection criteria already determined, so that during runtime, the system only needs to retrieve and blend the pre-prepared sequences based on the target position, rather than making complex selection and weighting decisions in real-time.
Solution Approach 2:
A geometric representation of the blend space is introduced as an intermediary data structure that mediates between the target position and the animation sequences. This intermediary organizes sequences spatially and provides a systematic method for selecting and weighting them based on the target's location in the virtual space, simplifying the otherwise complex sequence combination process.
3Productivity
If only a limited set of animation sequences is used, then the system remains computationally efficient, but the character cannot realistically interact with objects at arbitrary locations
Solution Approach 1:
The system uses dynamic blending of animation sequences based on the character's current state and the target position. Rather than using a fixed, large set of sequences for all possible situations, the system dynamically selects and blends a small subset of relevant sequences in real-time, maintaining computational efficiency while achieving realistic interaction at arbitrary locations through the geometric blend space organization.
Data Source
AI summary
A method for blended animation by providing a set of animation sequences associated with an animated character model is disclosed. In one embodiment, a geometric representation of a blend space is generated from the set of animation sequences using locator nodes associated with each animation sequence. A subset of animation sequences is selected from the set of animation sequences by casting a ray from a reference bone to a target through the geometric representation and selecting animation sequences that are geometrically close to the intersection of the cast ray and the geometric representation. A blend weight is determined for each member animation sequence in the selected subset of animation sequences. A blended animation is generated using the selected subset of animation sequences and the blend weights, then rendered to create a final animation.


