Contact events are buffered in the world and are available as begin/end/hit
events in the current time step. These are borrowed from world storage and
invalidated by the next call to world_step. (b2ContactEvents)
An end touch event is generated when a shape stops overlapping a sensor
shape. Always confirm the shape id is valid before use — either shape may
have been destroyed. (b2SensorEndTouchEvent)
Sensor events are buffered in the world and are available as begin/end
events in the current time step. These are borrowed from world storage and
invalidated by the next call to world_step. (b2SensorEvents)