Merge pull request #2459 from erwincoumans/master

bump up to Bullet version 2.89 and update serialization structures
This commit is contained in:
erwincoumans
2019-10-30 13:14:49 -07:00
committed by GitHub
8 changed files with 2773 additions and 2673 deletions

View File

@@ -19,11 +19,10 @@
// Auto generated from Bullet/Extras/HeaderGenerator/bulletGenerate.py
#ifndef __BULLET_H__
#define __BULLET_H__
namespace Bullet
{
namespace Bullet {
// put an empty struct in the case
typedef struct bInvalidHandle
{
typedef struct bInvalidHandle {
int unused;
}bInvalidHandle;
@@ -124,6 +123,7 @@ public:
void *m_data;
};
// -------------------------------------------------- //
class btPhysicsSystem
{
@@ -133,6 +133,7 @@ public:
PointerArray m_constraints;
};
// -------------------------------------------------- //
class ListBase
{
@@ -141,6 +142,7 @@ public:
void *last;
};
// -------------------------------------------------- //
class btVector3FloatData
{
@@ -148,6 +150,7 @@ public:
float m_floats[4];
};
// -------------------------------------------------- //
class btVector3DoubleData
{
@@ -155,6 +158,7 @@ public:
double m_floats[4];
};
// -------------------------------------------------- //
class btQuaternionFloatData
{
@@ -162,6 +166,7 @@ public:
float m_floats[4];
};
// -------------------------------------------------- //
class btQuaternionDoubleData
{
@@ -169,6 +174,7 @@ public:
double m_floats[4];
};
// -------------------------------------------------- //
class btMatrix3x3FloatData
{
@@ -176,6 +182,7 @@ public:
btVector3FloatData m_el[3];
};
// -------------------------------------------------- //
class btMatrix3x3DoubleData
{
@@ -183,6 +190,7 @@ public:
btVector3DoubleData m_el[3];
};
// -------------------------------------------------- //
class btTransformFloatData
{
@@ -191,6 +199,7 @@ public:
btVector3FloatData m_origin;
};
// -------------------------------------------------- //
class btTransformDoubleData
{
@@ -199,6 +208,7 @@ public:
btVector3DoubleData m_origin;
};
// -------------------------------------------------- //
class btBvhSubtreeInfoData
{
@@ -209,6 +219,7 @@ public:
short m_quantizedAabbMax[3];
};
// -------------------------------------------------- //
class btOptimizedBvhNodeFloatData
{
@@ -221,6 +232,7 @@ public:
char m_pad[4];
};
// -------------------------------------------------- //
class btOptimizedBvhNodeDoubleData
{
@@ -233,6 +245,7 @@ public:
char m_pad[4];
};
// -------------------------------------------------- //
class btQuantizedBvhNodeData
{
@@ -242,6 +255,7 @@ public:
int m_escapeIndexOrTriangleIndex;
};
// -------------------------------------------------- //
class btQuantizedBvhFloatData
{
@@ -260,6 +274,7 @@ public:
int m_numSubtreeHeaders;
};
// -------------------------------------------------- //
class btQuantizedBvhDoubleData
{
@@ -278,6 +293,7 @@ public:
btBvhSubtreeInfoData *m_subTreeInfoPtr;
};
// -------------------------------------------------- //
class btCollisionShapeData
{
@@ -287,6 +303,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btStaticPlaneShapeData
{
@@ -298,6 +315,7 @@ public:
char m_pad[4];
};
// -------------------------------------------------- //
class btConvexInternalShapeData
{
@@ -309,6 +327,7 @@ public:
int m_padding;
};
// -------------------------------------------------- //
class btPositionAndRadius
{
@@ -317,6 +336,7 @@ public:
float m_radius;
};
// -------------------------------------------------- //
class btMultiSphereShapeData
{
@@ -327,6 +347,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btIntIndexData
{
@@ -334,6 +355,7 @@ public:
int m_value;
};
// -------------------------------------------------- //
class btShortIntIndexData
{
@@ -342,6 +364,7 @@ public:
char m_pad[2];
};
// -------------------------------------------------- //
class btShortIntIndexTripletData
{
@@ -350,6 +373,7 @@ public:
char m_pad[2];
};
// -------------------------------------------------- //
class btCharIndexTripletData
{
@@ -358,6 +382,7 @@ public:
char m_pad;
};
// -------------------------------------------------- //
class btMeshPartData
{
@@ -372,6 +397,7 @@ public:
int m_numVertices;
};
// -------------------------------------------------- //
class btStridingMeshInterfaceData
{
@@ -382,6 +408,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btTriangleMeshShapeData
{
@@ -395,6 +422,7 @@ public:
char m_pad3[4];
};
// -------------------------------------------------- //
class btScaledTriangleMeshShapeData
{
@@ -403,6 +431,7 @@ public:
btVector3FloatData m_localScaling;
};
// -------------------------------------------------- //
class btCompoundShapeChildData
{
@@ -413,6 +442,7 @@ public:
float m_childMargin;
};
// -------------------------------------------------- //
class btCompoundShapeData
{
@@ -423,6 +453,7 @@ public:
float m_collisionMargin;
};
// -------------------------------------------------- //
class btCylinderShapeData
{
@@ -432,6 +463,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btConeShapeData
{
@@ -441,6 +473,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btCapsuleShapeData
{
@@ -450,6 +483,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btTriangleInfoData
{
@@ -460,6 +494,7 @@ public:
float m_edgeV2V0Angle;
};
// -------------------------------------------------- //
class btTriangleInfoMapData
{
@@ -480,6 +515,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btPersistentManifoldDoubleData
{
@@ -493,6 +529,7 @@ public:
btVector3DoubleData m_pointCacheLateralFrictionDir2[4];
double m_pointCacheDistance[4];
double m_pointCacheAppliedImpulse[4];
double m_pointCachePrevRHS[4];
double m_pointCacheCombinedFriction[4];
double m_pointCacheCombinedRollingFriction[4];
double m_pointCacheCombinedSpinningFriction[4];
@@ -524,6 +561,7 @@ public:
btCollisionObjectDoubleData *m_body1;
};
// -------------------------------------------------- //
class btPersistentManifoldFloatData
{
@@ -537,6 +575,7 @@ public:
btVector3FloatData m_pointCacheLateralFrictionDir2[4];
float m_pointCacheDistance[4];
float m_pointCacheAppliedImpulse[4];
float m_pointCachePrevRHS[4];
float m_pointCacheCombinedFriction[4];
float m_pointCacheCombinedRollingFriction[4];
float m_pointCacheCombinedSpinningFriction[4];
@@ -568,6 +607,7 @@ public:
btCollisionObjectFloatData *m_body1;
};
// -------------------------------------------------- //
class btGImpactMeshShapeData
{
@@ -579,6 +619,7 @@ public:
int m_gimpactSubType;
};
// -------------------------------------------------- //
class btConvexHullShapeData
{
@@ -590,6 +631,7 @@ public:
char m_padding3[4];
};
// -------------------------------------------------- //
class btCollisionObjectDoubleData
{
@@ -625,6 +667,7 @@ public:
int m_uniqueId;
};
// -------------------------------------------------- //
class btCollisionObjectFloatData
{
@@ -660,6 +703,7 @@ public:
int m_uniqueId;
};
// -------------------------------------------------- //
class btContactSolverInfoDoubleData
{
@@ -678,6 +722,7 @@ public:
double m_splitImpulseTurnErp;
double m_linearSlop;
double m_warmstartingFactor;
double m_articulatedWarmstartingFactor;
double m_maxGyroscopicForce;
double m_singleAxisRollingFrictionThreshold;
int m_numIterations;
@@ -688,6 +733,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btContactSolverInfoFloatData
{
@@ -706,6 +752,7 @@ public:
float m_splitImpulseTurnErp;
float m_linearSlop;
float m_warmstartingFactor;
float m_articulatedWarmstartingFactor;
float m_maxGyroscopicForce;
float m_singleAxisRollingFrictionThreshold;
int m_numIterations;
@@ -716,6 +763,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btDynamicsWorldDoubleData
{
@@ -724,6 +772,7 @@ public:
btVector3DoubleData m_gravity;
};
// -------------------------------------------------- //
class btDynamicsWorldFloatData
{
@@ -732,6 +781,7 @@ public:
btVector3FloatData m_gravity;
};
// -------------------------------------------------- //
class btRigidBodyFloatData
{
@@ -759,6 +809,7 @@ public:
int m_additionalDamping;
};
// -------------------------------------------------- //
class btRigidBodyDoubleData
{
@@ -787,6 +838,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btConstraintInfo1
{
@@ -795,6 +847,7 @@ public:
int nub;
};
// -------------------------------------------------- //
class btTypedConstraintFloatData
{
@@ -814,6 +867,7 @@ public:
int m_isEnabled;
};
// -------------------------------------------------- //
class btTypedConstraintData
{
@@ -833,6 +887,7 @@ public:
int m_isEnabled;
};
// -------------------------------------------------- //
class btTypedConstraintDoubleData
{
@@ -853,6 +908,7 @@ public:
char padding[4];
};
// -------------------------------------------------- //
class btPoint2PointConstraintFloatData
{
@@ -862,6 +918,7 @@ public:
btVector3FloatData m_pivotInB;
};
// -------------------------------------------------- //
class btPoint2PointConstraintDoubleData2
{
@@ -871,6 +928,7 @@ public:
btVector3DoubleData m_pivotInB;
};
// -------------------------------------------------- //
class btPoint2PointConstraintDoubleData
{
@@ -880,6 +938,7 @@ public:
btVector3DoubleData m_pivotInB;
};
// -------------------------------------------------- //
class btHingeConstraintDoubleData
{
@@ -899,6 +958,7 @@ public:
float m_relaxationFactor;
};
// -------------------------------------------------- //
class btHingeConstraintFloatData
{
@@ -918,6 +978,7 @@ public:
float m_relaxationFactor;
};
// -------------------------------------------------- //
class btHingeConstraintDoubleData2
{
@@ -938,6 +999,7 @@ public:
char m_padding1[4];
};
// -------------------------------------------------- //
class btConeTwistConstraintDoubleData
{
@@ -954,6 +1016,7 @@ public:
double m_damping;
};
// -------------------------------------------------- //
class btConeTwistConstraintData
{
@@ -971,6 +1034,7 @@ public:
char m_pad[4];
};
// -------------------------------------------------- //
class btGeneric6DofConstraintData
{
@@ -986,6 +1050,7 @@ public:
int m_useOffsetForConstraintFrame;
};
// -------------------------------------------------- //
class btGeneric6DofConstraintDoubleData2
{
@@ -1001,6 +1066,7 @@ public:
int m_useOffsetForConstraintFrame;
};
// -------------------------------------------------- //
class btGeneric6DofSpringConstraintData
{
@@ -1012,6 +1078,7 @@ public:
float m_springDamping[6];
};
// -------------------------------------------------- //
class btGeneric6DofSpringConstraintDoubleData2
{
@@ -1023,6 +1090,7 @@ public:
double m_springDamping[6];
};
// -------------------------------------------------- //
class btGeneric6DofSpring2ConstraintData
{
@@ -1070,6 +1138,7 @@ public:
int m_rotateOrder;
};
// -------------------------------------------------- //
class btGeneric6DofSpring2ConstraintDoubleData2
{
@@ -1117,6 +1186,7 @@ public:
int m_rotateOrder;
};
// -------------------------------------------------- //
class btSliderConstraintData
{
@@ -1132,6 +1202,7 @@ public:
int m_useOffsetForConstraintFrame;
};
// -------------------------------------------------- //
class btSliderConstraintDoubleData
{
@@ -1147,6 +1218,7 @@ public:
int m_useOffsetForConstraintFrame;
};
// -------------------------------------------------- //
class btGearConstraintFloatData
{
@@ -1158,6 +1230,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btGearConstraintDoubleData
{
@@ -1168,6 +1241,7 @@ public:
double m_ratio;
};
// -------------------------------------------------- //
class SoftBodyMaterialData
{
@@ -1178,6 +1252,7 @@ public:
int m_flags;
};
// -------------------------------------------------- //
class SoftBodyNodeData
{
@@ -1194,6 +1269,7 @@ public:
int m_pad;
};
// -------------------------------------------------- //
class SoftBodyLinkData
{
@@ -1204,6 +1280,7 @@ public:
int m_bbending;
};
// -------------------------------------------------- //
class SoftBodyFaceData
{
@@ -1214,6 +1291,7 @@ public:
float m_restArea;
};
// -------------------------------------------------- //
class SoftBodyTetraData
{
@@ -1227,6 +1305,7 @@ public:
int m_pad;
};
// -------------------------------------------------- //
class SoftRigidAnchorData
{
@@ -1239,6 +1318,7 @@ public:
float m_c2;
};
// -------------------------------------------------- //
class SoftBodyConfigData
{
@@ -1271,6 +1351,7 @@ public:
int m_collisionFlags;
};
// -------------------------------------------------- //
class SoftBodyPoseData
{
@@ -1289,6 +1370,7 @@ public:
int m_pad;
};
// -------------------------------------------------- //
class SoftBodyClusterData
{
@@ -1322,6 +1404,7 @@ public:
int m_clusterIndex;
};
// -------------------------------------------------- //
class btSoftBodyJointData
{
@@ -1340,6 +1423,7 @@ public:
int m_pad;
};
// -------------------------------------------------- //
class btSoftBodyFloatData
{
@@ -1365,6 +1449,7 @@ public:
SoftBodyConfigData m_config;
};
// -------------------------------------------------- //
class btMultiBodyLinkDoubleData
{
@@ -1399,6 +1484,7 @@ public:
char *m_paddingPtr;
};
// -------------------------------------------------- //
class btMultiBodyLinkFloatData
{
@@ -1433,6 +1519,7 @@ public:
char *m_paddingPtr;
};
// -------------------------------------------------- //
class btMultiBodyDoubleData
{
@@ -1450,6 +1537,7 @@ public:
btCollisionObjectDoubleData *m_baseCollider;
};
// -------------------------------------------------- //
class btMultiBodyFloatData
{
@@ -1466,6 +1554,7 @@ public:
btCollisionObjectFloatData *m_baseCollider;
};
// -------------------------------------------------- //
class btMultiBodyLinkColliderFloatData
{
@@ -1476,6 +1565,7 @@ public:
char m_padding[4];
};
// -------------------------------------------------- //
class btMultiBodyLinkColliderDoubleData
{
@@ -1486,5 +1576,6 @@ public:
char m_padding[4];
};
} // namespace Bullet
}
#endif//__BULLET_H__

View File

@@ -1 +1 @@
2.88
2.89

View File

@@ -155,15 +155,15 @@ struct btContactSolverInfoFloatData
float m_warmstartingFactor;
float m_articulatedWarmstartingFactor;
float m_maxGyroscopicForce;
float m_singleAxisRollingFrictionThreshold;
float m_singleAxisRollingFrictionThreshold;
int m_numIterations;
int m_solverMode;
int m_restingContactRestitutionThreshold;
int m_minimumSolverBatchSize;
int m_minimumSolverBatchSize;
int m_splitImpulse;
char m_padding[4];
};
#endif //BT_CONTACT_SOLVER_INFO

View File

@@ -1436,8 +1436,6 @@ void btDiscreteDynamicsWorld::serializeDynamicsWorldInfo(btSerializer* serialize
worldInfo->m_solverInfo.m_splitImpulse = getSolverInfo().m_splitImpulse;
// Fill padding with zeros to appease msan.
memset(worldInfo->m_solverInfo.m_padding, 0, sizeof(worldInfo->m_solverInfo.m_padding));
#ifdef BT_USE_DOUBLE_PRECISION
const char* structType = "btDynamicsWorldDoubleData";

View File

@@ -25,13 +25,23 @@ subject to the following restrictions:
#include <float.h>
/* SVN $Revision$ on $Date$ from http://bullet.googlecode.com*/
#define BT_BULLET_VERSION 288
#define BT_BULLET_VERSION 289
inline int btGetVersion()
{
return BT_BULLET_VERSION;
}
inline int btIsDoublePrecision()
{
#ifdef BT_USE_DOUBLE_PRECISION
return true;
#else
return false;
#endif
}
// The following macro "BT_NOT_EMPTY_FILE" can be put into a file
// in order suppress the MS Visual C++ Linker warning 4221
//

File diff suppressed because it is too large Load Diff

View File

@@ -481,7 +481,7 @@ public:
buffer[9] = '2';
buffer[10] = '8';
buffer[11] = '8';
buffer[11] = '9';
}
virtual void startSerialization()

File diff suppressed because it is too large Load Diff