Schemas / Simulation

rig.sim.character

v1.0.0 · stable maturity: draft 10 fields 2 required

Fields

FieldTypeMeaning
radius float required Capsule radius
height float required Capsule height, end to end
stepHeight float optional Optional. Max step the motor climbs; absent = 0
slopeLimitDegrees float optional Optional. Steepest walkable slope; absent = 45
jumpSpeed float optional Optional. Upward speed on jump, units per second; absent = 0
grounded bool optional Optional. Standing on a surface at save. Absent = the host probes on load
velocity vec3 optional Optional. World-space velocity at load, units per second; absent = at rest
up vec3 optional Optional. Up axis; absent = +Y
floorSnap float optional Optional. Distance the motor snaps down onto a floor; absent = 0
motion enumgrounded · floating optional Optional. grounded or floating; absent = grounded

Kinematic capsule motor. Format when present.

Pose is rig.spatial.transform. Overlap uses a rig.sim.collider when one is present; otherwise the capsule above.

This motor moves the entity. A rig.sim.rigidbody on the same entity is not integrated. Slide counts, floor normals, and platform velocity stay in the host.

JSON Schema

Resolves at https://rig.works/schemas/rig.sim.character.schema.json — raw file.

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://rig.works/schemas/rig.sim.character.schema.json",
  "title": "rig.sim.character",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "radius": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "height": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "stepHeight": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "slopeLimitDegrees": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "jumpSpeed": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "grounded": {
      "$ref": "./_defs.schema.json#/$defs/bool"
    },
    "velocity": {
      "$ref": "./_defs.schema.json#/$defs/vec3"
    },
    "up": {
      "$ref": "./_defs.schema.json#/$defs/vec3"
    },
    "floorSnap": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "motion": {
      "type": "string",
      "enum": [
        "grounded",
        "floating"
      ]
    }
  },
  "required": [
    "radius",
    "height"
  ],
  "x-rig-maturity": "draft"
}

Seen in

play-scene.json