Apple contribution for OSX SSE and iOS NEON optimizations unit tests, thanks to Jordan Hubbard, Ian Ollmann and Hristo Hristov.
For OSX: cd build ./premake_osx xcode4 for iOS: cd build ./ios_build.sh ./ios_run.sh Also integrated the branches/StackAllocation to make it easier to multi-thread collision detection in the near future. It avoids changing the btCollisionObject while performing collision detection. As this is a large patch, some stuff might be temporarily broken, I'll keep an eye out on issues.
This commit is contained in:
@@ -26,7 +26,7 @@ BulletMultiThreaded BulletDynamics BulletCollision LinearMath
|
||||
IF (WIN32)
|
||||
ADD_EXECUTABLE(AppThreadingDemo
|
||||
main.cpp
|
||||
${BULLET_PHYSICS_SOURCE_DIR}/msvc/bullet.rc
|
||||
${BULLET_PHYSICS_SOURCE_DIR}/build/bullet.rc
|
||||
)
|
||||
ELSE()
|
||||
ADD_EXECUTABLE(AppThreadingDemo
|
||||
|
||||
@@ -59,7 +59,12 @@ btThreadSupportInterface* createThreadSupport(int numThreads)
|
||||
|
||||
struct SampleArgs
|
||||
{
|
||||
SampleArgs()
|
||||
:m_fakeWork(1)
|
||||
{
|
||||
}
|
||||
btCriticalSection* m_cs;
|
||||
float m_fakeWork;
|
||||
};
|
||||
|
||||
struct SampleThreadLocalStorage
|
||||
@@ -86,6 +91,9 @@ void SampleThreadFunc(void* userPtr,void* lsMemory)
|
||||
{
|
||||
printf("thread %d processed number %d\n",localStorage->threadId, count);
|
||||
}
|
||||
//do some fake work
|
||||
for (int i=0;i<1000000;i++)
|
||||
args->m_fakeWork = 1.21*args->m_fakeWork;
|
||||
workLeft = count>0;
|
||||
}
|
||||
printf("finished\n");
|
||||
@@ -110,7 +118,7 @@ void* SamplelsMemoryFunc()
|
||||
|
||||
int main(int argc,char** argv)
|
||||
{
|
||||
int numThreads = 4;
|
||||
int numThreads = 8;
|
||||
|
||||
btThreadSupportInterface* threadSupport = createThreadSupport(numThreads);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user