Talos docs

joint

Since 0.6
Plain text

Use it in a scene entity's components list as { "type": "joint", … }. The contract writes the fields flat and refuses unknown keys.

Fields

FieldTypeRequiredDefaultAllowed valuesDescription
kindJointKindyesfixed, revolute, prismatic
connectedTostringnoThe entity whose body is B. Absent, the joint is to the world: a fixed point in space.
anchorVec3no[0,0,0]The joint's point on A, in A's local frame: metres along A's axes from its origin, not multiplied by its scale. Default [0, 0, 0], the entity origin.
connectedAnchorVec3noThe joint's point on B, in B's local frame — or a world point when there is no B. Default: wherever anchor is when the scene loads, so the joint starts together.
axisVec3no[0The free axis of a revolute or prismatic joint, in A's local frame; any length but zero. Default [0, 1, 0] (a door's hinge). A fixed joint has no free axis and ignores it.
limitsVec2no[min, max] along the free axis: radians for a revolute joint, metres for a prismatic one, measured from the pose the joint was made in. Absent, unlimited.
motorJointMotorno
collideConnectedbooleannoWhether A and B still collide with each other. Default false: a hinge's two leaves overlap.

Rules that can refuse it

Example

From the contract's tested fixture fixtures/contract/full20/scene.json#crate-b.

{
  "type": "joint",
  "kind": "revolute",
  "connectedTo": "crate-a",
  "anchor": [
    0,
    -0.5,
    0
  ],
  "axis": [
    1,
    0,
    0
  ],
  "limits": [
    -0.5,
    0.5
  ]
}