Skip to content

Minecraft skin poses

18 named poses, six adjustable joints and animation frames, all from the URL. Here is how the pose system works and what every pose looks like.

One parameter

Posing a skin should not require a 3D program. With Skin Render it is one query parameter on the body (or bust) render:

text
https://skinrender.dev/render/069a79f444e94726a5befca90e38aaf5/body?pose=wave
Notch in the default pose default
Notch in the wave pose wave
Notch in the sit pose sit
Notch in the sneak pose sneak
Notch in the dab pose dab
Live renders. Change the word after pose= and the whole figure changes.

The names are plain English and each one is a complete set of rotations for the head, the torso, both arms and both legs. Because the render is generated on request from the player’s current skin, the image stays correct when they change skin, and because the URL is deterministic it is cached everywhere along the way.

All 18 poses on the default Steve skin. Poses marked anim are cycles and accept frame.

How the pose system works

The player model has six movable parts: head, torso (which carries the head and arms with it), left arm, right arm, left leg and right leg. Each part rotates around three axes, described with the aviation words the rest of the API uses: pitch (forward and back), yaw (twist) and roll (out to the side). Six parts times three axes is eighteen numbers, and that is all a pose is. pose=wave is simply a preset that fills in those eighteen numbers; default sets them all to zero.

Any of the eighteen can be set directly with a parameter named after the part and the axis, such as rightArmPitch, headYaw or leftLegRoll. Because pitch is by far the most used, the four limbs have short aliases: rightArm=90 means rightArmPitch=90. All angles are degrees (radians with units=rad) and wrap around.

  • Positive pitch swings a limb forward; on the head it tips the chin down. rightArm=90 is straight out in front, rightArm=180 straight up.
  • Positive roll moves a limb outward, away from the body, which is how the T-pose is made: leftArmRoll=90&rightArmRoll=90.
  • Yaw twists a part on its own axis, most useful on the head (headYaw=-25 to glance sideways) and the torso (bodyYaw=20 for a turned upper body while the legs stay put).

Combining a pose with overrides

Named poses and explicit joints combine: start from the pose, then any joint you name replaces that joint only. This is how you get a wave with the head turned toward the hand, a sit with crossed-looking legs, or a salute with a slight lean.

Dinnerbone with pose=wave&headYaw=-20
pose=wave&headYaw=-20
Dinnerbone with pose=sit&leftLegRoll=15&rightLegRoll=-15
pose=sit&leftLegRoll=15&rightLegRoll=-15
Dinnerbone with pose=salute&bodyRoll=8&headRoll=-8
pose=salute&bodyRoll=8&headRoll=-8

You can also skip the named pose entirely and build from zero. A “thinking, leaning on a wall” pose, for instance, is a handful of parameters:

text
https://skinrender.dev/render/853c80ef3c3749fdaa49938b674adae6/body?yaw=-30&headPitch=8&headYaw=15&bodyRoll=-6&rightArmPitch=-110&rightArmRoll=-20&leftLegRoll=12

Note the last parameter: yaw without a part name is the camera, not a joint. Camera parameters describe where you look from; joint parameters describe the figure. They are independent, so the same pose can be shown from any angle.

Animation and GIF frames

walk, run, dance, wave are cycles, and frame (0 to 1) picks where in the cycle the figure is. Render a sequence of frames and stitch them into a GIF with ImageMagick, ffmpeg or Pillow; the poses documentation has the exact commands. Two rules make it look right: keep every frame at the same size, and add fit=false so the camera does not re-frame each frame around the moving limbs.

Alex running, frame 0
frame=0
Alex running, frame 0.2
frame=0.2
Alex running, frame 0.4
frame=0.4
Alex running, frame 0.6
frame=0.6
Alex running, frame 0.8
frame=0.8

Poses on the bust

The bust render shows head, torso and arms, so upper-body poses read well there and the legs are simply not drawn. think, salute, shrug, wave and point make good portraits; fov=40&pitch=-10 adds a little drama. Leg parameters are accepted but have no visible effect on a bust.

text
https://skinrender.dev/render/069a79f444e94726a5befca90e38aaf5/bust?size=320&pitch=-10&fov=40&pose=shrug

Try it

The playground has a select for every pose, a slider for every joint and the frame slider for the animated ones, with a live preview and the resulting URL ready to copy. The full reference is the poses documentation.

Frequently asked questions

How do I pose a Minecraft skin?

Add pose=<name> to a body or bust render: https://skinrender.dev/render/<uuid>/body?pose=wave. There are 18 names, and every joint can be adjusted on top.

Can I make my own pose?

Yes. Set any of the eighteen joint angles directly, for example rightArm=-120&headPitch=-10, with or without a named pose underneath. Explicit joints override the named pose for that joint only.

Can I make a GIF?

The animated poses (walk, run, dance, wave) accept frame from 0 to 1. Render ten or twenty frames with fit=false and assemble them with any GIF tool; the API returns PNG frames, not GIFs.

Do poses work on the head or face render?

No. Poses apply to body and bust. The head render has a camera (yaw, pitch) but no joints to move.

  • Render types: Every render type of the Minecraft skin API with its default size, aspect ratio, which parameters apply and live example URLs for each one.
  • Parameters: Every query parameter of the Minecraft skin render API: size, camera yaw and pitch, fov, layers, capes, poses, per-joint angles and fallbacks, from the code.
  • Poses: All 18 named Minecraft skin poses with live renders, per-joint overrides, sign conventions and the frame parameter for walk, run, dance and wave GIF frames.
  • Examples: Copy-paste recipes: profile pictures, Discord bot embeds, forum signatures, server list cards, textures by hash, perspective portraits and animation frames.
  • Playground: build any of these URLs by clicking.