# Friction Between Two Objects PhysX

When using the PhysX backend in Isaac Gym, if two rigid bodies with friction coefficients mu_A and mu_B make contact, what is the resulting friction between them? (additive? multiplicative?) I know the effective friction can be measured by directly inspecting a RigidContact object, but I am having trouble loading this while using the tensor API.

As I remember coefficient of friction is not for a single material, itâ€™s always defined for two materials, like steel vs steel andâ€¦

I agree, @Abi.Ghafari , this is how friction works in the real world. However, it seems that in PhysX, friction is a material property, and when two bodies make contact, their frictions are combined procedurally. I would like to know what procedure is being used, since I canâ€™t find it in the Isaac documentation. It seems like some possibilities are: multiply, maximum, minimum, average

I checked the documents again, there is not much information there though it seems like there are two concepts, one is friction the other one effective friction:
in isaacgym.gymapi.RigidContact class it says:
Rigid Bodies contact information. Each contact in simulation generates a set of information.
Effective coefficient of Friction between bodies pair.

And in the isaacgym.gymapi.RigidShapeProperties class it says:
Set of properties used for all rigid shapes.
Coefficient of static friction. Value should be equal or greater than zero.

Here it says â€śallâ€ť, I donâ€™t know what it really means!

Maybe you can test it by comparing the effective coefficient of friction vs coefficient of friction of two bodies, have you done it?

It says â€śaverageâ€ť here :) Though I havenâ€™t tested it yet.

1 Like

I met some issues dealing with contact restitution using PhysX. Here is a restitution test for the ground and a sphere. Line 110 adjusts restitution for the sphere, line 72 for ground restitution. Seems like ground contact parameters always have a higher priority and these parameters are selected when the ground has contacts with rigid objects. Are there any solutions to this? @kellyg

1 Like