如何在jBullet中创建“BoxShape”?

时间:2013-08-10 16:30:27

标签: java parameters jbullet

我想在jBullet中创建一个 BoxShape 。构造函数请求 Vector3f 对象作为参数,该参数要求三个 float 参数。

BoxShape(Vector3f boxHalfExtends) //The constructor for the "BoxShape" class.

我查看了jBullet页面,找不到 boxHalfExtends 是什么。

我应该为 BoxShape 输入构造函数参数

1 个答案:

答案 0 :(得分:1)

  

“要创建一个框,你必须传递一个带有半范围的向量。”

来源:http://www.panda3d.org/manual/index.php/Bullet_Collision_Shapes

这意味着,你需要传递 x,y,z 轴上方框的宽度和高度的一半。

float dx = 0.5f; //X Width = 0.5 * 2 = dx - (-dx) = 1
float dy = 0.5f; //Y Width = 0.5 * 2 = dy - (-dy) = 1
float dz = 1.0f; //Z Width = 1.0 * 2 = dz - (-dz) = 2

CollisionObject boxShape = BoxShape(Vector3f(dx, dy, dz));

dx,dy,dz 值不是关于盒子放置在世界的哪个位置,而是它的大小。