1- Update the bullet source files 2- Update the visual studio project accordingly (e.g. add any new cpp files) 3- Apply the patches required: 4 5See https://github.com/libgdx/libgdx/commit/da30acc5b3521d0fda760ba765ae76a951bd41d7 6- Add a default ctor to btWheelInfo.h (around line 82): `btWheelInfo() {}` 7- Comment out `class btVehicleTuning;` in btRaycastVehicle.h ~22 8- Add ContactStartedCallback and ContactEndedCallback, based on http://www.bulletphysics.org/Bullet/phpBB3/viewtopic.php?t=7739&p=32470, as shown in https://github.com/libgdx/libgdx/commit/d492533c3ed9447560770a7482d32c2bfbae5df7: 9 btManifoldResult.cpp ~87: 10 bool isNewCollision = m_manifoldPtr->getNumContacts() == 0; 11 btManifoldResult.cpp ~154: 12 if (gContactStartedCallback && isNewCollision) 13 { 14 gContactStartedCallback(m_manifoldPtr); 15 } 16 btPersistentManifold.cpp ~24: 17 ContactStartedCallback gContactStartedCallback = 0; 18 ContactEndedCallback gContactEndedCallback = 0; 19 btPersistentManifold.h ~31: 20 #ifndef SWIG 21 class btPersistentManifold; 22 btPersistentManifold.h ~36: 23 typedef void(*ContactStartedCallback)(btPersistentManifold* const &manifold); 24 typedef void(*ContactEndedCallback)(btPersistentManifold* const &manifold); 25 btPersistentManifold.h ~40: 26 extern ContactStartedCallback gContactStartedCallback; 27 extern ContactEndedCallback gContactEndedCallback; 28 #endif //SWIG 29 btPersistentManifold.h ~183: 30 if (gContactEndedCallback && m_cachedPoints == 0) 31 { 32 gContactEndedCallback(this); 33 } 34 btPersistentManifold.h ~242: 35 if (gContactEndedCallback && m_cachedPoints) 36 { 37 gContactEndedCallback(this); 38 } 39- Fix cast error for mingw: bDNA.cpp ~393+429 & bFile.cpp ~446+483: `nr= (long)*(intptr_t*)&cp;` 40- Disable SSE for IOS, in btScalar.h, around line 176, that starts with `#if (defined(__APPLE__) `... 41 btScalar.h ~177: Add: `#include <TargetConditionals.h>` 42 btScalar.h ~178: Modify the line to look `like: #if (defined (__i386__) || defined (__x86_64__)) && (!(TARGET_IPHONE_SIMULATOR))` 43 btScalar.h ~179+180+183: comment out `#define BT_USE_SIMD_VECTOR3` and `BT_USE_SSE` and `#define BT_USE_SSE_IN_API` 44