LPD3DXMESH box;
btBoxShape *box = new btBoxShape(btVector3(???));
How can I get btBoxShape Vector3 in order to create a box with the same length, width, height in bullet physics?
Basically, I am trying to convert LPD3DXMESH to btBoxShape.
LPD3DXMESH box;
btBoxShape *box = new btBoxShape(btVector3(???));
Maybe you have to compute the vertex info, getting it from ID3DXBaseMesh::GetVertexBuffer and calculate the with, length and height to pass them to the btBoxShape constructor.
Hi,
I'm able to get the width, length and height by using D3DXComputeBoundingBox()
float width = max.x - min.x;
float length = max.y - min.y;
float height = max.z - min.z;
The problem is that I'm not sure how can I pass the values to btBoxShape, I tried:
btBoxShape* box = new btBoxShape(btVector3(width / 2.0f, length / 2.0f, height / 2.0f));
But, I'm not getting a box with the same size.
Hi,
I'm able to get the width, length and height by using D3DXComputeBoundingBox()
float width = max.x - min.x; float length = max.y - min.y; float height = max.z - min.z;
The problem is that I'm not sure how can I pass the values to btBoxShape, I tried:
btBoxShape* box = new btBoxShape(btVector3(width / 2.0f, length / 2.0f, height / 2.0f));
But, I'm not getting a box with the same size.
Maybe you are getting an AABB and you are expecting a not axis aligned bounding box?
Hi,
I'm able to get the width, length and height by using D3DXComputeBoundingBox()
float width = max.x - min.x; float length = max.y - min.y; float height = max.z - min.z;
The problem is that I'm not sure how can I pass the values to btBoxShape, I tried:
btBoxShape* box = new btBoxShape(btVector3(width / 2.0f, length / 2.0f, height / 2.0f));
But, I'm not getting a box with the same size.
Maybe you are getting an AABB and you are expecting a not axis aligned bounding box?
This is bound to be the problem - Bullet documentation describes the btBoxShape as an OBB and MSDN describes D3DXComputeBoundingBox as returning an AABB.
You forgot a *bdum tish* after the "bound to be the problem" gag ;)
XD
Sorry, I had forgotten completely how to say OBB in English, so I said non AABB
[quote name='Steve_Segreto' timestamp='1356293167' post='5013750']
This is bound to be the problem - Bullet documentation describes the btBoxShape as an OBB[/quote]Actually not. At least not in the documentation I remember. Could you point out the exact statement?
btBoxShape is an AABB. A btRigidBody using btBoxShape can be arbitrarly oriented, therefore making it an OBB.