Step-by-step game asset guide
How to Animate a 3D Model for a Game
Choose between object motion, rigid-part rigging, skeletons and Shape States, then create clean named animation clips for GLB export.
Updated 27 August 2026 · Reviewed against the current FORM 3D workflow
- Typical time
- 25–45 minutes
- Reading time
- 9 minute read
- Difficulty
- Beginner–intermediate
- Result
- One or more deliberate looping or one-shot animation clips
What this guide covers
The simplest animation system that can express the motion is usually the most reliable. A spinning coin needs one object transform, a door needs a hinge-like parent relationship, a bending character needs a skeleton and a squash effect needs a morph target or Shape State.
Mixing systems without a reason creates conflicts and makes export harder to diagnose. Decide what physically moves, which properties change and whether the mesh must deform before recording keys.
Before you begin
- A model with a sensible object hierarchy and pivots
- A clear animation purpose such as Idle, Open, Spin or Reveal
- A target duration and whether the clip should loop
Choose the correct animation method
- Object presets: spins, bounces, floats, reveals and other whole-object motion.
- Rigid connections: doors, wheels, levers, robot limbs and mechanical assemblies.
- Skeletons: one continuous mesh that must bend across joints.
- Shape States: topology-locked changes such as squash, inflate, widen or twist.
- Camera presets: rendered image/video motion, not model animation inside a GLB.
Prepare pivots and hierarchy
Rotation happens around the pivot. A door pivot belongs on its hinge edge; a wheel pivot belongs at its axle. Parenting allows child parts to follow a moving parent while retaining local animation.
- Separate independently moving parts into distinct objects.
- Set a centre, bottom or custom pivot for each moving object.
- Use Connect Parts to create the intended parent-child relationship.
- Choose hinge, slider, fixed or ball metadata where it communicates the mechanism.
- Test the part manually before recording a clip.
Create and name the animation clip
- Open Animate and add or rename a clip.
- Use clear names such as Idle, Open, Close, Spin or Hit.
- Set duration and looping before placing many keys.
- Move the playhead to the initial time and record the starting state.
- Move to the next time, change the object, joint or Shape State and record again.
- Preview from the beginning and inspect the final transition.
Edit keyframes and easing
Linear easing moves at a constant rate. Smooth easing accelerates and decelerates. Snappy and Bounce are sampled into standard keyframes so the exported animation does not depend on a viewer-specific easing feature.
- Open the timeline for exact key placement.
- Shift-select multiple keys when timing needs to move together.
- Drag, duplicate, copy, paste or delete the selected keys.
- Use one easing style consistently within a simple mechanism.
- Resolve reported conflicts when two systems drive the same property.
Build a clean loop
- Match the first and final pose for a seamless idle or spin.
- Avoid duplicating both endpoints when the engine loops across the boundary unless the motion requires a held frame.
- Preview several consecutive cycles, not only one pass.
- Check that child objects do not drift because of an incorrect parent transform.
Export and verify animation
- Enable Include animations in Export.
- Review the number and names of animation clips.
- Keep transforms unbaked when animation or deformation data needs the hierarchy.
- Verify and export GLB.
- Import the model into the target engine and check clip names, duration, looping, root motion and material state.
Frequently asked questions
Do I need a skeleton to animate every 3D model?
No. Use object transforms or rigid parent-child animation whenever the mesh does not need to bend. Skeletons add complexity and are justified for continuous deforming surfaces.
Why is camera animation missing from my GLB?
FORM 3D treats camera presets as render direction for PNG or video output. Model-only GLB export includes model animation but intentionally excludes the editor camera workflow.
What is the difference between a Shape State and a skeleton?
A skeleton deforms a mesh through weighted joints. A Shape State stores a fixed alternate vertex position set and blends its weight. Shape States suit squash or facial-like changes; skeletons suit articulated bending.
Apply this workflow in the editor
Your project remains editable and stored locally on this device.