I have two questions with regards to Bullet, but they are related.
In the HelloWorldApp, the objective is to get a ball bouncing on a box right? If I wanted to test a plane, could I just add in a btCollisionObject
with a btStaticPlaneShape
instead of the box?
How can I set custom restitution, static and kinetic friction per object?
- Yes, I believe that should be correct
- Restitution and friction can be set per object by supplying them to the
btRigidBodyConstructionInfo
object passed into thebtRigidBody
constructor
For example:
btBoxShape * box = new btBoxShape(0.5f,0.5f,0.5f);
btVector3 inertia;
float mass = 10.0f;
box->calculateLocalInertia(mass,inertia);
btRigidBodyConstructionInfo info(10.0f,null,mass,inertia); //motion state would actually be non-null in most real usages
info.m_restitution = 1.3f;
info.m_friction = 1.5f;
btRigidBody * rb = new btRigidBody(info);
来源:https://stackoverflow.com/questions/8289653/bouncing-ball-in-bullet