written by
Marc Hewitt

Intro to Unity Physics - Part 3 Physics Materials

Unity3D 1 min read , May 10, 2021
Green has a “bouncy” physics material

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

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.

Green material is not required, just nice to see it’s something different
values are 0 to 1, so 1 means 100% - Note the “maximum” bounce combine

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.

Physics materials at work

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.

unity3d programming tutorial