Mars Explorer – WIP – Development Notes

(2) Collider: convex, non-trigger. RigidBody.
Things that will be moved by physics: characters, cars, ships, physically interactable parts in the scenario… Colliders must be convex so they can collide with the scenario (non-convex, see below).

IsKinematic: when you move some of these things yourself instead of the physics, but you want other objects to physically interact with them. Example: a self closing door, which would push characters away when closing. Always move these objects with Rigidbody.MovePosition and Rigidbody.MoveRotation from FixedUpdate.

(4) Collider: non-convex. No Rigidbody.
Static scenario that doesn’t move: ground, mountains, trees, streets, sidewalks, rooms, walls, static furniture…

(5) Collider: convex, non-trigger. No RigidBody.
Also for the static scenario, but the parts that may be optimized. Physics calculations are faster among convex colliders, so you may use these in specific parts of the scenario. For example, you may check convex in the collider of a building, a light post, a tree trunk, or any part that might be made convex while conserving most of its shape.

(6) Collider: convex, trigger. No RigidBody.
Static “detectors”. Triggers just launch the OnTriggerEnter / OnTriggerLeave / OnTriggerStay events in your script when any of the moving objects (2) contacts them.This allows you to take decisions based on what’s happening on the scene.

Examples: a power-up that raises life when the player walks on it, an “escape” area the player has to reach for completing the level, a check-point in a racing game…

(7) No Collider. Rigidbody.
Visual objects driven by physics, but without colliding with other objects. Example: an antenna attached to a car via joint. The antenna visually moves with the inertia of the car, but doesn’t collide nor interact with anything.

(8) No Collider. No Rigidbody.
Objects that make or show something, but they don’t really interact with the other objects in the scenario. Examples: visual effects, audio effects, particle systems, dashboard…

The other cases have rare applications, if any:

(1) Collider: non-convex. Rigidbody.
Not supported. A Rigidbody requires a convex collider.

(3) Collider: convex, trigger. RigidBody.
As said, a trigger is just a kind of “event launcher”. It doesn’t cause collisions. This object would be some kind of “entity” being driven by physics, but as it doesn’t have collider, it would just fall down to the infinity.

Note: you may attach trigger colliders to moving objects (2) so you could, for example, detect when some specific object contacts the player. You may have colliders and triggers in the same object. Colliders cause physical collisions, Triggers just raise events in your scripts.