Particles node

Rope Collider

Collision surfaces for a Rope System: a tiltable Floor, a draggable Line (or a hand-built multi-point polyline), a Circle and a Box. Cables rest on floors, drape over lines, wrap around circles and pile against boxes, with friction and bounce you control. Surfaces can be sculpted directly in the render viewport or driven entirely from data.

Inputs

PortTypeDefault
EnableOff removes this surface, so cables pass straight through where it used to be.booltrue
ShowDraws the shape outline and its drag handles in the viewport. Purely a guide — collisions happen either way.booltrue
TypeWhich surface this is: Floor, Line, Circle or Box. Clamped to that list, and anything outside it becomes Floor.int0
Position XHorizontal centre of the floor, circle or box, in Grafit units. Not used by the Line type.float0
Position YVertical centre of the floor, circle or box, in Grafit units. Not used by the Line type.float-0.6
Position ZDepth placement of the mesh (Geometry type only).float0
GeometryThe mesh ropes collide with — cable any Geometry output. Each rope particle is traced against the real triangles, so ropes drape over and slide off the actual surface. Radius is the skin — how far the rope's centre line rests off it. Needs GPU ray tracing.structure—
AngleTilt of the floor plane in degrees, positive clockwise, so cables slide off to one side. Any value works; only the Floor type uses it.float0
Start XHorizontal start of the line segment, in Grafit units. Line type only, and draggable straight in the viewport.float-0.5
Start YVertical start of the line segment, in Grafit units. Line type only.float-0.4
End XHorizontal end of the line segment, in Grafit units. Line type only.float0.5
End YVertical end of the line segment, in Grafit units. Line type only.float-0.4
PointsConnect a point cloud to bend the line into a multi-point polyline instead of a single segment; up to 33 points, so 32 collision segments. Live values override the handles unless one is being dragged.structure—
RadiusRadius of the circle, or the thickness of the line capsule, in Grafit units. Lifted to at least 0.002.float0.15
Size XFull width of the box, in Grafit units. Lifted to a tiny minimum; Box type only.float0.5
Size YFull height of the box, in Grafit units. Lifted to a tiny minimum; Box type only.float0.3
BouncinessHow much of the impact speed the surface gives back. Clamped to 0…1, where 0 is a dead landing and 1 keeps the cable hopping.float0.1
FrictionHow much the surface holds a cable back from sliding. Clamped to 0…1 — 0 is ice, 1 grips and the cable stays where it lands.float0.3

Outputs

PortType
Configstructure

How It Works

Rope Collider lives inside a Rope System and emits a collider configuration each frame; the container collects all of them (up to 64 collision primitives per system) and the GPU solver resolves them as push-out constraints after each substep. The push-out includes a thickness margin, so cables rest on surfaces rather than sinking into them.

All shapes are XY shapes extruded along Z — a Circle is really an infinite cylinder in depth, a Box a slab. This keeps collision cheap and matches how the rope world is authored in 2D.

Four types, selected by Type, with the inspector showing only the ports each one uses:

TypeValueShapeRelevant ports
Floor0Half-plane through a point, tilted by AnglePosition X, Position Y, Angle
Line1Capsule segment (or polyline) of radius RadiusStart X/Y, End X/Y, Radius, Points
Circle2Disc of radius RadiusPosition X, Position Y, Radius
Box3Axis-aligned rectanglePosition X, Position Y, Size X, Size Y

Sculpting by hand. With Show on, the collider draws its outline in the render viewport. Line colliders additionally get draggable endpoint handles, and Alt-click adds a point — the new point is immediately draggable, so a multi-point polyline is built by clicking along the shape you want. A polyline emits one capsule segment per consecutive pair, capped at 32 segments (33 points) per collider.

Driving from data. The Points input takes a point structure (Grafit's Point N X/Y/Z convention) and rebuilds the polyline from it every frame — a Vision skeleton, a Geometry to Points contour or a Notes to Points layout becomes a live collision surface. Connecting Points auto-creates a Points macro group, which is the source of truth each frame; a handle drag temporarily takes precedence so manual edits are never fought by the data path.

Material. Bounciness (0–1) is restitution — 0 absorbs, 1 makes cables jump off. Friction (0–1) is tangential resistance — 0 lets cables slide off a tilted floor, 1 pins them where they land.

Parameters in Depth

PortTypeDefaultMeaning
EnableBooltrueOff removes the collider entirely (no config is emitted).
ShowBooltrueDraws the outline and, for Line colliders, the draggable handles in the render viewport.
TypeInt00 = Floor, 1 = Line, 2 = Circle, 3 = Box. Dropdown in the inspector.
Position XFloat0Center point, horizontal (Floor / Circle / Box), Grafit units.
Position YFloat−0.6Center point, vertical (Floor / Circle / Box).
AngleFloat0Floor tilt in degrees; positive is clockwise per the Grafit rotation convention.
Start XFloat−0.5Line collider: first endpoint, horizontal.
Start YFloat−0.4Line collider: first endpoint, vertical.
End XFloat0.5Line collider: second endpoint, horizontal.
End YFloat−0.4Line collider: second endpoint, vertical.
PointsStructure—Point array driving a multi-point polyline (≥ 2 points, capped at 33). Overrides the two-point ports while connected.
RadiusFloat0.15Circle radius, or the capsule thickness of a Line collider (minimum 0.002).
Size XFloat0.5Box full width in Grafit units.
Size YFloat0.3Box full height.
BouncinessFloat0.10–1 restitution. 0 = dead landing, 1 = springy rebound.
FrictionFloat0.30–1 tangential resistance. 0 = frictionless slide, 1 = cables stay where they touch.

Output: Config (structure), or Configs for a polyline — collected automatically by the parent Rope System.

Use Cases

  • Cables on the ground — Floor at Position Y −0.7 with Friction 0.6: cables fall, land and stay heaped instead of sliding out of frame.
  • Draped over a bar — Line collider, Radius 0.05, positioned mid-frame with free-ended cables above it: the classic drape, with the cable sliding along the bar as Friction drops.
  • Hand-drawn landscape — set Type to Line, turn Show on and Alt-click a ridge line across the viewport: cables cascade over the terrain you just drew.
  • Live body collision — Vision (Body) → Landmarks to Points → system boundary → collider Points: cables drape over a moving silhouette in real time.
  • Wrapping a disc — Circle collider with Radius 0.35 under a curtain of cables plus Rope Gravity: strands slide around the circumference and hang off both sides.
  • Bounce chamber — a Box with Bounciness 0.8 and a Rope Attract repeller inside: cables ricochet off the container walls.

Tips

  • Alt-click only builds polylines on Line colliders, and only while Show is on — the handles are the interaction surface.
  • Once a polyline exists it takes priority over Start X/Y and End X/Y; delete the extra points to go back to two-point mode.
  • Size X and Size Y are full dimensions for a Box (halved internally), while Radius is a true radius for Circle and Line.
  • The system counts primitives, not nodes: a 20-point polyline consumes 19 of the 64 available collider slots.
  • Give cables enough segments to sample a surface — a 6-segment rope stepping over a thin Line collider can tunnel through; 24 segments or a larger Radius fixes it.
  • Angle on the Floor is clockwise-positive, matching every other rotation in Grafit — tilt it and cables slide downhill at a rate set by Friction.

Open Rope Collider in the interactive catalog →

Rope Collider is one of 381 nodes in Grafit Pro.

Free download. Every feature for 7 days, no card. Then €99.99 once — or keep playing your projects as a Player.

More Particles nodes