Do not use Triangle Mesh colliders!
Okay, slightly more detailed: Use Convex Hull colliders wherever you can!
It is actually faster in many cases for the physics engine to calculate convex bounds rather than concave triangle bounds. In one example, I replaced the floor of my Pahts Shell with 3 convex meshes rather than a single triangle mesh. It loads much faster once I removed unnecessary colliders and converted as many as possible to convex hulls.
Here is the actual mesh, which I had originally set to use triangle bounds. This is a top view, but the floor extends for about 1 Blender unit down.
Here are the new colliders (3 of them), all using convex hull bounds, and much faster for loading and collision detection.
Convex bounds work as if the object was "shrink-wrapped", forming a collider from the vertices the farthest away from the centre. With convex bounds, you need only to store the vertices that are farthest away, whereas triangle/proxy bounds need to store all vertices and faces, even if they aren't needed.
Good things to use convex bounds for:
- Bookshelves
- Desks
- Furniture in general
- Trees (only the trunks if they are fairly straight, no collision on the leaves)
- Doors
- Platforms
- Cubic walls
- Anything convex that is animated (this is where things will speed up a LOT)