TrashMachine
TrashMachine

Reputation: 69

Unity Marble/Ball like physics

Unity Rigidbody physics are good for basic gravity physics but when it comes to more realistic ball like physics then it doesn't do the trick. I want marble like physics with physics qualities like accelerating downhill, flying off ramps, getting bit by a spinning object or bouncing off walls.

I'm not specifically looking for code as I'm not the best when it comes to physics (if there is no other option then suggest it, C#). Is there a feature within Unity to apply these types of physics?

Upvotes: 1

Views: 4693

Answers (2)

Lou Garczynski
Lou Garczynski

Reputation: 635

What you want here are physics materials.

Set a bounce factor close to 1, and a dynamic friction and static friction factor close to 0. Mess with it a bit until you get the right behavior.

Set the bounce factor combiner to maximum, and the friction factor to minimum to ignore the surface factor, but you can also set the surface physics material to similar value, and use average for both combiner.

The high bounce factor is what you want for marble collisions, especially for billiard-like physics and ricochets.

The low friction factor is what allows your marbles to keep rolling after an impact.

The low static friction is what allows marble to start rolling at the slightest touch.

Upvotes: 2

Samantha Jones
Samantha Jones

Reputation: 111

Have you tried looking at this demo?

Unity Roll-A-Ball demo

I found this was a useful place to start. I know you've tried some physics materials, have you also tried to write your own physics?

Upvotes: 1

Related Questions