What exactly is a kinematic object?

Post Reply
pixartist
Posts: 8
Joined: Thu Jan 15, 2015 5:07 pm

What exactly is a kinematic object?

Post by pixartist »

Does it collide ? Can it have velocity ? How does it differ from a static object ?
Basroil
Posts: 463
Joined: Fri Nov 30, 2012 4:50 am

Re: What exactly is a kinematic object?

Post by Basroil »

pixartist wrote:Does it collide ? Can it have velocity ? How does it differ from a static object ?
Kinematic objects are just as the name implies, they interact with the world, but the world doesn't interact with them. If a kinematic object pushes a dynamic one, the dynamic object will move but kinematic one will be unaffected. You can basically think of them as objects of infinite mass with user defined velocity and position (much like a static object is of infinite mass with zero velocity at a fixed position). As such, you can get collision data and dynamic-kinematic collisions are easy, but the collision of two kinematic objects is up to you.
pixartist
Posts: 8
Joined: Thu Jan 15, 2015 5:07 pm

Re: What exactly is a kinematic object?

Post by pixartist »

Basroil wrote:
pixartist wrote:Does it collide ? Can it have velocity ? How does it differ from a static object ?
Kinematic objects are just as the name implies, they interact with the world, but the world doesn't interact with them. If a kinematic object pushes a dynamic one, the dynamic object will move but kinematic one will be unaffected. You can basically think of them as objects of infinite mass with user defined velocity and position (much like a static object is of infinite mass with zero velocity at a fixed position). As such, you can get collision data and dynamic-kinematic collisions are easy, but the collision of two kinematic objects is up to you.
So making a kinematic player controller requires to create custom physical interaction between the controller and static objects ?
User avatar
drleviathan
Posts: 849
Joined: Tue Sep 30, 2014 6:03 pm
Location: San Francisco

Re: What exactly is a kinematic object?

Post by drleviathan »

So making a kinematic player controller requires to create custom physical interaction between the controller and static objects ?
Yes maybe...

If you just want to walk around on terrain, up ramps, down steps, and slide against walls then the btKinematicCharacterController may provide for all your needs *. But if you want your character to be able to stumble when running into a wall too fast or when bumped by a moving object then yes, you would have to track collisions and write code to handle such special cases.

* This is my understanding after reading its API and having worked with CharacterControllers in other physics engines. I haven't actually used Bullet's yet.
Post Reply