子弹弹跳球

mmu*_*phy 2 physics game-physics bulletphysics

我对Bullet有两个问题,但它们是相关的.

在HelloWorldApp中,目标是让一个球在一个盒子上弹跳吧?如果我想测试一架飞机,我可以加btCollisionObject一个btStaticPlaneShape而不是一个盒子吗?

如何为每个对象设置自定义恢复,静态和动态摩擦?

non*_*unk 9

  1. 是的,我认为应该是正确的
  2. 通过将每个对象提供给btRigidBodyConstructionInfo传递给btRigidBody构造函数的对象,可以为每个对象设置恢复和摩擦

例如:

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);
Run Code Online (Sandbox Code Playgroud)