diff --git a/games/glPortal/bullet286.patch b/games/glPortal/bullet286.patch new file mode 100644 index 0000000000..69e204a80b --- /dev/null +++ b/games/glPortal/bullet286.patch @@ -0,0 +1,38 @@ +commit 08df5951c9bbcf16234289eaef99c51e3f8bed13 +Author: Henry Hirsch +Date: Tue Feb 28 21:08:04 2017 +0100 + + Port uncollider to bullet 2.86 + +diff --git a/source/physics/Uncollider.cpp b/source/physics/Uncollider.cpp +index 99ffc79..8f60885 100644 +--- a/source/physics/Uncollider.cpp ++++ b/source/physics/Uncollider.cpp +@@ -72,19 +72,24 @@ void Uncollider::nearCallback(btBroadphasePair &collisionPair, + + btCollisionObject *colObj0 = (btCollisionObject*)collisionPair.m_pProxy0->m_clientObject; + btCollisionObject *colObj1 = (btCollisionObject*)collisionPair.m_pProxy1->m_clientObject; +- ++ + if (dispatcher.needsCollision(colObj0, colObj1)) { + btCollisionObjectWrapper obj0Wrap(0, colObj0->getCollisionShape(), + colObj0, colObj0->getWorldTransform(), -1, -1); + btCollisionObjectWrapper obj1Wrap(0, colObj1->getCollisionShape(), + colObj1, colObj1->getWorldTransform(), -1, -1); + ++ btManifoldResult contactPointResult(&obj0Wrap, &obj1Wrap); ++ + if (not collisionPair.m_algorithm) { +- collisionPair.m_algorithm = dispatcher.findAlgorithm(&obj0Wrap, &obj1Wrap); ++ ++ collisionPair.m_algorithm = ++ dispatcher.findAlgorithm(&obj0Wrap, &obj1Wrap, ++ contactPointResult.getPersistentManifold(), ++ ebtDispatcherQueryType::BT_CONTACT_POINT_ALGORITHMS); + } + + if (collisionPair.m_algorithm) { +- btManifoldResult contactPointResult(&obj0Wrap, &obj1Wrap); + if (dispatchInfo.m_dispatchFunc == btDispatcherInfo::DISPATCH_DISCRETE) { + collisionPair.m_algorithm->processCollision(&obj0Wrap, &obj1Wrap, dispatchInfo, + &contactPointResult); diff --git a/games/glPortal/glPortal.SlackBuild b/games/glPortal/glPortal.SlackBuild index 7ce3f7ab0e..d713d260b7 100644 --- a/games/glPortal/glPortal.SlackBuild +++ b/games/glPortal/glPortal.SlackBuild @@ -86,6 +86,9 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +cd source/engine +patch -p2 < $CWD/bullet286.patch +cd ../.. mkdir -p build cd build cmake \