19-01-2021, 09:00 AM
(This post was last modified: 19-01-2021, 09:03 AM by josemendez.)
(18-01-2021, 09:35 PM)NathanBrower Wrote: I am a bit confused however when you say that I can use a kinematic rigidbody with forces. My understanding is that these are mutually exclusive.
Sorry for the confusion! I was in a bit of a hurry when I wrote my first reply, so I guess it wasn't very clear.
Kinematic/forces are indeed mutually exclusive. There's two options:
- A non-kinematic rigidbody, moved using AddForce() and AddTorque() (in force, velocity or impulse mode). Directly setting linear/angular velocities would also work.
- A kinematic rigidbody, moved using MovePosition and MoveRotation(). Note that these two methods won't work in a non-kinematic rigidbody (they won't affect its velocity).
The rigidbody component adds new properties to an object: linear/angular velocities and linear/angular masses (linear mass and inertia tensor). A collider with no rigidbody would not work in any case, as it would not have linear/angular velocities.
Why are velocities needed for friction? well, because friction is a force that strives to get the relative velocity along the plane tangent to the contact point between two bodies to be zero. If one object (in this case, the softbody) isn't moving and the other one (the collider) has zero velocity because we are just setting its position directly, the relative velocity between the two bodies is already zero and no friction will be applied.
Hope this clears it up a bit, let me know otherwise. cheers!