← WebMCP Directory

urbanlama.github.io

urbanlama.github.io

live Unverified (seed import) Developer Tools 20 tools imperative implementation

Animate a rigged 3D character with an AI agent

First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com

Answer 5 · Act 14 · Transact 1 · Score: Not yet scored

Tool inspector

set_pose

act imperative

EBENE 1, DER HAUPTWEG - setzt eine ganze Koerperhaltung auf einen Frame: alle Gelenke in einem Aufruf, so wie ein Animator ein Schluesselbild setzt. So arbeitet man hier: mehrere Haltungen auf verschiedene Frames setzen; dazwischen wird beim Loesen ueberblendet, weich oder linear (ease). BODEN: die Figur steht immer auf dem Boden, solange du keine Hoehe setzt - der Loeser senkt die Wurzel je Frame so ab, dass der tiefste Punkt auf der Bodenebene liegt (Hocke, Stand, Schritt brauchen kein root). Eine Zahl in root.pos[1] hebt sie an (Sprung, Flug); unter den Boden geht es nie, zu tief Gesetztes wird angehoben und gemeldet. Die Antwort sagt dir mit Zahl, ob sie steht, schwebt oder angehoben wurde. Danach mit look ansehen und mit describe_pose nachmessen. Die angegebenen Gelenke ERSETZEN die Haltung dieses Frames, und das Schluesselbild ist die GANZE Haltung: jeder Kanal, den du hier nicht nennst, steht auf diesem Frame in der Ruhelage (0). Willst du einen Winkel behalten, nenne ihn wieder. set_joint dagegen ist ein Nachtrag und laesst die uebrigen Kanaele in Ruhe. Gelenk- und Kanalnamen kommen aus describe_rig und sind je Gelenk verschieden.

Page: /webmcp-character-animation/

Input schema

