Physics and collisions

Bodies, solidity, and how collisions are actually decided.

7 min read

Bodies

  • Dynamic — moved by velocity and gravity. Players, enemies, projectiles.
  • Static — never moves, but stops things. Platforms, walls.
  • None — no physics at all. UI, decoration, and the 2.5D kits, which do their own depth-based collision.

What collides with what

Two things create a collision:

  1. A rule you declare in the graph, pairing two tags.
  2. Implicit solidity — anything static stops anything dynamic, without you declaring anything.

Overlap versus collide

Collide stops the movement. Overlap detects the contact but lets things pass through — pickups, triggers, damage zones.

Standing on the ground

Whether something is on the floor is checked with a short grace period rather than by asking the physics engine directly. The engine's touching flag alternates on and off while resting on a surface, so a jump that reads it raw fails roughly half the time. If you write your own ground check and jumping becomes unreliable, this is why.

Gravity

Gravity is per-project, under Settings. Top-down games set it to zero. Individual entities can override it.