Character Motion Graph Synthesis for Real-Time Multiplayer Animation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for animating characters in video games, such as animation state machines (ASMs) and motion graphs, struggle with realism, scalability, responsiveness, and data efficiency, failing to produce lifelike character movements, especially in complex interactions and tight spaces.
Innovation Solution
A graph structure is generated from motion capture data by identifying dominant poses and transitions, forming master pose nodes, and adding transitions between them, allowing for realistic and responsive character motion synthesis in video games.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If animation state machines (ASM) are used to animate characters, then character motion can be controlled through predefined animations, but the realism of motion suffers because animators can only conceive of a limited number of clips while achieving realism requires a far greater number of clips
Solution Approach 1:
The animation data is segmented into dominant poses rather than using complete animation clips. The system identifies and stores only the key poses (dominant poses) from motion capture data, then synthesizes complete animations by sequencing these poses based on game state requirements. This segmentation allows for far greater motion variety from a limited data set.
Solution Approach 2:
The system transitions from static predefined animation clips to dynamic pose synthesis. Instead of selecting from fixed clips, the system dynamically generates animations by selecting and sequencing dominant poses based on real-time game state, character velocity, acceleration, and desired motion goals, enabling realistic motion adaptation to changing conditions.
2Device complexity
If animation state machines (ASM) are used to define transitions between animations, then transitions can be managed through state graphs, but the system does not scale well since any new interaction requires a number of entry and exit points to connect with the data, the creation of which scales geometrically
Solution Approach 1:
The system extracts the essential motion information from complete animation clips by identifying dominant poses. Instead of managing transitions between entire clips, the system manages transitions between key poses, significantly reducing the complexity of the state graph while maintaining or improving adaptability to new interactions.
Solution Approach 2:
The system adds a temporal and contextual dimension to pose selection by considering character velocity, acceleration, and desired motion goals when selecting and sequencing dominant poses. This multi-dimensional approach allows the same pose to be used in different contexts with different meanings, greatly increasing versatility without adding proportional complexity.
3Device complexity
If animation state machines (ASM) are used for character motion, then transitions between animations can be defined, but motion will continuously achieve the same poses from the core library, introducing a tiling effect over time that is similar to texture tiling over space
Solution Approach 1:
The system introduces periodic variation in pose selection by considering character velocity and acceleration to determine which dominant poses to select and how to sequence them. This periodic modulation based on motion dynamics ensures that the same physical poses are achieved with different timing and context, eliminating the tiling effect while maintaining system simplicity.
4Manufacturing precision
If motion graphs are used to pre-calculate transitions between animation segments, then high quality motion can be produced with flexibility of multiple possible motion paths, but the system is less responsive to changing animation goals which is often the case for interactively controlled player characters
Solution Approach 1:
The system performs preliminary action by pre-identifying and storing dominant poses from motion capture data, but leaves the sequencing and selection of these poses to be determined at runtime based on current game state. This approach captures the quality of pre-calculated motion graphs while achieving the responsiveness of runtime decision-making.
5Speed
If motion matching is used to continuously search the entire animation dataset for the best next frame, then responsiveness to animation goals is improved, but it can be hard to predict and control which animation data will be selected at any given time
Solution Approach 1:
The system changes the parameter space from searching entire animation clips to selecting from predefined dominant poses with specific characteristics (velocity, acceleration, orientation). This parameterization makes the selection process predictable and controllable while maintaining responsiveness, as the system can anticipate which poses will be selected based on current motion state and goals.
6Manufacturing precision
If current approaches are used to solve for singular constraints, then target transform in space-time can be achieved, but the systems are not agile enough to achieve multiple constraints such as walking around an obstacle while moving to a specific rhythm and face-palming every 3rd step
Solution Approach 1:
The dominant pose selection system is designed to be universal and multi-functional, capable of satisfying multiple constraints simultaneously. By considering velocity, acceleration, orientation, and desired motion goals when selecting poses, the system can handle diverse requirements including navigation around obstacles, rhythmic motion patterns, and timed actions all through the same pose sequencing framework.
Data Source
AI summary
Systems and methods for constructing an offline graph structure configured to enable controlled character motion synthesis in a multi-player online game include a graph structure that has a plurality of master nodes and edges such that each master node is representative of a set of similar dominant poses and edges are representative of plausible transitions between these dominant poses. Motion is generated at runtime by navigating through the graph structure and applying dominant poses from the plurality of master nodes. Since an online game describes a desired motion of a character using a plurality of control parameters therefore, transitions that match the plurality of control parameters most closely are selected from the graph structure.


