Product media placeholder
Replace this area with a screenshot or short walkthrough video during the media sweep.
Second renderer type for softMesh — F381 P1.5. Proves the typed-port output of `softMesh` is renderer-agnostic by consuming the IDENTICAL set of typed ports as `softMeshRender` (vertices, subpathStarts, sharpFlags, bodyCenterX/Y) but rendering a STROKED outline instead of a filled subpath. Also consumes `restVertices` for an optional rest-pose ghost overlay underneath the live outline — useful as a debug aid to see how far the live silhouette has drifted from its rest pose. Wire one softMesh into both renderers (softMeshRender for fill, softMeshDebugRender for outline / rest ghost) and you have a fill + wireframe debug view from a single sim, demonstrating that swapping renderers requires zero changes to the sim.
Inputs
| Port | Type | Description |
|---|---|---|
vertices | float32buffer | Wire from `softMesh.vertices`. Live concatenated vertex buffer in body coords. |
restVertices | float32buffer | Wire from `softMesh.restVertices` for the rest-pose ghost. Optional — set `restOpacity: 0` if unwired. |
subpathStarts | uint16buffer | Wire from `softMesh.subpathStarts`. Same layout for both vertices and restVertices. |
sharpFlags | uint16buffer | Wire from `softMesh.sharpFlags`. Sharp-corner flag per vertex. |
bodyCenterX | float | Wire from `softMesh.bodyCenterX`. |
bodyCenterY | float | Wire from `softMesh.bodyCenterY`. |
opacity | float | Stroke opacity for the live outline, 0..1. |
Outputs
| Port | Type | Description |
|---|---|---|
| - | - | No ports declared. |
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
selector | elementSelector | "" | Required. Match the linked softMesh's `selector`. |
colour | colorString | "#1a1a1a" | Live Outline Colour |
restColour | colorString | "#888888" | Rest Ghost Colour |
restOpacity | float | 0.4 | 0 = hide rest ghost (live outline only). 0.3-0.5 = visible ghost beneath live deformation. min 0; max 1; step 0.05 |
strokeWidth | float | 1.5 | Stroke Width (px) min 0.5; max 10; step 0.5 |
Use cases
- Fill + outline debug overlay — pair with `softMeshRender` on the same softMesh; fill renders the silhouette, debug renders the stroked outline.
- Rest-pose ghost — wire `softMesh.restVertices` into `restVertices`; set `restOpacity: 0.4`. Shows the original rest silhouette ghosted under the live deformation.
- Wireframe-only view — set `restOpacity: 0` and omit the fill renderer to render only the deforming outline.
Related nodes
Envelope
Use softMeshDebugRender 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-effects/