A lot of people skip Physics Materials when they dive into Unity as frankly, not many tutorials bother explaining the basics and it’s unclear how they work. But once you’ve got the basics down you can do whole game mechanics with them.
Physics materials are essentially settings we can apply to our colliders to create controllable friction and bounciness to simulate life a little bit better.
A good use case example would be Ice, you can set friction to zero or near-zero so your physics items would slide around more realistically.
Or like my above example, Bounce pads.
A full breakdown of Physics material Settings
- Dynamic Friction: Between 0 and 1 - Friction used when moving.
- Static Friction: Between 0 and 1 - Friction used when at rest.
- Bounciness: Between 0 and 1 - At 1 you’ll bounce up as hard as you fell down.
- Friction Combine: How you want to combine two friction objects.
- Bounce Combine: How you want to combine two bouncy objects.
Now a key thing to note with the above example. Bounce Combine needs to be Maximum for my use-case of a bounce pad, as I want any object hitting it to be “bouncy”. Average would require both objects to be bouncy to get the same effect.
While with other effects like Ice you would want minimal Frication combined, or an average combined to simulate felt on a pool table. Or even Multiply for a speed boost.
Game Feel or Big Mechanics
Physics materials can be just the small things that make your game feel more “real” when it comes to game feel. Or like in Portal 2 it can be whole game mechanics with their physics material gels that bounce or accelerate you.
That’s really the hard part of the physics engine, not math, but rather knowing on the game design side how to apply physics in a fun way.