How performance-intensive are rigidbodies?

I don’t fully understand rigidbody, despite acknowledging it’s required on at least one gameObject in order to detect triggers and collisions. I’ve tried doing some research and can’t seem to find many specifics about the performance considerations when using them. I have a few queries relating to their use if anyone knows.

  1. Does implementing rigidbodies into a game make any noticeable performance difference (esp. on mobile)?

  2. Does marking “use gravity”, “is kinematic” or any of the other rigidbody properties change its performance behavior?

  3. Should I be adding a rigidbody to my player, or to the objects he’s interacting with? Is there a best practice, or doesn’t it really matter?

  4. In making my game, I’ve ended up with a set of differently sized box colliders attached to my player, each with their own rigidbody, in order to detect/activate certain triggers — Is this quite normal for characters, or am I creating a problem having multiple rigid bodies?

  1. I have no idea

  2. Those options just change the behavior of the the rigidbody, so I think NO.

  3. That dependes. If your player has a character controller, then you dont need a rigidbody for the player. Say, if I used the car in the car tutorial, because it does not have a character controller, it needs a rigidbody to move. You dont really need a rigidbody on other objects unless you interact with them, or if you need them to move using add force.

  4. You could try these scripts for certain collision point detection.

You’re asking too many questions for detailed answers but they are valid questions. I would like to see specific answers to some of these as well but would say we need much more specific questions.

  1. Depends on how many and how noticeable you’re talking about. If you’re instantiating thousands of them, all colliding, it might. I’m not sure exact numbers but my feeling is the movement and collision calculations of them is far more expensive then actually just having them. I think the question you were thinking of it “how do they handle relative to non-rigidbodied objects”, which I’m not sure, but again, I think the constraint is what you’re doing with them

  2. see 1

  3. depends what your game is. Generally most player physics is faked, but the player can be a kinematic rigidbody.

  4. I think that should be fine, as long as its not too crazy an amount of them.