Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'extern/bullet2/patches/blender.patch')
-rw-r--r--extern/bullet2/patches/blender.patch368
1 files changed, 0 insertions, 368 deletions
diff --git a/extern/bullet2/patches/blender.patch b/extern/bullet2/patches/blender.patch
deleted file mode 100644
index b4b24fdc220..00000000000
--- a/extern/bullet2/patches/blender.patch
+++ /dev/null
@@ -1,368 +0,0 @@
-diff --git a/extern/bullet2/src/LinearMath/btVector3.h b/extern/bullet2/src/LinearMath/btVector3.h
-index 839b19c..3058195 100644
---- a/extern/bullet2/src/LinearMath/btVector3.h
-+++ b/extern/bullet2/src/LinearMath/btVector3.h
-@@ -39,7 +39,7 @@ subject to the following restrictions:
- #endif
-
-
--#define BT_SHUFFLE(x,y,z,w) ((w)<<6 | (z)<<4 | (y)<<2 | (x))
-+#define BT_SHUFFLE(x,y,z,w) (((w) << 6 | (z) << 4 | (y) << 2 | (x)) & 0xff)
- //#define bt_pshufd_ps( _a, _mask ) (__m128) _mm_shuffle_epi32((__m128i)(_a), (_mask) )
- #define bt_pshufd_ps( _a, _mask ) _mm_shuffle_ps((_a), (_a), (_mask) )
- #define bt_splat3_ps( _a, _i ) bt_pshufd_ps((_a), BT_SHUFFLE(_i,_i,_i, 3) )
-diff --git a/extern/bullet2/src/LinearMath/btScalar.h b/extern/bullet2/src/LinearMath/btScalar.h
---- a/extern/bullet2/src/LinearMath/btScalar.h
-+++ b/extern/bullet2/src/LinearMath/btScalar.h
-@@ -16,6 +16,9 @@
-
- #ifndef BT_SCALAR_H
- #define BT_SCALAR_H
-+#if defined(_MSC_VER) && defined(__clang__) /* clang supplies it's own overloads already */
-+#define BT_NO_SIMD_OPERATOR_OVERLOADS
-+#endif
-
- #ifdef BT_MANAGED_CODE
- //Aligned data types not supported in managed code
-@@ -83,7 +86,7 @@
- #ifdef BT_USE_SSE
-
- #if (_MSC_FULL_VER >= 170050727)//Visual Studio 2012 can compile SSE4/FMA3 (but SSE4/FMA3 is not enabled by default)
-- #define BT_ALLOW_SSE4
-+ //#define BT_ALLOW_SSE4 //disable this cause blender targets sse2
- #endif //(_MSC_FULL_VER >= 160040219)
-
- //BT_USE_SSE_IN_API is disabled under Windows by default, because
-@@ -102,7 +105,7 @@
- #endif //__MINGW32__
-
- #ifdef BT_DEBUG
-- #ifdef _MSC_VER
-+ #if defined(_MSC_VER) && !defined(__clang__)
- #include <stdio.h>
- #define btAssert(x) { if(!(x)){printf("Assert "__FILE__ ":%u ("#x")\n", __LINE__);__debugbreak(); }}
- #else//_MSC_VER
-diff --git a/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.h b/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
-index be9eca6..ec40c96 100644
---- a/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
-+++ b/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
-@@ -15,7 +15,7 @@ subject to the following restrictions:
-
-
- /**
-- * @mainpage Bullet Documentation
-+ * @page Bullet Documentation
- *
- * @section intro_sec Introduction
- * Bullet is a Collision Detection and Rigid Body Dynamics Library. The Library is Open Source and free for commercial use, under the ZLib license ( http://opensource.org/licenses/zlib-license.php ).
-diff --git a/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.cpp b/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.cpp
-index 36dd043..57eb817 100644
---- a/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.cpp
-+++ b/extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.cpp
-@@ -579,14 +579,10 @@ btCollisionShape* btCollisionWorldImporter::convertCollisionShape( btCollisionS
- btCompoundShapeData* compoundData = (btCompoundShapeData*)shapeData;
- btCompoundShape* compoundShape = createCompoundShape();
-
-- btCompoundShapeChildData* childShapeDataArray = &compoundData->m_childShapePtr[0];
--
-
- btAlignedObjectArray<btCollisionShape*> childShapes;
- for (int i=0;i<compoundData->m_numChildShapes;i++)
- {
-- btCompoundShapeChildData* ptr = &compoundData->m_childShapePtr[i];
--
- btCollisionShapeData* cd = compoundData->m_childShapePtr[i].m_childShape;
-
- btCollisionShape* childShape = convertCollisionShape(cd);
-diff --git a/extern/bullet2/src/BulletDynamics/Character/btKinematicCharacterController.cpp b/extern/bullet2/src/BulletDynamics/Character/btKinematicCharacterController.cpp
-index 57fc119..31faf1d 100644
---- a/extern/bullet2/src/BulletDynamics/Character/btKinematicCharacterController.cpp
-+++ b/extern/bullet2/src/BulletDynamics/Character/btKinematicCharacterController.cpp
-@@ -29,14 +29,11 @@ subject to the following restrictions:
- static btVector3
- getNormalizedVector(const btVector3& v)
- {
-- btScalar l = v.length();
-- btVector3 n = v;
-- if (l < SIMD_EPSILON) {
-- n.setValue(0,0,0);
-- } else {
-- n /= l;
-- }
-+ btVector3 n(0, 0, 0);
-
-+ if (v.length() > SIMD_EPSILON) {
-+ n = v.normalized();
-+ }
- return n;
- }
-
-diff --git a/extern/bullet2/src/BulletDynamics/ConstraintSolver/btSolverBody.h b/extern/bullet2/src/BulletDynamics/ConstraintSolver/btSolverBody.h
-index 27ccefe..8e4456e 100644
---- a/extern/bullet2/src/BulletDynamics/ConstraintSolver/btSolverBody.h
-+++ b/extern/bullet2/src/BulletDynamics/ConstraintSolver/btSolverBody.h
-@@ -37,8 +37,13 @@ struct btSimdScalar
- {
-
- }
--
-+/* workaround for clang 3.4 ( == apple clang 5.1 ) issue, friction would fail with forced inlining */
-+#if (defined(__clang__) && defined(__apple_build_version__) && (__clang_major__ == 5) && (__clang_minor__ == 1)) \
-+|| (defined(__clang__) && !defined(__apple_build_version__) && (__clang_major__ == 3) && (__clang_minor__ == 4))
-+ inline __attribute__ ((noinline)) btSimdScalar(float fl)
-+#else
- SIMD_FORCE_INLINE btSimdScalar(float fl)
-+#endif
- :m_vec128 (_mm_set1_ps(fl))
- {
- }
-diff --git a/extern/bullet2/src/BulletDynamics/Featherstone/btMultiBody.cpp b/extern/bullet2/src/BulletDynamics/Featherstone/btMultiBody.cpp
-index 5d62da7..fcd312e 100644
---- a/extern/bullet2/src/BulletDynamics/Featherstone/btMultiBody.cpp
-+++ b/extern/bullet2/src/BulletDynamics/Featherstone/btMultiBody.cpp
-@@ -28,7 +28,6 @@
- #include "btMultiBodyJointFeedback.h"
- #include "LinearMath/btTransformUtil.h"
- #include "LinearMath/btSerializer.h"
--#include "Bullet3Common/b3Logging.h"
- // #define INCLUDE_GYRO_TERM
-
- ///todo: determine if we need these options. If so, make a proper API, otherwise delete those globals
-@@ -1732,7 +1731,6 @@ void btMultiBody::goToSleep()
-
- void btMultiBody::checkMotionAndSleepIfRequired(btScalar timestep)
- {
-- int num_links = getNumLinks();
- extern bool gDisableDeactivation;
- if (!m_canSleep || gDisableDeactivation)
- {
-diff --git a/extern/bullet2/src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.cpp b/extern/bullet2/src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.cpp
-index 8a034b3..4f66b20 100644
---- a/extern/bullet2/src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.cpp
-+++ b/extern/bullet2/src/BulletDynamics/Featherstone/btMultiBodyConstraintSolver.cpp
-@@ -809,7 +809,6 @@ static void applyJointFeedback(btMultiBodyJacobianData& data, const btMultiBodyS
- }
- #endif
-
--#include "Bullet3Common/b3Logging.h"
- void btMultiBodyConstraintSolver::writeBackSolverBodyToMultiBody(btMultiBodySolverConstraint& c, btScalar deltaTime)
- {
- #if 1
-diff --git a/extern/bullet2/src/BulletSoftBody/btSparseSDF.h b/extern/bullet2/src/BulletSoftBody/btSparseSDF.h
-index bcf0c79..8992ddb 100644
---- a/extern/bullet2/src/BulletSoftBody/btSparseSDF.h
-+++ b/extern/bullet2/src/BulletSoftBody/btSparseSDF.h
-@@ -185,7 +185,6 @@ struct btSparseSdf
- {
- ++nprobes;
- ++ncells;
-- int sz = sizeof(Cell);
- if (ncells>m_clampCells)
- {
- static int numResets=0;
-diff --git a/extern/bullet2/src/LinearMath/btConvexHullComputer.cpp b/extern/bullet2/src/LinearMath/btConvexHullComputer.cpp
-index d58ac95..3fd77df 100644
---- a/extern/bullet2/src/LinearMath/btConvexHullComputer.cpp
-+++ b/extern/bullet2/src/LinearMath/btConvexHullComputer.cpp
-@@ -2665,6 +2665,7 @@ btScalar btConvexHullComputer::compute(const void* coords, bool doubleCoords, in
- }
-
- vertices.resize(0);
-+ original_vertex_index.resize(0);
- edges.resize(0);
- faces.resize(0);
-
-@@ -2675,6 +2676,7 @@ btScalar btConvexHullComputer::compute(const void* coords, bool doubleCoords, in
- {
- btConvexHullInternal::Vertex* v = oldVertices[copied];
- vertices.push_back(hull.getCoordinates(v));
-+ original_vertex_index.push_back(v->point.index);
- btConvexHullInternal::Edge* firstEdge = v->edges;
- if (firstEdge)
- {
-diff --git a/extern/bullet2/src/LinearMath/btConvexHullComputer.h b/extern/bullet2/src/LinearMath/btConvexHullComputer.h
-index 7240ac4..6871ce8 100644
---- a/extern/bullet2/src/LinearMath/btConvexHullComputer.h
-+++ b/extern/bullet2/src/LinearMath/btConvexHullComputer.h
-@@ -67,6 +67,7 @@ class btConvexHullComputer
-
- // Vertices of the output hull
- btAlignedObjectArray<btVector3> vertices;
-+ btAlignedObjectArray<int> original_vertex_index;
-
- // Edges of the output hull
- btAlignedObjectArray<Edge> edges;
-diff --git a/extern/bullet2/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp b/extern/bullet2/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
-index 0623e35..02ea503 100644
---- a/extern/bullet2/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
-+++ b/extern/bullet2/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
-@@ -13,9 +13,9 @@ subject to the following restrictions:
- 3. This notice may not be removed or altered from any source distribution.
- */
-
--#if defined (_WIN32) || defined (__i386__)
--#define BT_USE_SSE_IN_API
--#endif
-+//#if defined (_WIN32) || defined (__i386__)
-+//#define BT_USE_SSE_IN_API
-+//#endif
-
- #include "btConvexHullShape.h"
- #include "BulletCollision/CollisionShapes/btCollisionMargin.h"
-diff --git a/extern/bullet2/src/BulletCollision/CollisionShapes/btConvexShape.cpp b/extern/bullet2/src/BulletCollision/CollisionShapes/btConvexShape.cpp
-index b56d729..88018b4 100644
---- a/extern/bullet2/src/BulletCollision/CollisionShapes/btConvexShape.cpp
-+++ b/extern/bullet2/src/BulletCollision/CollisionShapes/btConvexShape.cpp
-@@ -13,9 +13,9 @@ subject to the following restrictions:
- 3. This notice may not be removed or altered from any source distribution.
- */
-
--#if defined (_WIN32) || defined (__i386__)
--#define BT_USE_SSE_IN_API
--#endif
-+//#if defined (_WIN32) || defined (__i386__)
-+//#define BT_USE_SSE_IN_API
-+//#endif
-
- #include "btConvexShape.h"
- #include "btTriangleShape.h"
-diff --git a/extern/bullet2/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp b/extern/bullet2/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
-index a7362ea..6abfdff 100644
---- a/extern/bullet2/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
-+++ b/extern/bullet2/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
-@@ -13,9 +13,9 @@ subject to the following restrictions:
- 3. This notice may not be removed or altered from any source distribution.
- */
-
--#if defined (_WIN32) || defined (__i386__)
--#define BT_USE_SSE_IN_API
--#endif
-+//#if defined (_WIN32) || defined (__i386__)
-+//#define BT_USE_SSE_IN_API
-+//#endif
-
- #include "btMultiSphereShape.h"
- #include "BulletCollision/CollisionShapes/btCollisionMargin.h"
-diff --git a/extern/bullet2/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp b/extern/bullet2/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
-index 4854f37..9095c59 100644
---- a/extern/bullet2/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
-+++ b/extern/bullet2/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
-@@ -12,9 +12,9 @@ subject to the following restrictions:
- 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
- 3. This notice may not be removed or altered from any source distribution.
- */
--#if defined (_WIN32) || defined (__i386__)
--#define BT_USE_SSE_IN_API
--#endif
-+//#if defined (_WIN32) || defined (__i386__)
-+//#define BT_USE_SSE_IN_API
-+//#endif
-
- #include "BulletCollision/CollisionShapes/btPolyhedralConvexShape.h"
- #include "btConvexPolyhedron.h"
-diff --git a/extern/bullet2/src/LinearMath/btVector3.cpp b/extern/bullet2/src/LinearMath/btVector3.cpp
-index e05bdcc..dbcf2b6 100644
---- a/extern/bullet2/src/LinearMath/btVector3.cpp
-+++ b/extern/bullet2/src/LinearMath/btVector3.cpp
-@@ -15,9 +15,9 @@
- This source version has been altered.
- */
-
--#if defined (_WIN32) || defined (__i386__)
--#define BT_USE_SSE_IN_API
--#endif
-+//#if defined (_WIN32) || defined (__i386__)
-+//#define BT_USE_SSE_IN_API
-+//#endif
-
-
- #include "btVector3.h"
-diff --git a/extern/bullet2/src/BulletDynamics/Dynamics/btRigidBody.cpp b/extern/bullet2/src/BulletDynamics/Dynamics/btRigidBody.cpp
-index e0e8bc7..a788268 100644
---- a/extern/bullet2/src/BulletDynamics/Dynamics/btRigidBody.cpp
-+++ b/extern/bullet2/src/BulletDynamics/Dynamics/btRigidBody.cpp
-@@ -425,50 +425,38 @@ void btRigidBody::setCenterOfMassTransform(const btTransform& xform)
- }
-
-
-+bool btRigidBody::checkCollideWithOverride(const btCollisionObject* co) const
-+{
-+ const btRigidBody* otherRb = btRigidBody::upcast(co);
-+ if (!otherRb)
-+ return true;
-+
-+ for (int i = 0; i < m_constraintRefs.size(); ++i)
-+ {
-+ const btTypedConstraint* c = m_constraintRefs[i];
-+ if (c->isEnabled())
-+ if (&c->getRigidBodyA() == otherRb || &c->getRigidBodyB() == otherRb)
-+ return false;
-+ }
-+
-+ return true;
-+}
-
-
-
- void btRigidBody::addConstraintRef(btTypedConstraint* c)
- {
-- ///disable collision with the 'other' body
--
- int index = m_constraintRefs.findLinearSearch(c);
-- //don't add constraints that are already referenced
-- //btAssert(index == m_constraintRefs.size());
- if (index == m_constraintRefs.size())
-- {
-- m_constraintRefs.push_back(c);
-- btCollisionObject* colObjA = &c->getRigidBodyA();
-- btCollisionObject* colObjB = &c->getRigidBodyB();
-- if (colObjA == this)
-- {
-- colObjA->setIgnoreCollisionCheck(colObjB, true);
-- }
-- else
-- {
-- colObjB->setIgnoreCollisionCheck(colObjA, true);
-- }
-- }
-+ m_constraintRefs.push_back(c);
-+
-+ m_checkCollideWith = true;
- }
-
- void btRigidBody::removeConstraintRef(btTypedConstraint* c)
- {
-- int index = m_constraintRefs.findLinearSearch(c);
-- //don't remove constraints that are not referenced
-- if(index < m_constraintRefs.size())
-- {
-- m_constraintRefs.remove(c);
-- btCollisionObject* colObjA = &c->getRigidBodyA();
-- btCollisionObject* colObjB = &c->getRigidBodyB();
-- if (colObjA == this)
-- {
-- colObjA->setIgnoreCollisionCheck(colObjB, false);
-- }
-- else
-- {
-- colObjB->setIgnoreCollisionCheck(colObjA, false);
-- }
-- }
-+ m_constraintRefs.remove(c);
-+ m_checkCollideWith = m_constraintRefs.size() > 0;
- }
-
- int btRigidBody::calculateSerializeBufferSize() const
-diff --git a/extern/bullet2/src/BulletDynamics/Dynamics/btRigidBody.h b/extern/bullet2/src/BulletDynamics/Dynamics/btRigidBody.h
-index 1d177db..c2f8c5d 100644
---- a/extern/bullet2/src/BulletDynamics/Dynamics/btRigidBody.h
-+++ b/extern/bullet2/src/BulletDynamics/Dynamics/btRigidBody.h
-@@ -509,6 +509,8 @@ public:
- return (getBroadphaseProxy() != 0);
- }
-
-+ virtual bool checkCollideWithOverride(const btCollisionObject* co) const;
-+
- void addConstraintRef(btTypedConstraint* c);
- void removeConstraintRef(btTypedConstraint* c);
-