fixes_dialogmenu_capsule.patch
This commit is contained in:
@@ -75,7 +75,9 @@ void CharacterDemo::initPhysics()
|
|||||||
|
|
||||||
btTransform startTransform;
|
btTransform startTransform;
|
||||||
startTransform.setIdentity ();
|
startTransform.setIdentity ();
|
||||||
startTransform.setOrigin (btVector3(0.0, 4.0, 0.0));
|
//startTransform.setOrigin (btVector3(0.0, 4.0, 0.0));
|
||||||
|
startTransform.setOrigin (btVector3(10.210098,-1.6433364,16.453260));
|
||||||
|
|
||||||
|
|
||||||
m_ghostObject = new btPairCachingGhostObject();
|
m_ghostObject = new btPairCachingGhostObject();
|
||||||
m_ghostObject->setWorldTransform(startTransform);
|
m_ghostObject->setWorldTransform(startTransform);
|
||||||
@@ -340,7 +342,8 @@ void CharacterDemo::clientResetScene()
|
|||||||
|
|
||||||
m_character->reset ();
|
m_character->reset ();
|
||||||
///WTF
|
///WTF
|
||||||
m_character->warp (btVector3(0, -2.0, 0.));
|
m_character->warp (btVector3(10.210001,-2.0306311,16.576973));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CharacterDemo::specialKeyboardUp(int key, int x, int y)
|
void CharacterDemo::specialKeyboardUp(int key, int x, int y)
|
||||||
|
|||||||
@@ -236,6 +236,7 @@ GL_SliderControl* GL_DialogDynamicsWorld::createSlider(GL_DialogWindow* dialog,
|
|||||||
body->setAngularFactor(btVector3(0,0,0));
|
body->setAngularFactor(btVector3(0,0,0));
|
||||||
|
|
||||||
m_dynamicsWorld->addRigidBody(body);
|
m_dynamicsWorld->addRigidBody(body);
|
||||||
|
body->setCollisionFlags(body->getFlags()|btCollisionObject::CF_NO_CONTACT_RESPONSE);
|
||||||
|
|
||||||
btRigidBody* dialogBody = btRigidBody::upcast(dialog->getCollisionObject());
|
btRigidBody* dialogBody = btRigidBody::upcast(dialog->getCollisionObject());
|
||||||
btAssert(dialogBody);
|
btAssert(dialogBody);
|
||||||
@@ -299,6 +300,7 @@ GL_ToggleControl* GL_DialogDynamicsWorld::createToggle(GL_DialogWindow* dialog,
|
|||||||
body->setAngularFactor(btVector3(0,0,0));
|
body->setAngularFactor(btVector3(0,0,0));
|
||||||
|
|
||||||
m_dynamicsWorld->addRigidBody(body);
|
m_dynamicsWorld->addRigidBody(body);
|
||||||
|
body->setCollisionFlags(body->getFlags()|btCollisionObject::CF_NO_CONTACT_RESPONSE);
|
||||||
|
|
||||||
btRigidBody* dialogBody = btRigidBody::upcast(dialog->getCollisionObject());
|
btRigidBody* dialogBody = btRigidBody::upcast(dialog->getCollisionObject());
|
||||||
btAssert(dialogBody);
|
btAssert(dialogBody);
|
||||||
|
|||||||
@@ -43,6 +43,18 @@ public:
|
|||||||
|
|
||||||
virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(const btVector3* vectors,btVector3* supportVerticesOut,int numVectors) const;
|
virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(const btVector3* vectors,btVector3* supportVerticesOut,int numVectors) const;
|
||||||
|
|
||||||
|
virtual void setMargin(btScalar collisionMargin)
|
||||||
|
{
|
||||||
|
//correct the m_implicitShapeDimensions for the margin
|
||||||
|
btVector3 oldMargin(getMargin(),getMargin(),getMargin());
|
||||||
|
btVector3 implicitShapeDimensionsWithMargin = m_implicitShapeDimensions+oldMargin;
|
||||||
|
|
||||||
|
btConvexInternalShape::setMargin(collisionMargin);
|
||||||
|
btVector3 newMargin(getMargin(),getMargin(),getMargin());
|
||||||
|
m_implicitShapeDimensions = implicitShapeDimensionsWithMargin - newMargin;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
virtual void getAabb (const btTransform& t, btVector3& aabbMin, btVector3& aabbMax) const
|
virtual void getAabb (const btTransform& t, btVector3& aabbMin, btVector3& aabbMax) const
|
||||||
{
|
{
|
||||||
btVector3 halfExtents(getRadius(),getRadius(),getRadius());
|
btVector3 halfExtents(getRadius(),getRadius(),getRadius());
|
||||||
|
|||||||
Reference in New Issue
Block a user