A tire is not a rigid body

I don’t know how many times I had this discussion so I’ll just write it here once.

No, you do not get the most realistic vehicles using vanilla rigid bodies + joints, and it is pointless to implement the Coulomb friction model perfectly because it is only a model, and it does not work well for tires.

See here for example.

You need to use a dedicated vehicle SDK, like the one in PhysX. Using perfect rigid bodies and joints, with a perfect solver, implementing perfect Coulomb friction, will not give you a perfect car simulation.

8 Responses to “A tire is not a rigid body”



  1. Julio Jerez Says:

    Yes is you describe that way you don’t. But your are setting a huge straw man that you can build up and destroy.
    No one uses coulomb friction model to implement tire dynamics, people who implement vehicle, implement contacts joints that use the Pajeska tire Brush Model for tire friction .
    Just because you guys can’t do it does not means some one else can’t.

  2. admin Says:

    Hi Julio,

    With all due respect, we had this discussion about a year ago already. At that time you showed me videos of vehicles made with rigid bodies + regular joints in Newton. That’s when I told you exactly what you are repeating today: people should indeed use a dedicated vehicle SDK for more realism. And I think you’ve been working on one since our last discussion, so we seem to agree.

    I have no idea why you imagine we cannot implement the Pacejka model. We can.

    Anyway, people interested in the PhysX vehicle SDK can have a look at the doc here: http://docs.nvidia.com/gameworks/content/gameworkslibrary/physx/guide/Manual/Vehicles.html

  3. Julio Jerez Says:

    No I do not think we agree.
    you are the one saying that Reduce coordinate system dynamics is not suitable for implementation vehicles and that some how this is because of Coulomb friction model.

    I simple said that maybe that’s the Opinion of Physx physics team, but is not necessarily true, is just how Physx engineers decided to develop their vehicle model.

    Some of us use Reduced coordinate system with Giancarlo Genta Brush model with some degree if success for a real time simulation and some people use Generalized coordinate system again with the same brush model.

  4. admin Says:

    Hi Julio,

    I’m afraid I never follow your posts, and this is again a good example here. My post doesn’t mention reduced coordinates so I have no idea why you bring them into this discussion. I never linked reduced coordinates to the Coulomb friction model (?).

    Yes you can achieve “some degree of success” with reduced coordinates / rigid bodies for vehicles - at the risk of repeating myself, that’s exactly what we did in NovodeX for the Monster Truck. However the results were not realistic enough, most notably because real-world tires are not rigid bodies, and the usual rigid body friction (Coulomb) doesn’t work well for them. Which is what I’m saying here. Reduced coordinates were not the problem.

  5. Julio Jerez Says:

    No, no, no. you are trying to confuse the map with the place not me.

    when I said “Using Reduce ordinate system”, I am talking about an contraction made of a bunch of rigid bodies connected by some kinematic relation pair by pair. Each kinematic relation removes some degrees of from the pair they link.

    A vehicle on its simplest definition canl be a Chassis and four Tires connected by a suspension.
    Each the suspension remove 4 or 5 dof from the system.
    Suspensions can be modeled in more complex ways and people can do that if they want: https://www.youtube.com/watch?v=borP264e8No
    but I do not offer that out of the Box. I provide simple axel or independent suspension.

    Each tire is it own rigid body that is modeled with contact constraint that implementing a Brush model of friction, not a column model of friction.

    You are saying that because a tires is not a rigid body, that it is better to implement a raycast and applying forces to the chassis directly and that some how that mathematical model is closer to a realistic vehicle than the one I described.

    Those are two different things. So yes reduced coordinate system is a problems, your mathematical model of a car does not come any where close to a realistic one, neither does mine and perhaps anybody else model, but the are degree of approximations and the Raycast car approach is the very bottom of realism. so when you say quote:

    “You need to use a dedicated vehicle SDK, like the one in PhysX.”

    You are misleading any causal reader into thinking that some how by using Physx they will have a better physics simulation, when it all the contrary.

  6. admin Says:

    I’m afraid I still don’t see what you are objecting to.

    I’m saying Coulomb friction doesn’t work for tires. The link I posted says the same. You are saying you are also not using Coulomb, but instead a Brush tire model. So no matter how I look at it, we all seem to agree.

    “You are saying that because a tires is not a rigid body, that it is better to implement a raycast” => What?? No, I never mentioned raycasts. My post was about friction. It was not about reduced coordinates or raycasts. Reduced coordinates are fine (the PhysX Vehicle SDK effectively uses them for the car), and while raycasts have limitations, at the end of the day they give you the same as rigid bodies: an approximation of the tire’s contact patch. I’m saying using rigid bodies is worse because of the traditional friction model associated with them (Coulomb), not because they give you a worse contact patch (they don’t, obviously). In other words, using rigid bodies with a dedicated tire friction model is actually probably the best of both worlds.

    “You are misleading any causal reader into thinking that some how by using Physx they will have a better physics simulation” => no, that is not at all what I wrote. I wrote that people should use a dedicated vehicle SDK instead of relying on rigid bodies + Coulomb. We probably agree that a module dedicated to solving a specific problem will give “better physics” than a generic solver using a default friction model made for rigid objects. Surely we do agree about that.

    “Like the one in PhysX” is simply an example of such an SDK, obviously.

  7. Julio Jerez Says:

    “quote: Reduced coordinates are fine (the PhysX Vehicle SDK effectively uses them for the car), and while raycasts have limitations, at the end of the day they give you the same as rigid bodies”

    No. Again, you are mixing the map and the place by equivocating what one dude on the internet said about Tire friction model with the Physx implementation of a model for a real-time vehicle simulation.

    That dude is talking about friction model for tires. Whether there are mathematical model or real tires, that’s what experimental data shows about tires. BTW that dude explanation is very incomplete and does not get you far.

    You are talking about doing away with tire all together and simple take the result of the tire and apply it to the vehicle chassis, last time I check that’s what Physx does. Those are two different things.

    What that dude is saying conforms more to what I said and much less to what you say.

    It you take what he says and what you say and you apply to a motorcycle, The resulting mathematical model tips over no matter how fast the wheel spins, you will have to come with some extra tricks to keep the body upright

    It you take what he says and what I say and you apply to a motorcycle, The resulting model that moves like a real life Motorcycles. The reason is that what keeps motorcycles up is the conservation of angular momentum of a spinning body, when a body spins around one axis it acquires angular moment an it want to preserve it.
    so the moment that the change of angular momentum produced by gravity pivoting of the center of pressure of the vehicle time time a time step is smaller than the tire angular momentum, the vehicle stays up.
    Even toy makers knows that that trick, they hack one tire by giving in a high mass to the its angular momentum is large enough to overcome gravity even a low speed.

    These are all emerging behavior that comes out of the model he and I speak off, your model can not reproduce at all.

    If on the other hand you take the coulomb model of friction and you apply to the vehicle model that I am describing, you still get a realistic vehicle.

    just one that does not simulate car with rubber tires, but not all car have rubber tires, there are car with rigid tires: Carriage, the lunar buggy, a tank or remote control Toy cars, slot cars, etc.

    Your are argument does not hold water in any area.

  8. admin Says:

    I never said PhysX was using the same model as the one used in the link I posted.

    Anyway at this point I have no idea what you’re arguing about anymore, so I will just let readers decide for themselves whose argument holds water or not.

shopfr.org cialis