PropertyTypeRequiredDescription
frame integer yes Frame, auf dem die Haltung sitzt
joints object yes Gelenkname auf Kanal auf Grad, z. B. {"arm_l": {"lift": 70, "swing": 10}, "elbow_l": {"bend": 80}} — welche Gelenke und Kanäle es gibt, sagt describe_rig
root object no WO die Figur steht und wohin sie schaut. Ohne root bleibt sie an ihrem Ort und steht auf dem Boden. {pos: [x, y, z]} in Metern im Weltsystem aus describe_world; y = null heisst "auf dem Boden" (der Loeser rechnet die Hoehe), eine Zahl in y ist eine feste Hoehe. {turnGrad: Zahl} dreht die ganze Figur um die Hochachse. Ein Schritt: pos [x, null, z] wandert entlang der Blickrichtung, die Hoehe bleibt am Boden. Ein Sprung: Absprungframe mit ease "wurf" (y = null: vom Boden weg, oder eine Zahl), Landeframe mit y = null. Flugdauer und Scheitelhoehe haengen zusammen: der Abstand der beiden Frames bestimmt, wie hoch die Parabel steigt. Flugposen dazwischen (Tuck, Drehung) OHNE pos setzen - sie folgen der Wurfbahn; drehGrad darf dabei stehen. Eine Hoehe im Flug teilt die Parabel in zwei Boegen mit Knick, den validate als Ballistikfehler meldet. Zwischen gesetzten Frames wird die Wurzel wie alles andere ueberblendet.
ease string no Übergang zum nächsten gesetzten Frame. "wurf" ist der freie Fall: der SCHWERPUNKT folgt exakt der Wurfparabel - also genau die Groesse, die die Ballistikpruefung misst. Auch wenn sich die Pose im Flug aendert (Salto, Hocke, Schwungbein), wandert der Schwerpunkt dann nicht gegenueber der Bahn: der Loeser rechnet die Wurzelhoehe je Frame dazu. Die y-Werte, die du an den Schluesselbildern setzt, bleiben WURZELHOEHEN und werden genau getroffen. Nimm ihn fuer die Flugphase - dann genuegen zwei Schluesselbilder fuer den ganzen Flug, und die Ballistikpruefung ist still. Sonst einer von 4: smooth, linear, hold, wurf; ohne Angabe smooth
Raw JSON schema
{
  "type": "object",
  "properties": {
    "frame": {
      "type": "integer",
      "minimum": 0,
      "description": "Frame, auf dem die Haltung sitzt"
    },
    "joints": {
      "type": "object",
      "description": "Gelenkname auf Kanal auf Grad, z. B. {\"arm_l\": {\"lift\": 70, \"swing\": 10}, \"elbow_l\": {\"bend\": 80}} — welche Gelenke und Kanäle es gibt, sagt describe_rig"
    },
    "root": {
      "type": "object",
      "description": "WO die Figur steht und wohin sie schaut. Ohne root bleibt sie an ihrem Ort und steht auf dem Boden. {pos: [x, y, z]} in Metern im Weltsystem aus describe_world; y = null heisst \"auf dem Boden\" (der Loeser rechnet die Hoehe), eine Zahl in y ist eine feste Hoehe. {turnGrad: Zahl} dreht die ganze Figur um die Hochachse. Ein Schritt: pos [x, null, z] wandert entlang der Blickrichtung, die Hoehe bleibt am Boden. Ein Sprung: Absprungframe mit ease \"wurf\" (y = null: vom Boden weg, oder eine Zahl), Landeframe mit y = null. Flugdauer und Scheitelhoehe haengen zusammen: der Abstand der beiden Frames bestimmt, wie hoch die Parabel steigt. Flugposen dazwischen (Tuck, Drehung) OHNE pos setzen - sie folgen der Wurfbahn; drehGrad darf dabei stehen. Eine Hoehe im Flug teilt die Parabel in zwei Boegen mit Knick, den validate als Ballistikfehler meldet. Zwischen gesetzten Frames wird die Wurzel wie alles andere ueberblendet.",
      "properties": {
        "pos": {
          "type": "array",
          "items": {
            "type": [
              "number",
              "null"
            ]
          },
          "minItems": 3,
          "maxItems": 3,
          "description": "Position des Beckens [x, y, z] in Metern; y = null stellt die Figur auf den Boden"
        },
        "turnGrad": {
          "type": "number",
          "description": "Kurzform fuer drehGrad.y — Drehung um die Hochachse in Grad"
        },
        "drehGrad": {
          "type": "object",
          "description": "Drehung der ganzen Figur in Grad, je Achse. x = Salto vorwaerts/rueckwaerts (Nicken), y = Drehung im Stand (Gieren), z = seitliches Kippen (Rollen). Ein Rueckwaertssalto ist x von 0 auf -360 ueber die Flugphase; eine halbe Drehung im Stand ist y von 0 auf 180. Wird zwischen Schluesselbildern ueberblendet, Achse fuer Achse — volle Umdrehungen bleiben dabei volle Umdrehungen.",
          "properties": {
            "x": {
              "type": "number"
            },
            "y": {
              "type": "number"
            },
            "z": {
              "type": "number"
            }
          }
        }
      }
    },
    "ease": {
      "type": "string",
      "enum": [
        "smooth",
        "linear",
        "hold",
        "wurf"
      ],
      "description": "Übergang zum nächsten gesetzten Frame. \"wurf\" ist der freie Fall: der SCHWERPUNKT folgt exakt der Wurfparabel - also genau die Groesse, die die Ballistikpruefung misst. Auch wenn sich die Pose im Flug aendert (Salto, Hocke, Schwungbein), wandert der Schwerpunkt dann nicht gegenueber der Bahn: der Loeser rechnet die Wurzelhoehe je Frame dazu. Die y-Werte, die du an den Schluesselbildern setzt, bleiben WURZELHOEHEN und werden genau getroffen. Nimm ihn fuer die Flugphase - dann genuegen zwei Schluesselbilder fuer den ganzen Flug, und die Ballistikpruefung ist still. Sonst einer von 4: smooth, linear, hold, wurf; ohne Angabe smooth"
    }
  },
  "required": [
    "frame",
    "joints"
  ]
}

Similar websites

morphus.myles4miles.chatgpt.site

morphus.myles4miles.chatgpt.site

Morphus is an AI-native workspace for designing worlds and generating playable game experiences.

live Unverified Developer Tools Transact tools
154 tools A23 / Act124 / T7 Not yet scored Seen 2026-11-05
list_nodes get_scene_settings get_node_details get_terrain_state get_forest_state
Inspect tools
damnpdfs.com

damnpdfs.com

Install the DamnPDFs Codex plugin, pair a browser workspace and use PDF, image and file tools from your coding agent. Includes setup and privacy limits.

live Unverified Developer Tools Transact tools
81 tools A3 / Act77 / T1 Not yet scored Seen 2026-11-05
scan_to_pdf workflow merge_pdf alternate_mix_pdf compress_pdf
Inspect tools
insignifi4nt.github.io

insignifi4nt.github.io

broCAD/M: local-first CAD and CAM for parametric design, wire EDM planning, simulation and controller export.

live Unverified Developer Tools Transact tools
80 tools A29 / Act49 / T2 Not yet scored Seen 2026-11-05
edm_inspect_approach edm_describe_edits edm_get_context edm_list_projects edm_get_project
Inspect tools
cabinet.varera.studio

cabinet.varera.studio

The Cartographer's Cabinet

live Unverified Developer Tools Transact tools
64 tools A10 / Act50 / T4 Not yet scored Seen 2026-11-05
inspect_daylight inspect_cartographers_project list_project_hierarchy inspect_open_map search_project_objects
Inspect tools

Related on Influzer