Как создать "BoxShape" в jBullet?
Я хочу создать BoxShape в jBullet. Конструктор запрашивает объект Vector3f в качестве параметра, который запрашивает три параметра с плавающей запятой.
BoxShape(Vector3f boxHalfExtends) //The constructor for the "BoxShape" class.
Я посмотрел на страницу jBullet и не смог найти, что такое boxHalfExtends.
Что я должен ввести в параметр конструктора для BoxShape?
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 не о том, где в мире находится коробка, а о том, насколько она велика.