diff options
Diffstat (limited to 'thirdparty/bullet/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.h')
-rw-r--r-- | thirdparty/bullet/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.h | 35 |
1 files changed, 14 insertions, 21 deletions
diff --git a/thirdparty/bullet/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.h b/thirdparty/bullet/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.h index a300929cd5..c84f274a99 100644 --- a/thirdparty/bullet/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.h +++ b/thirdparty/bullet/BulletDynamics/ConstraintSolver/btNNCGConstraintSolver.h @@ -18,33 +18,30 @@ subject to the following restrictions: #include "btSequentialImpulseConstraintSolver.h" -ATTRIBUTE_ALIGNED16(class) btNNCGConstraintSolver : public btSequentialImpulseConstraintSolver +ATTRIBUTE_ALIGNED16(class) +btNNCGConstraintSolver : public btSequentialImpulseConstraintSolver { protected: - btScalar m_deltafLengthSqrPrev; - btAlignedObjectArray<btScalar> m_pNC; // p for None Contact constraints - btAlignedObjectArray<btScalar> m_pC; // p for Contact constraints - btAlignedObjectArray<btScalar> m_pCF; // p for ContactFriction constraints - btAlignedObjectArray<btScalar> m_pCRF; // p for ContactRollingFriction constraints + btAlignedObjectArray<btScalar> m_pNC; // p for None Contact constraints + btAlignedObjectArray<btScalar> m_pC; // p for Contact constraints + btAlignedObjectArray<btScalar> m_pCF; // p for ContactFriction constraints + btAlignedObjectArray<btScalar> m_pCRF; // p for ContactRollingFriction constraints //These are recalculated in every iterations. We just keep these to prevent reallocation in each iteration. - btAlignedObjectArray<btScalar> m_deltafNC; // deltaf for NoneContact constraints - btAlignedObjectArray<btScalar> m_deltafC; // deltaf for Contact constraints - btAlignedObjectArray<btScalar> m_deltafCF; // deltaf for ContactFriction constraints - btAlignedObjectArray<btScalar> m_deltafCRF; // deltaf for ContactRollingFriction constraints + btAlignedObjectArray<btScalar> m_deltafNC; // deltaf for NoneContact constraints + btAlignedObjectArray<btScalar> m_deltafC; // deltaf for Contact constraints + btAlignedObjectArray<btScalar> m_deltafCF; // deltaf for ContactFriction constraints + btAlignedObjectArray<btScalar> m_deltafCRF; // deltaf for ContactRollingFriction constraints - protected: + virtual btScalar solveGroupCacheFriendlyFinish(btCollisionObject * *bodies, int numBodies, const btContactSolverInfo& infoGlobal); + virtual btScalar solveSingleIteration(int iteration, btCollisionObject** bodies, int numBodies, btPersistentManifold** manifoldPtr, int numManifolds, btTypedConstraint** constraints, int numConstraints, const btContactSolverInfo& infoGlobal, btIDebugDraw* debugDrawer); - virtual btScalar solveGroupCacheFriendlyFinish(btCollisionObject** bodies,int numBodies,const btContactSolverInfo& infoGlobal); - virtual btScalar solveSingleIteration(int iteration, btCollisionObject** bodies ,int numBodies,btPersistentManifold** manifoldPtr, int numManifolds,btTypedConstraint** constraints,int numConstraints,const btContactSolverInfo& infoGlobal,btIDebugDraw* debugDrawer); - - virtual btScalar solveGroupCacheFriendlySetup(btCollisionObject** bodies,int numBodies,btPersistentManifold** manifoldPtr, int numManifolds,btTypedConstraint** constraints,int numConstraints,const btContactSolverInfo& infoGlobal,btIDebugDraw* debugDrawer); + virtual btScalar solveGroupCacheFriendlySetup(btCollisionObject * *bodies, int numBodies, btPersistentManifold** manifoldPtr, int numManifolds, btTypedConstraint** constraints, int numConstraints, const btContactSolverInfo& infoGlobal, btIDebugDraw* debugDrawer); public: - BT_DECLARE_ALIGNED_ALLOCATOR(); btNNCGConstraintSolver() : btSequentialImpulseConstraintSolver(), m_onlyForNoneContact(false) {} @@ -57,8 +54,4 @@ public: bool m_onlyForNoneContact; }; - - - -#endif //BT_NNCG_CONSTRAINT_SOLVER_H - +#endif //BT_NNCG_CONSTRAINT_SOLVER_H |