Physics and collisions
Bodies, solidity, and how collisions are actually decided.
7 min readBodies
- 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:
- A rule you declare in the graph, pairing two tags.
- 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.