Blog

How to use a rigged GLB character in Blender

Import a rigged .glb into Blender, switch between its animation clips, pose it for a render and export it again for your engine.

Blender opens rigged .glb files out of the box. This guide shows what you get when you import a character, how to switch between its animation clips, how to pose it for a still, and what to watch for when you export it again. We tested each step in Blender 5.2.2 LTS with a character from Hatchery3D.

Import it

Go to File → Import → glTF 2.0 (.glb/.gltf) and pick the file. The default settings are right for a game character, so click Import glTF 2.0.

You get these objects in the Outliner:

  • Rig: the armature, with 77 bones and Hips at the root.
  • The mesh, a child of the rig and skinned to it.
  • HandSocket_L and HandSocket_R: two empties parented to the hand bones, in the palms.
  • Icosphere: the shape that Blender's importer uses to draw the bones. It sits in a collection called glTF_not_exported, and it never goes into an export. Leave it alone.

The character comes at its real height in metres, with its feet on the floor at the origin, facing the −Y axis (Blender's front view).

Switch between clips

Each of the nine clips becomes an action: idle, walk, run, jump, punch, slash, hit, death and wave. The importer puts each one on its own muted NLA track, and makes one of them the active action. To play another:

  1. Select Rig.
  2. Open a Dope Sheet and switch its mode to Action Editor.
  3. Pick the clip from the action list in the header.
  4. Press Space to play.

Blender's scene runs from frame 1 to 250 by default, which is longer than any clip. Set the End frame in the Timeline to the last key of the clip, so the loop of walk or run plays without a pause. The importer fits the clips to the scene's frame rate (24 frames per second by default), so they play at their real speed.

Pose it for a render

The easiest pose is one from a clip. Pick an action, scrub to a frame you like, and render. For a pose of your own:

  1. Select Rig and switch to Pose Mode (Ctrl Tab).
  2. Rotate bones with R. Keys from the active action override your changes when the frame changes, so unlink the action first (the X next to its name) if you want to keep the pose.
  3. To see the T-pose the character was rigged in, open the armature's Object Data properties and set Pose Position to Rest Position.

Attach props

Hatchery3D characters come with empty hands. Make a sword, a staff or a lantern as a separate prop, import it, and parent it to HandSocket_R or HandSocket_L (select the prop, then the socket, and press Ctrl P → Object). Move it until the grip sits in the palm. It now follows the hand in every clip.

Export it again

When you have edited the mesh, the textures or the clips, export with File → Export → glTF 2.0:

  • Keep Format on glTF Binary (.glb): one file with the textures inside.
  • Under Animation, keep the mode on Actions. Blender then writes every action as its own clip, whether it is active or on a muted NLA track. We exported a character with the default settings and got all nine clips back.

The file you get from Hatchery3D also carries a few notes for game engines in its glTF extras: which clips loop, and the measured speed of walk and run in metres per second. Blender's importer doesn't keep those, so a re-export drops them. In Godot, that changes nothing, because its importer ignores them too. Set the loop mode of idle, walk and run in your engine's import settings. Our Godot guide shows how.

Props in Blender

A prop imports as one mesh, with its pivot at the base. Two more things come with it:

  • prop_collision: an empty at the centre of the collision box. Its custom properties hold the box's size and centre, in case you want to rebuild the collider for your engine. Godot reads the collider straight from the file.
  • prop_LOD1 and prop_LOD2: the lower levels of detail. They sit in a hidden collection called Orphan Nodes, so they don't cover the full mesh.

Quick reference

ToDo
ImportFile → Import → glTF 2.0
Play another clipDope Sheet → Action Editor → pick the action
See the T-poseArmature properties → Pose Position → Rest Position
Hold an itemParent it to HandSocket_R or HandSocket_L
Export all clipsFile → Export → glTF 2.0, Animation mode: Actions