Collider
A physical volume in space which can be collided with by other physics structures. This holds a shape and physics properties, and may be attached to a PhysicsSpace to simulate it inside that space. A collider may also be attached (parented) to a RigidBody, which will make the collider determine its position based on its parent body.
Attaching
A collider may optionally be attached to a RigidBody in the same PhysicsSpace by providing the RigidBodyKey. This has the effect of forcing the collider's position to be relative to the body's - it is effectively parented to that body. This means that setting position has no effect - instead, use relativePosition, which sets the offset relative to this parent body. This persists even if the parent body is removed.
Interaction groups
A collider has two InteractionGroups, which determine if a pair of colliders are considered in contact:
collisionGroup - filters what pairs of colliders should have contacts generated. This happens after the broad-phase, at the beginning of the narrow-phase (see PhysicsEngine.stepSpaces).
solverGroup - filters what pairs of colliders, with contacts already generated, should compute contact forces. This happens at the end of the narrow-phase.
Typically, you would want to modify the collisionGroup to filter out contacts as early as possible; unless you want contacts to be generated, but the forces to not be computed (maybe you want to modify them yourself later), in which case you would use the solverGroup.
Inheritors
Types
Properties
The primary, contact-generation, interaction group (see Collider).
The physics properties.
The handle of which body this collider will follow (see Collider).
The physics mode.
The position of the collider relative to its parent body. Even if the collider has no parent, this will keep the last set relative position.
The secondary, contact-application, interaction group (see Collider).