The Untold Engine simplifies adding animations to your rigged models, allowing for lifelike movement and dynamic interactions. This guide will show you how to set up and play animations for a rigged model.
Animations bring your models to life by adding movement and expression. Use cases include:
Characters performing actions like walking, running, or jumping. Machines with moving parts, such as gears or pistons. Environmental animations, like trees swaying or doors opening.
Start by creating an entity to represent your animated model.
let redPlayer = createEntity()
Load your rigged model’s .usdc file and link it to the entity. This step ensures the entity is visually represented in the scene.
setEntityMesh(entityId: redPlayer, filename: "redplayer", withExtension: "usdc", flip: false)
Note: If your model renders with the wrong orientation, set the flip parameter to false.
Load the animation data for your model by providing the animation .usdc file and a name to reference the animation later.
setEntityAnimations(entityId: redPlayer, filename: "running", withExtension: "usdc", name: "running")
Trigger the animation by referencing its name. This will set the animation to play on the entity.
changeAnimation(entityId: redPlayer, name: "running")
To pause the current animation, simply call the following function. The animation component will be paused for the current entity.
pauseAnimationComponent(entityId: redPlayer, isPaused: true)
- Animation System:
- The engine uses a skeletal animation system that applies transformations to the rigged model's joints. The animation is played in a loop or as specified in the animation file.
- Efficient Updates:
- Only the affected parts of the model are recalculated each frame, ensuring optimal performance.
Once the animation is set up:
- Run the project: Your model will appear in the game window.
- Press "P" to enter Game Mode:
- The model will play the assigned animation in real time.
- Name Animations Clearly: Use descriptive names like "running" or "jumping" to make it easier to manage multiple animations.
- Debug Orientation Issues: If the model’s animation appears misaligned, revisit the flip parameter or check the model’s export settings.
- Combine Animations: For complex behaviors, load multiple animations (e.g., walking, idle, jumping) and switch between them dynamically.