Help guide

Physics Body Lookup node

Updated June 21, 2026

Physics Body Lookup node

Product media placeholder

Replace this area with a screenshot or short walkthrough video during the media sweep.

Body-id-as-input pose source. Takes a `bodyId` input that may change every frame (typically wired from `physicsCollisionPulse.otherBodyId` or `physicsMouseDrag.pickedBodyId`), reads the live body pose from the engine, and publishes pose + velocity outputs. `x`/`y` are converted to viewport pixels using the world's frame element so consumers like `cursorProximityWrite` and `domVariablesWrite` can use them directly. `frameX`/`frameY` expose the raw frame-local pose for graph nodes operating in physics coords.

Type physicsBodyLookupCategory solversContext sharedDynamic ports noCompound no

Inputs

PortTypeDescription
worldanyWire to the sibling `physicsWorld.world` output. Loader resolves at bind for the bridge handle + frame element.
bodyIdfloatEngine body handle. Wire from `collisionPulse.otherBodyId`, `mouseDrag.pickedBodyId`, `bodyStagger.bodyIds[i]`, or any expression. -1 = unset → outputs hold zeros.

Outputs

PortTypeDescription
xfloatBody center in viewport coords. Frame-local pose × frame scale + frame BCR.left. Wire into `cursorProximityWrite.cursorX`, `domPropertyWrite`, etc.
yfloatY (viewport px)
frameXfloatRaw frame-local pose. Use when wiring into another physics primitive that already operates in frame coords.
frameYfloatFrame Y (px)
rotationfloatRotation (rad)
vxfloatVelocity X (px/s)
vyfloatVelocity Y (px/s)
awakefloat1 while the engine considers the body active; 0 once it has settled.

Parameters

ParameterTypeDefaultDescription
---No configurable parameters.

Use cases

  • Smiley-as-cursor on impact — `collisionPulse.otherBodyId` → `bodyLookup.bodyId` → `bodyLookup.x/y` → 2nd `cursorProximityWrite.cursorX/Y`. The colliding smiley drives the same per-char push effect as the real cursor.
  • Trail at the dragged body — `mouseDrag.pickedBodyId` → `bodyLookup` → `domPoseWrite` on a trail element so the trail tracks whichever ball the user is holding.
  • State-machine gates on a specific body's motion — `bodyLookup.vx`/`.vy` → `expression` → state transition when speed crosses threshold.

Related nodes

Envelope

Use physicsBodyLookup as the node type inside a graph node envelope. Add id, optional params, optional connections, and optional activeWhen based on the guide context.

Generated source

Registry faster-motion-docs/node-registry.jsonCategory page /help/faster-motion/faster-motion-node-category-solvers/

Was this guide helpful?

Sunny Arora

Written by

Sunny Arora

Get technical deep dives delivered to your inbox

Join creators and developers who get exclusive insights, tutorials, and behind-the-scenes content every week.

No spam. Unsubscribe anytime.

Continue Exploring

You might also enjoy