Fixes for Linux compilation,

Thanks to Ole: http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=3590
Add option to select EPA or Minkowski sampling method in btDefaultCollisionConfiguration
This commit is contained in:
erwin.coumans
2009-05-11 20:35:26 +00:00
parent 0a360904b6
commit 34685cb631
8 changed files with 23 additions and 22 deletions

View File

@@ -1,7 +1,7 @@
#define TaruVtxCount 43
#define TaruIdxCount 132
float TaruVtx[] = {
static float TaruVtx[] = {
1.08664f,-1.99237f,0.0f,
0.768369f,-1.99237f,-0.768369f,
1.28852f,1.34412e-007f,-1.28852f,
@@ -47,7 +47,7 @@ float TaruVtx[] = {
1.08664f,1.99237f,0.0f,
};
float TaruNml[] = {
static float TaruNml[] = {
0.938103f,-0.346356f,0.0f,
0.663339f,-0.346356f,-0.663339f,
0.707107f,0.0f,-0.707107f,
@@ -93,7 +93,7 @@ float TaruNml[] = {
0.0f,1.0f,0.0f,
};
float TaruTex[] = {
static float TaruTex[] = {
0.75f,0.0f,
0.875f,0.0f,
0.875f,0.5f,
@@ -139,7 +139,7 @@ float TaruTex[] = {
0.5f,1.0f,
};
unsigned short TaruIdx[] = {
static unsigned short TaruIdx[] = {
0,1,2,
2,3,0,
1,4,5,

View File

@@ -431,8 +431,8 @@ void btGpuDemoDynamicsWorld::debugDrawConstraints(int selectedBatch, const float
for(int i = 0; i < numConstraints; i++)
{
int indx = pBatchIds[i];
int idA = m_hIds[indx].x;
int idB = m_hIds[indx].y;
int idA = m_hIds[indx].x-1;
int idB = m_hIds[indx].y-1;
if((idA > 0) && (idB > 0))
{
btCollisionObject* colObjA = m_collisionObjects[idA];

View File

@@ -42,7 +42,7 @@ subject to the following restrictions:
//----------------------------------------------------------------------------------------
#include "btGpuDemo2DSharedTypes.h"
#include "btGpuDemo2dSharedTypes.h"
//----------------------------------------------------------------------------------------

View File

@@ -16,7 +16,7 @@ subject to the following restrictions:
#include "GLDebugFont.h"
#include "GlutStuff.h"
#include <stdio.h>
#include <string>
#include <string.h> //for memset
extern unsigned char sFontData[];
static GLuint sTexture = -1;

View File

@@ -46,15 +46,15 @@ btDefaultCollisionConfiguration::btDefaultCollisionConfiguration(const btDefault
void* mem = btAlignedAlloc(sizeof(btVoronoiSimplexSolver),16);
m_simplexSolver = new (mem)btVoronoiSimplexSolver();
#define USE_EPA 1
#ifdef USE_EPA
if (constructionInfo.m_useEpaPenetrationAlgorithm)
{
mem = btAlignedAlloc(sizeof(btGjkEpaPenetrationDepthSolver),16);
m_pdSolver = new (mem)btGjkEpaPenetrationDepthSolver;
#else
}else
{
mem = btAlignedAlloc(sizeof(btMinkowskiPenetrationDepthSolver),16);
m_pdSolver = new (mem)btMinkowskiPenetrationDepthSolver;
#endif//USE_EPA
}
//default CreationFunctions, filling the m_doubleDispatch table
mem = btAlignedAlloc(sizeof(btConvexConvexAlgorithm::CreateFunc),16);

View File

@@ -28,6 +28,7 @@ struct btDefaultCollisionConstructionInfo
int m_defaultMaxPersistentManifoldPoolSize;
int m_defaultMaxCollisionAlgorithmPoolSize;
int m_defaultStackAllocatorSize;
int m_useEpaPenetrationAlgorithm;
btDefaultCollisionConstructionInfo()
:m_stackAlloc(0),
@@ -35,7 +36,8 @@ struct btDefaultCollisionConstructionInfo
m_collisionAlgorithmPool(0),
m_defaultMaxPersistentManifoldPoolSize(4096),
m_defaultMaxCollisionAlgorithmPoolSize(4096),
m_defaultStackAllocatorSize(0)
m_defaultStackAllocatorSize(0),
m_useEpaPenetrationAlgorithm(true)
{
}
};

View File

@@ -127,7 +127,7 @@ public:
}
void setAxis(btVector3& axisInA = btVector3(0, 1, 0))
void setAxis(btVector3& axisInA)
{
btVector3 rbAxisA1, rbAxisA2;
btPlaneSpace1(axisInA, rbAxisA1, rbAxisA2);

View File

@@ -27,8 +27,7 @@ subject to the following restrictions:
#include "btGpu3DGridBroadphaseSharedDefs.h"
#include "btGpu3DGridBroadphase.h"
#include <string> //for memset
#include <string.h> //for memset
//--------------------------------------------------------------------------
#include <stdio.h>