35#define THERE_IS_NO_INCLUDE_GUARD_HERE_FOR_A_REASON
37#define PX_PROPERTY_INFO_NAME PxPropertyInfoName
38 static PxU32ToName g_physx__PxShapeFlag__EnumConversion[] = {
46template<>
struct PxEnumTraits<
physx::PxShapeFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxShapeFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
47 static PxU32ToName g_physx__PxBufferType__EnumConversion[] = {
48 {
"eHOST",
static_cast<PxU32
>( physx::PxBufferType::eHOST ) },
49 {
"eDEVICE",
static_cast<PxU32
>( physx::PxBufferType::eDEVICE ) },
53template<>
struct PxEnumTraits<
physx::PxBufferType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxBufferType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
57 PxTolerancesScale TolerancesScale;
64 static const char* getClassName() {
return "PxPhysics"; }
65 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_TolerancesScale, PxPhysics, const PxTolerancesScale > TolerancesScale;
66 PxFactoryCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_TriangleMeshes, PxPhysics, PxTriangleMesh *, PxInputStream & > TriangleMeshes;
67 PxFactoryCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_TetrahedronMeshes, PxPhysics, PxTetrahedronMesh *, PxInputStream & > TetrahedronMeshes;
68 PxFactoryCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_HeightFields, PxPhysics, PxHeightField *, PxInputStream & > HeightFields;
69 PxFactoryCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_ConvexMeshes, PxPhysics, PxConvexMesh *, PxInputStream & > ConvexMeshes;
70 PxFactoryCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_BVHs, PxPhysics, PxBVH *, PxInputStream & > BVHs;
71 PxFactoryCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_BVHStructures, PxPhysics, PxBVHStructure *, PxInputStream & > BVHStructures;
72 PxFactoryCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_Scenes, PxPhysics, PxScene *, const PxSceneDesc & > Scenes;
73 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_Shapes, PxPhysics, PxShape * > Shapes;
74 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_Materials, PxPhysics, PxMaterial * > Materials;
75 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_FEMSoftBodyMaterials, PxPhysics, PxFEMSoftBodyMaterial * > FEMSoftBodyMaterials;
76 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_FEMClothMaterials, PxPhysics, PxFEMClothMaterial * > FEMClothMaterials;
77 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_PBDMaterials, PxPhysics, PxPBDMaterial * > PBDMaterials;
78 PxFactoryCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPhysics_CustomMaterials, PxPhysics, PxCustomMaterial *, void * > CustomMaterials;
81 template<
typename TReturnType,
typename TOperator>
82 TReturnType visitType( TOperator inOperator )
const
84 return inOperator(
reinterpret_cast<PxPhysics*
>(NULL) );
86 template<
typename TOperator>
87 void visitBases( TOperator inOperator )
89 PX_UNUSED(inOperator);
91 template<
typename TOperator>
92 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
94 PX_UNUSED(inOperator);
95 PX_UNUSED(inStartIndex);
98 static PxU32 instancePropertyCount() {
return 14; }
99 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
100 template<
typename TOperator>
101 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
103 PX_UNUSED(inOperator);
104 PX_UNUSED(inStartIndex);
105 inOperator( TolerancesScale, inStartIndex + 0 );;
106 inOperator( TriangleMeshes, inStartIndex + 1 );;
107 inOperator( TetrahedronMeshes, inStartIndex + 2 );;
108 inOperator( HeightFields, inStartIndex + 3 );;
109 inOperator( ConvexMeshes, inStartIndex + 4 );;
110 inOperator( BVHs, inStartIndex + 5 );;
111 inOperator( BVHStructures, inStartIndex + 6 );;
112 inOperator( Scenes, inStartIndex + 7 );;
113 inOperator( Shapes, inStartIndex + 8 );;
114 inOperator( Materials, inStartIndex + 9 );;
115 inOperator( FEMSoftBodyMaterials, inStartIndex + 10 );;
116 inOperator( FEMClothMaterials, inStartIndex + 11 );;
117 inOperator( PBDMaterials, inStartIndex + 12 );;
118 inOperator( CustomMaterials, inStartIndex + 13 );;
119 return 14 + inStartIndex;
122 template<>
struct PxClassInfoTraits<PxPhysics>
131 PxU32 ReferenceCount;
138 static const char* getClassName() {
return "PxRefCounted"; }
139 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxRefCounted_ReferenceCount, PxRefCounted, PxU32 > ReferenceCount;
142 template<
typename TReturnType,
typename TOperator>
143 TReturnType visitType( TOperator inOperator )
const
145 return inOperator(
reinterpret_cast<PxRefCounted*
>(NULL) );
147 template<
typename TOperator>
148 void visitBases( TOperator inOperator )
150 PX_UNUSED(inOperator);
152 template<
typename TOperator>
153 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
155 PX_UNUSED(inOperator);
156 PX_UNUSED(inStartIndex);
159 static PxU32 instancePropertyCount() {
return 1; }
160 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
161 template<
typename TOperator>
162 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
164 PX_UNUSED(inOperator);
165 PX_UNUSED(inStartIndex);
166 inOperator( ReferenceCount, inStartIndex + 0 );;
167 return 1 + inStartIndex;
170 template<>
struct PxClassInfoTraits<PxRefCounted>
176 class PxBaseMaterial;
186 static const char* getClassName() {
return "PxBaseMaterial"; }
187 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxBaseMaterial_UserData, PxBaseMaterial, void *, void * > UserData;
190 template<
typename TReturnType,
typename TOperator>
191 TReturnType visitType( TOperator inOperator )
const
193 return inOperator(
reinterpret_cast<PxBaseMaterial*
>(NULL) );
195 template<
typename TOperator>
196 void visitBases( TOperator inOperator )
198 PX_UNUSED(inOperator);
201 template<
typename TOperator>
202 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
204 PX_UNUSED(inOperator);
205 PX_UNUSED(inStartIndex);
206 inStartIndex = PxRefCountedGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
207 inStartIndex = PxRefCountedGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
210 static PxU32 instancePropertyCount() {
return 1; }
211 static PxU32 totalPropertyCount() {
return instancePropertyCount()
212 + PxRefCountedGeneratedInfo::totalPropertyCount(); }
213 template<
typename TOperator>
214 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
216 PX_UNUSED(inOperator);
217 PX_UNUSED(inStartIndex);
218 inOperator( UserData, inStartIndex + 0 );;
219 return 1 + inStartIndex;
222 template<>
struct PxClassInfoTraits<PxBaseMaterial>
228 static PxU32ToName g_physx__PxMaterialFlag__EnumConversion[] = {
236template<>
struct PxEnumTraits<
physx::PxMaterialFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxMaterialFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
237 static PxU32ToName g_physx__PxCombineMode__EnumConversion[] = {
247template<>
struct PxEnumTraits<
physx::PxCombineMode::Enum > { PxEnumTraits() : NameConversion( g_physx__PxCombineMode__EnumConversion ) {}
const PxU32ToName* NameConversion; };
251 PxReal DynamicFriction;
252 PxReal StaticFriction;
255 PxMaterialFlags Flags;
256 PxCombineMode::Enum FrictionCombineMode;
257 PxCombineMode::Enum RestitutionCombineMode;
258 const char * ConcreteTypeName;
272 static const char* getClassName() {
return "PxMaterial"; }
273 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxMaterial_DynamicFriction, PxMaterial, PxReal, PxReal > DynamicFriction;
274 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxMaterial_StaticFriction, PxMaterial, PxReal, PxReal > StaticFriction;
275 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxMaterial_Restitution, PxMaterial, PxReal, PxReal > Restitution;
276 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxMaterial_Damping, PxMaterial, PxReal, PxReal > Damping;
277 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxMaterial_Flags, PxMaterial, PxMaterialFlags, PxMaterialFlags > Flags;
278 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxMaterial_FrictionCombineMode, PxMaterial, PxCombineMode::Enum, PxCombineMode::Enum > FrictionCombineMode;
279 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxMaterial_RestitutionCombineMode, PxMaterial, PxCombineMode::Enum, PxCombineMode::Enum > RestitutionCombineMode;
280 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxMaterial_ConcreteTypeName, PxMaterial, const char * > ConcreteTypeName;
283 template<
typename TReturnType,
typename TOperator>
284 TReturnType visitType( TOperator inOperator )
const
286 return inOperator(
reinterpret_cast<PxMaterial*
>(NULL) );
288 template<
typename TOperator>
289 void visitBases( TOperator inOperator )
291 PX_UNUSED(inOperator);
294 template<
typename TOperator>
295 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
297 PX_UNUSED(inOperator);
298 PX_UNUSED(inStartIndex);
299 inStartIndex = PxBaseMaterialGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
300 inStartIndex = PxBaseMaterialGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
303 static PxU32 instancePropertyCount() {
return 8; }
304 static PxU32 totalPropertyCount() {
return instancePropertyCount()
305 + PxBaseMaterialGeneratedInfo::totalPropertyCount(); }
306 template<
typename TOperator>
307 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
309 PX_UNUSED(inOperator);
310 PX_UNUSED(inStartIndex);
311 inOperator( DynamicFriction, inStartIndex + 0 );;
312 inOperator( StaticFriction, inStartIndex + 1 );;
313 inOperator( Restitution, inStartIndex + 2 );;
314 inOperator( Damping, inStartIndex + 3 );;
315 inOperator( Flags, inStartIndex + 4 );;
316 inOperator( FrictionCombineMode, inStartIndex + 5 );;
317 inOperator( RestitutionCombineMode, inStartIndex + 6 );;
318 inOperator( ConcreteTypeName, inStartIndex + 7 );;
319 return 8 + inStartIndex;
322 template<>
struct PxClassInfoTraits<PxMaterial>
331 PxReal YoungsModulus;
333 PxReal DynamicFriction;
342 static const char* getClassName() {
return "PxFEMMaterial"; }
343 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxFEMMaterial_YoungsModulus, PxFEMMaterial, PxReal, PxReal > YoungsModulus;
344 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxFEMMaterial_Poissons, PxFEMMaterial, PxReal, PxReal > Poissons;
345 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxFEMMaterial_DynamicFriction, PxFEMMaterial, PxReal, PxReal > DynamicFriction;
348 template<
typename TReturnType,
typename TOperator>
349 TReturnType visitType( TOperator inOperator )
const
351 return inOperator(
reinterpret_cast<PxFEMMaterial*
>(NULL) );
353 template<
typename TOperator>
354 void visitBases( TOperator inOperator )
356 PX_UNUSED(inOperator);
359 template<
typename TOperator>
360 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
362 PX_UNUSED(inOperator);
363 PX_UNUSED(inStartIndex);
364 inStartIndex = PxBaseMaterialGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
365 inStartIndex = PxBaseMaterialGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
368 static PxU32 instancePropertyCount() {
return 3; }
369 static PxU32 totalPropertyCount() {
return instancePropertyCount()
370 + PxBaseMaterialGeneratedInfo::totalPropertyCount(); }
371 template<
typename TOperator>
372 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
374 PX_UNUSED(inOperator);
375 PX_UNUSED(inStartIndex);
376 inOperator( YoungsModulus, inStartIndex + 0 );;
377 inOperator( Poissons, inStartIndex + 1 );;
378 inOperator( DynamicFriction, inStartIndex + 2 );;
379 return 3 + inStartIndex;
382 template<>
struct PxClassInfoTraits<PxFEMMaterial>
388 class PxFEMSoftBodyMaterial;
393 const char * ConcreteTypeName;
402 static const char* getClassName() {
return "PxFEMSoftBodyMaterial"; }
403 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxFEMSoftBodyMaterial_Damping, PxFEMSoftBodyMaterial, PxReal, PxReal > Damping;
404 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxFEMSoftBodyMaterial_DampingScale, PxFEMSoftBodyMaterial, PxReal, PxReal > DampingScale;
405 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxFEMSoftBodyMaterial_ConcreteTypeName, PxFEMSoftBodyMaterial, const char * > ConcreteTypeName;
408 template<
typename TReturnType,
typename TOperator>
409 TReturnType visitType( TOperator inOperator )
const
411 return inOperator(
reinterpret_cast<PxFEMSoftBodyMaterial*
>(NULL) );
413 template<
typename TOperator>
414 void visitBases( TOperator inOperator )
416 PX_UNUSED(inOperator);
419 template<
typename TOperator>
420 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
422 PX_UNUSED(inOperator);
423 PX_UNUSED(inStartIndex);
424 inStartIndex = PxFEMMaterialGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
425 inStartIndex = PxFEMMaterialGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
428 static PxU32 instancePropertyCount() {
return 3; }
429 static PxU32 totalPropertyCount() {
return instancePropertyCount()
430 + PxFEMMaterialGeneratedInfo::totalPropertyCount(); }
431 template<
typename TOperator>
432 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
434 PX_UNUSED(inOperator);
435 PX_UNUSED(inStartIndex);
436 inOperator( Damping, inStartIndex + 0 );;
437 inOperator( DampingScale, inStartIndex + 1 );;
438 inOperator( ConcreteTypeName, inStartIndex + 2 );;
439 return 3 + inStartIndex;
442 template<>
struct PxClassInfoTraits<PxFEMSoftBodyMaterial>
448 class PxParticleMaterial;
455 PxReal AdhesionRadiusScale;
466 static const char* getClassName() {
return "PxParticleMaterial"; }
467 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxParticleMaterial_Friction, PxParticleMaterial, PxReal, PxReal > Friction;
468 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxParticleMaterial_Damping, PxParticleMaterial, PxReal, PxReal > Damping;
469 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxParticleMaterial_Adhesion, PxParticleMaterial, PxReal, PxReal > Adhesion;
470 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxParticleMaterial_GravityScale, PxParticleMaterial, PxReal, PxReal > GravityScale;
471 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxParticleMaterial_AdhesionRadiusScale, PxParticleMaterial, PxReal, PxReal > AdhesionRadiusScale;
474 template<
typename TReturnType,
typename TOperator>
475 TReturnType visitType( TOperator inOperator )
const
477 return inOperator(
reinterpret_cast<PxParticleMaterial*
>(NULL) );
479 template<
typename TOperator>
480 void visitBases( TOperator inOperator )
482 PX_UNUSED(inOperator);
485 template<
typename TOperator>
486 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
488 PX_UNUSED(inOperator);
489 PX_UNUSED(inStartIndex);
490 inStartIndex = PxBaseMaterialGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
491 inStartIndex = PxBaseMaterialGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
494 static PxU32 instancePropertyCount() {
return 5; }
495 static PxU32 totalPropertyCount() {
return instancePropertyCount()
496 + PxBaseMaterialGeneratedInfo::totalPropertyCount(); }
497 template<
typename TOperator>
498 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
500 PX_UNUSED(inOperator);
501 PX_UNUSED(inStartIndex);
502 inOperator( Friction, inStartIndex + 0 );;
503 inOperator( Damping, inStartIndex + 1 );;
504 inOperator( Adhesion, inStartIndex + 2 );;
505 inOperator( GravityScale, inStartIndex + 3 );;
506 inOperator( AdhesionRadiusScale, inStartIndex + 4 );;
507 return 5 + inStartIndex;
510 template<>
struct PxClassInfoTraits<PxParticleMaterial>
520 PxReal VorticityConfinement;
521 PxReal SurfaceTension;
525 PxReal CFLCoefficient;
526 PxReal ParticleFrictionScale;
527 PxReal ParticleAdhesionScale;
528 const char * ConcreteTypeName;
544 static const char* getClassName() {
return "PxPBDMaterial"; }
545 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPBDMaterial_Viscosity, PxPBDMaterial, PxReal, PxReal > Viscosity;
546 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPBDMaterial_VorticityConfinement, PxPBDMaterial, PxReal, PxReal > VorticityConfinement;
547 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPBDMaterial_SurfaceTension, PxPBDMaterial, PxReal, PxReal > SurfaceTension;
548 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPBDMaterial_Cohesion, PxPBDMaterial, PxReal, PxReal > Cohesion;
549 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPBDMaterial_Lift, PxPBDMaterial, PxReal, PxReal > Lift;
550 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPBDMaterial_Drag, PxPBDMaterial, PxReal, PxReal > Drag;
551 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPBDMaterial_CFLCoefficient, PxPBDMaterial, PxReal, PxReal > CFLCoefficient;
552 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPBDMaterial_ParticleFrictionScale, PxPBDMaterial, PxReal, PxReal > ParticleFrictionScale;
553 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxPBDMaterial_ParticleAdhesionScale, PxPBDMaterial, PxReal, PxReal > ParticleAdhesionScale;
554 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxPBDMaterial_ConcreteTypeName, PxPBDMaterial, const char * > ConcreteTypeName;
557 template<
typename TReturnType,
typename TOperator>
558 TReturnType visitType( TOperator inOperator )
const
560 return inOperator(
reinterpret_cast<PxPBDMaterial*
>(NULL) );
562 template<
typename TOperator>
563 void visitBases( TOperator inOperator )
565 PX_UNUSED(inOperator);
568 template<
typename TOperator>
569 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
571 PX_UNUSED(inOperator);
572 PX_UNUSED(inStartIndex);
573 inStartIndex = PxParticleMaterialGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
574 inStartIndex = PxParticleMaterialGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
577 static PxU32 instancePropertyCount() {
return 10; }
578 static PxU32 totalPropertyCount() {
return instancePropertyCount()
579 + PxParticleMaterialGeneratedInfo::totalPropertyCount(); }
580 template<
typename TOperator>
581 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
583 PX_UNUSED(inOperator);
584 PX_UNUSED(inStartIndex);
585 inOperator( Viscosity, inStartIndex + 0 );;
586 inOperator( VorticityConfinement, inStartIndex + 1 );;
587 inOperator( SurfaceTension, inStartIndex + 2 );;
588 inOperator( Cohesion, inStartIndex + 3 );;
589 inOperator( Lift, inStartIndex + 4 );;
590 inOperator( Drag, inStartIndex + 5 );;
591 inOperator( CFLCoefficient, inStartIndex + 6 );;
592 inOperator( ParticleFrictionScale, inStartIndex + 7 );;
593 inOperator( ParticleAdhesionScale, inStartIndex + 8 );;
594 inOperator( ConcreteTypeName, inStartIndex + 9 );;
595 return 10 + inStartIndex;
598 template<>
struct PxClassInfoTraits<PxPBDMaterial>
604 static PxU32ToName g_physx__PxActorType__EnumConversion[] = {
618template<>
struct PxEnumTraits<
physx::PxActorType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxActorType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
619 static PxU32ToName g_physx__PxActorFlag__EnumConversion[] = {
627template<>
struct PxEnumTraits<
physx::PxActorFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxActorFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
633 PxActorFlags ActorFlags;
634 PxDominanceGroup DominanceGroup;
635 PxClientID OwnerClient;
636 PxAggregate * Aggregate;
650 static const char* getClassName() {
return "PxActor"; }
651 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxActor_Scene, PxActor, PxScene * > Scene;
652 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxActor_Name, PxActor, const char *, const char * > Name;
653 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxActor_ActorFlags, PxActor, PxActorFlags, PxActorFlags > ActorFlags;
654 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxActor_DominanceGroup, PxActor, PxDominanceGroup, PxDominanceGroup > DominanceGroup;
655 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxActor_OwnerClient, PxActor, PxClientID, PxClientID > OwnerClient;
656 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxActor_Aggregate, PxActor, PxAggregate * > Aggregate;
657 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxActor_UserData, PxActor, void *, void * > UserData;
660 template<
typename TReturnType,
typename TOperator>
661 TReturnType visitType( TOperator inOperator )
const
663 return inOperator(
reinterpret_cast<PxActor*
>(NULL) );
665 template<
typename TOperator>
666 void visitBases( TOperator inOperator )
668 PX_UNUSED(inOperator);
670 template<
typename TOperator>
671 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
673 PX_UNUSED(inOperator);
674 PX_UNUSED(inStartIndex);
677 static PxU32 instancePropertyCount() {
return 7; }
678 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
679 template<
typename TOperator>
680 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
682 PX_UNUSED(inOperator);
683 PX_UNUSED(inStartIndex);
684 inOperator( Scene, inStartIndex + 0 );;
685 inOperator( Name, inStartIndex + 1 );;
686 inOperator( ActorFlags, inStartIndex + 2 );;
687 inOperator( DominanceGroup, inStartIndex + 3 );;
688 inOperator( OwnerClient, inStartIndex + 4 );;
689 inOperator( Aggregate, inStartIndex + 5 );;
690 inOperator( UserData, inStartIndex + 6 );;
691 return 7 + inStartIndex;
694 template<>
struct PxClassInfoTraits<PxActor>
703 PxTransform GlobalPose;
710 static const char* getClassName() {
return "PxRigidActor"; }
711 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidActor_GlobalPose, PxRigidActor, const PxTransform &, PxTransform > GlobalPose;
712 PxRigidActorShapeCollection Shapes;
713 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidActor_Constraints, PxRigidActor, PxConstraint * > Constraints;
716 template<
typename TReturnType,
typename TOperator>
717 TReturnType visitType( TOperator inOperator )
const
719 return inOperator(
reinterpret_cast<PxRigidActor*
>(NULL) );
721 template<
typename TOperator>
722 void visitBases( TOperator inOperator )
724 PX_UNUSED(inOperator);
727 template<
typename TOperator>
728 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
730 PX_UNUSED(inOperator);
731 PX_UNUSED(inStartIndex);
732 inStartIndex = PxActorGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
733 inStartIndex = PxActorGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
736 static PxU32 instancePropertyCount() {
return 3; }
737 static PxU32 totalPropertyCount() {
return instancePropertyCount()
738 + PxActorGeneratedInfo::totalPropertyCount(); }
739 template<
typename TOperator>
740 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
742 PX_UNUSED(inOperator);
743 PX_UNUSED(inStartIndex);
744 inOperator( GlobalPose, inStartIndex + 0 );;
745 inOperator( Shapes, inStartIndex + 1 );;
746 inOperator( Constraints, inStartIndex + 2 );;
747 return 3 + inStartIndex;
750 template<>
struct PxClassInfoTraits<PxRigidActor>
756 static PxU32ToName g_physx__PxForceMode__EnumConversion[] = {
764template<>
struct PxEnumTraits<
physx::PxForceMode::Enum > { PxEnumTraits() : NameConversion( g_physx__PxForceMode__EnumConversion ) {}
const PxU32ToName* NameConversion; };
765 static PxU32ToName g_physx__PxRigidBodyFlag__EnumConversion[] = {
781template<>
struct PxEnumTraits<
physx::PxRigidBodyFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxRigidBodyFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
785 PxTransform CMassLocalPose;
788 PxVec3 MassSpaceInertiaTensor;
789 PxVec3 MassSpaceInvInertiaTensor;
790 PxReal LinearDamping;
791 PxReal AngularDamping;
792 PxReal MaxLinearVelocity;
793 PxReal MaxAngularVelocity;
794 PxRigidBodyFlags RigidBodyFlags;
795 PxReal MinCCDAdvanceCoefficient;
796 PxReal MaxDepenetrationVelocity;
797 PxReal MaxContactImpulse;
798 PxReal ContactSlopCoefficient;
818 static const char* getClassName() {
return "PxRigidBody"; }
819 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_CMassLocalPose, PxRigidBody, const PxTransform &, PxTransform > CMassLocalPose;
820 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_Mass, PxRigidBody, PxReal, PxReal > Mass;
821 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_InvMass, PxRigidBody, PxReal > InvMass;
822 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_MassSpaceInertiaTensor, PxRigidBody, const PxVec3 &, PxVec3 > MassSpaceInertiaTensor;
823 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_MassSpaceInvInertiaTensor, PxRigidBody, PxVec3 > MassSpaceInvInertiaTensor;
824 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_LinearDamping, PxRigidBody, PxReal, PxReal > LinearDamping;
825 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_AngularDamping, PxRigidBody, PxReal, PxReal > AngularDamping;
826 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_MaxLinearVelocity, PxRigidBody, PxReal, PxReal > MaxLinearVelocity;
827 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_MaxAngularVelocity, PxRigidBody, PxReal, PxReal > MaxAngularVelocity;
828 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_RigidBodyFlags, PxRigidBody, PxRigidBodyFlags, PxRigidBodyFlags > RigidBodyFlags;
829 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_MinCCDAdvanceCoefficient, PxRigidBody, PxReal, PxReal > MinCCDAdvanceCoefficient;
830 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_MaxDepenetrationVelocity, PxRigidBody, PxReal, PxReal > MaxDepenetrationVelocity;
831 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_MaxContactImpulse, PxRigidBody, PxReal, PxReal > MaxContactImpulse;
832 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidBody_ContactSlopCoefficient, PxRigidBody, PxReal, PxReal > ContactSlopCoefficient;
835 template<
typename TReturnType,
typename TOperator>
836 TReturnType visitType( TOperator inOperator )
const
838 return inOperator(
reinterpret_cast<PxRigidBody*
>(NULL) );
840 template<
typename TOperator>
841 void visitBases( TOperator inOperator )
843 PX_UNUSED(inOperator);
846 template<
typename TOperator>
847 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
849 PX_UNUSED(inOperator);
850 PX_UNUSED(inStartIndex);
851 inStartIndex = PxRigidActorGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
852 inStartIndex = PxRigidActorGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
855 static PxU32 instancePropertyCount() {
return 14; }
856 static PxU32 totalPropertyCount() {
return instancePropertyCount()
857 + PxRigidActorGeneratedInfo::totalPropertyCount(); }
858 template<
typename TOperator>
859 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
861 PX_UNUSED(inOperator);
862 PX_UNUSED(inStartIndex);
863 inOperator( CMassLocalPose, inStartIndex + 0 );;
864 inOperator( Mass, inStartIndex + 1 );;
865 inOperator( InvMass, inStartIndex + 2 );;
866 inOperator( MassSpaceInertiaTensor, inStartIndex + 3 );;
867 inOperator( MassSpaceInvInertiaTensor, inStartIndex + 4 );;
868 inOperator( LinearDamping, inStartIndex + 5 );;
869 inOperator( AngularDamping, inStartIndex + 6 );;
870 inOperator( MaxLinearVelocity, inStartIndex + 7 );;
871 inOperator( MaxAngularVelocity, inStartIndex + 8 );;
872 inOperator( RigidBodyFlags, inStartIndex + 9 );;
873 inOperator( MinCCDAdvanceCoefficient, inStartIndex + 10 );;
874 inOperator( MaxDepenetrationVelocity, inStartIndex + 11 );;
875 inOperator( MaxContactImpulse, inStartIndex + 12 );;
876 inOperator( ContactSlopCoefficient, inStartIndex + 13 );;
877 return 14 + inStartIndex;
880 template<>
struct PxClassInfoTraits<PxRigidBody>
886 static PxU32ToName g_physx__PxRigidDynamicLockFlag__EnumConversion[] = {
887 {
"eLOCK_LINEAR_X",
static_cast<PxU32
>( physx::PxRigidDynamicLockFlag::eLOCK_LINEAR_X ) },
888 {
"eLOCK_LINEAR_Y",
static_cast<PxU32
>( physx::PxRigidDynamicLockFlag::eLOCK_LINEAR_Y ) },
889 {
"eLOCK_LINEAR_Z",
static_cast<PxU32
>( physx::PxRigidDynamicLockFlag::eLOCK_LINEAR_Z ) },
890 {
"eLOCK_ANGULAR_X",
static_cast<PxU32
>( physx::PxRigidDynamicLockFlag::eLOCK_ANGULAR_X ) },
891 {
"eLOCK_ANGULAR_Y",
static_cast<PxU32
>( physx::PxRigidDynamicLockFlag::eLOCK_ANGULAR_Y ) },
892 {
"eLOCK_ANGULAR_Z",
static_cast<PxU32
>( physx::PxRigidDynamicLockFlag::eLOCK_ANGULAR_Z ) },
896template<>
struct PxEnumTraits<
physx::PxRigidDynamicLockFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxRigidDynamicLockFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
897 class PxRigidDynamic;
901 PxReal SleepThreshold;
902 PxReal StabilizationThreshold;
903 PxRigidDynamicLockFlags RigidDynamicLockFlags;
904 PxVec3 LinearVelocity;
905 PxVec3 AngularVelocity;
907 PxU32 SolverIterationCounts[2];
908 PxReal ContactReportThreshold;
909 const char * ConcreteTypeName;
925 static const char* getClassName() {
return "PxRigidDynamic"; }
926 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidDynamic_IsSleeping, PxRigidDynamic, _Bool > IsSleeping;
927 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidDynamic_SleepThreshold, PxRigidDynamic, PxReal, PxReal > SleepThreshold;
928 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidDynamic_StabilizationThreshold, PxRigidDynamic, PxReal, PxReal > StabilizationThreshold;
929 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidDynamic_RigidDynamicLockFlags, PxRigidDynamic, PxRigidDynamicLockFlags, PxRigidDynamicLockFlags > RigidDynamicLockFlags;
930 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidDynamic_LinearVelocity, PxRigidDynamic, const PxVec3 &, PxVec3 > LinearVelocity;
931 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidDynamic_AngularVelocity, PxRigidDynamic, const PxVec3 &, PxVec3 > AngularVelocity;
932 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidDynamic_WakeCounter, PxRigidDynamic, PxReal, PxReal > WakeCounter;
933 PxRangePropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidDynamic_SolverIterationCounts, PxRigidDynamic, PxU32 > SolverIterationCounts;
934 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidDynamic_ContactReportThreshold, PxRigidDynamic, PxReal, PxReal > ContactReportThreshold;
935 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidDynamic_ConcreteTypeName, PxRigidDynamic, const char * > ConcreteTypeName;
938 template<
typename TReturnType,
typename TOperator>
939 TReturnType visitType( TOperator inOperator )
const
941 return inOperator(
reinterpret_cast<PxRigidDynamic*
>(NULL) );
943 template<
typename TOperator>
944 void visitBases( TOperator inOperator )
946 PX_UNUSED(inOperator);
949 template<
typename TOperator>
950 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
952 PX_UNUSED(inOperator);
953 PX_UNUSED(inStartIndex);
954 inStartIndex = PxRigidBodyGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
955 inStartIndex = PxRigidBodyGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
958 static PxU32 instancePropertyCount() {
return 10; }
959 static PxU32 totalPropertyCount() {
return instancePropertyCount()
960 + PxRigidBodyGeneratedInfo::totalPropertyCount(); }
961 template<
typename TOperator>
962 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
964 PX_UNUSED(inOperator);
965 PX_UNUSED(inStartIndex);
966 inOperator( IsSleeping, inStartIndex + 0 );;
967 inOperator( SleepThreshold, inStartIndex + 1 );;
968 inOperator( StabilizationThreshold, inStartIndex + 2 );;
969 inOperator( RigidDynamicLockFlags, inStartIndex + 3 );;
970 inOperator( LinearVelocity, inStartIndex + 4 );;
971 inOperator( AngularVelocity, inStartIndex + 5 );;
972 inOperator( WakeCounter, inStartIndex + 6 );;
973 inOperator( SolverIterationCounts, inStartIndex + 7 );;
974 inOperator( ContactReportThreshold, inStartIndex + 8 );;
975 inOperator( ConcreteTypeName, inStartIndex + 9 );;
976 return 10 + inStartIndex;
979 template<>
struct PxClassInfoTraits<PxRigidDynamic>
988 const char * ConcreteTypeName;
995 static const char* getClassName() {
return "PxRigidStatic"; }
996 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxRigidStatic_ConcreteTypeName, PxRigidStatic, const char * > ConcreteTypeName;
999 template<
typename TReturnType,
typename TOperator>
1000 TReturnType visitType( TOperator inOperator )
const
1002 return inOperator(
reinterpret_cast<PxRigidStatic*
>(NULL) );
1004 template<
typename TOperator>
1005 void visitBases( TOperator inOperator )
1007 PX_UNUSED(inOperator);
1010 template<
typename TOperator>
1011 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1013 PX_UNUSED(inOperator);
1014 PX_UNUSED(inStartIndex);
1015 inStartIndex = PxRigidActorGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
1016 inStartIndex = PxRigidActorGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
1017 return inStartIndex;
1019 static PxU32 instancePropertyCount() {
return 1; }
1020 static PxU32 totalPropertyCount() {
return instancePropertyCount()
1021 + PxRigidActorGeneratedInfo::totalPropertyCount(); }
1022 template<
typename TOperator>
1023 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1025 PX_UNUSED(inOperator);
1026 PX_UNUSED(inStartIndex);
1027 inOperator( ConcreteTypeName, inStartIndex + 0 );;
1028 return 1 + inStartIndex;
1031 template<>
struct PxClassInfoTraits<PxRigidStatic>
1037 class PxArticulationLink;
1040 PxArticulationJointReducedCoordinate * InboundJoint;
1041 PxU32 InboundJointDof;
1044 PxVec3 LinearVelocity;
1045 PxVec3 AngularVelocity;
1046 const char * ConcreteTypeName;
1059 static const char* getClassName() {
return "PxArticulationLink"; }
1060 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationLink_InboundJoint, PxArticulationLink, PxArticulationJointReducedCoordinate * > InboundJoint;
1061 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationLink_InboundJointDof, PxArticulationLink, PxU32 > InboundJointDof;
1062 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationLink_LinkIndex, PxArticulationLink, PxU32 > LinkIndex;
1063 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationLink_Children, PxArticulationLink, PxArticulationLink * > Children;
1064 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationLink_CfmScale, PxArticulationLink, const PxReal, PxReal > CfmScale;
1065 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationLink_LinearVelocity, PxArticulationLink, PxVec3 > LinearVelocity;
1066 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationLink_AngularVelocity, PxArticulationLink, PxVec3 > AngularVelocity;
1067 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationLink_ConcreteTypeName, PxArticulationLink, const char * > ConcreteTypeName;
1070 template<
typename TReturnType,
typename TOperator>
1071 TReturnType visitType( TOperator inOperator )
const
1073 return inOperator(
reinterpret_cast<PxArticulationLink*
>(NULL) );
1075 template<
typename TOperator>
1076 void visitBases( TOperator inOperator )
1078 PX_UNUSED(inOperator);
1081 template<
typename TOperator>
1082 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1084 PX_UNUSED(inOperator);
1085 PX_UNUSED(inStartIndex);
1086 inStartIndex = PxRigidBodyGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
1087 inStartIndex = PxRigidBodyGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
1088 return inStartIndex;
1090 static PxU32 instancePropertyCount() {
return 8; }
1091 static PxU32 totalPropertyCount() {
return instancePropertyCount()
1092 + PxRigidBodyGeneratedInfo::totalPropertyCount(); }
1093 template<
typename TOperator>
1094 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1096 PX_UNUSED(inOperator);
1097 PX_UNUSED(inStartIndex);
1098 inOperator( InboundJoint, inStartIndex + 0 );;
1099 inOperator( InboundJointDof, inStartIndex + 1 );;
1100 inOperator( LinkIndex, inStartIndex + 2 );;
1101 inOperator( Children, inStartIndex + 3 );;
1102 inOperator( CfmScale, inStartIndex + 4 );;
1103 inOperator( LinearVelocity, inStartIndex + 5 );;
1104 inOperator( AngularVelocity, inStartIndex + 6 );;
1105 inOperator( ConcreteTypeName, inStartIndex + 7 );;
1106 return 8 + inStartIndex;
1109 template<>
struct PxClassInfoTraits<PxArticulationLink>
1115 static PxU32ToName g_physx__PxArticulationJointType__EnumConversion[] = {
1121 {
"eUNDEFINED",
static_cast<PxU32
>( physx::PxArticulationJointType::eUNDEFINED ) },
1125template<>
struct PxEnumTraits<
physx::PxArticulationJointType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxArticulationJointType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
1126 static PxU32ToName g_physx__PxArticulationAxis__EnumConversion[] = {
1136template<>
struct PxEnumTraits<
physx::PxArticulationAxis::Enum > { PxEnumTraits() : NameConversion( g_physx__PxArticulationAxis__EnumConversion ) {}
const PxU32ToName* NameConversion; };
1137 static PxU32ToName g_physx__PxArticulationMotion__EnumConversion[] = {
1144template<>
struct PxEnumTraits<
physx::PxArticulationMotion::Enum > { PxEnumTraits() : NameConversion( g_physx__PxArticulationMotion__EnumConversion ) {}
const PxU32ToName* NameConversion; };
1145 static PxU32ToName g_physx__PxArticulationDriveType__EnumConversion[] = {
1150 {
"eNONE",
static_cast<PxU32
>( physx::PxArticulationDriveType::eNONE ) },
1154template<>
struct PxEnumTraits<
physx::PxArticulationDriveType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxArticulationDriveType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
1155 class PxArticulationJointReducedCoordinate;
1158 PxTransform ParentPose;
1159 PxTransform ChildPose;
1160 PxArticulationJointType::Enum JointType;
1161 PxArticulationMotion::Enum Motion[physx::PxArticulationAxis::eCOUNT];
1162 PxArticulationLimit LimitParams[physx::PxArticulationAxis::eCOUNT];
1163 PxArticulationDrive DriveParams[physx::PxArticulationAxis::eCOUNT];
1164 PxReal Armature[physx::PxArticulationAxis::eCOUNT];
1165 PxReal FrictionCoefficient;
1166 PxReal MaxJointVelocity;
1167 PxReal JointPosition[physx::PxArticulationAxis::eCOUNT];
1168 PxReal JointVelocity[physx::PxArticulationAxis::eCOUNT];
1169 const char * ConcreteTypeName;
1189 static const char* getClassName() {
return "PxArticulationJointReducedCoordinate"; }
1190 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_ParentPose, PxArticulationJointReducedCoordinate, const PxTransform &, PxTransform > ParentPose;
1191 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_ChildPose, PxArticulationJointReducedCoordinate, const PxTransform &, PxTransform > ChildPose;
1192 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_JointType, PxArticulationJointReducedCoordinate, PxArticulationJointType::Enum, PxArticulationJointType::Enum > JointType;
1193 PxIndexedPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_Motion, PxArticulationJointReducedCoordinate, PxArticulationAxis::Enum, PxArticulationMotion::Enum > Motion;
1194 PxIndexedPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_LimitParams, PxArticulationJointReducedCoordinate, PxArticulationAxis::Enum, PxArticulationLimit > LimitParams;
1195 PxIndexedPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_DriveParams, PxArticulationJointReducedCoordinate, PxArticulationAxis::Enum, PxArticulationDrive > DriveParams;
1196 PxIndexedPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_Armature, PxArticulationJointReducedCoordinate, PxArticulationAxis::Enum, PxReal > Armature;
1197 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_FrictionCoefficient, PxArticulationJointReducedCoordinate, const PxReal, PxReal > FrictionCoefficient;
1198 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_MaxJointVelocity, PxArticulationJointReducedCoordinate, const PxReal, PxReal > MaxJointVelocity;
1199 PxIndexedPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_JointPosition, PxArticulationJointReducedCoordinate, PxArticulationAxis::Enum, PxReal > JointPosition;
1200 PxIndexedPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_JointVelocity, PxArticulationJointReducedCoordinate, PxArticulationAxis::Enum, PxReal > JointVelocity;
1201 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_ConcreteTypeName, PxArticulationJointReducedCoordinate, const char * > ConcreteTypeName;
1202 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationJointReducedCoordinate_UserData, PxArticulationJointReducedCoordinate, void *, void * > UserData;
1205 template<
typename TReturnType,
typename TOperator>
1206 TReturnType visitType( TOperator inOperator )
const
1208 return inOperator(
reinterpret_cast<PxArticulationJointReducedCoordinate*
>(NULL) );
1210 template<
typename TOperator>
1211 void visitBases( TOperator inOperator )
1213 PX_UNUSED(inOperator);
1215 template<
typename TOperator>
1216 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1218 PX_UNUSED(inOperator);
1219 PX_UNUSED(inStartIndex);
1220 return inStartIndex;
1222 static PxU32 instancePropertyCount() {
return 13; }
1223 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
1224 template<
typename TOperator>
1225 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1227 PX_UNUSED(inOperator);
1228 PX_UNUSED(inStartIndex);
1229 inOperator( ParentPose, inStartIndex + 0 );;
1230 inOperator( ChildPose, inStartIndex + 1 );;
1231 inOperator( JointType, inStartIndex + 2 );;
1232 inOperator( Motion, inStartIndex + 3 );;
1233 inOperator( LimitParams, inStartIndex + 4 );;
1234 inOperator( DriveParams, inStartIndex + 5 );;
1235 inOperator( Armature, inStartIndex + 6 );;
1236 inOperator( FrictionCoefficient, inStartIndex + 7 );;
1237 inOperator( MaxJointVelocity, inStartIndex + 8 );;
1238 inOperator( JointPosition, inStartIndex + 9 );;
1239 inOperator( JointVelocity, inStartIndex + 10 );;
1240 inOperator( ConcreteTypeName, inStartIndex + 11 );;
1241 inOperator( UserData, inStartIndex + 12 );;
1242 return 13 + inStartIndex;
1245 template<>
struct PxClassInfoTraits<PxArticulationJointReducedCoordinate>
1251 static PxU32ToName g_physx__PxArticulationFlag__EnumConversion[] = {
1259template<>
struct PxEnumTraits<
physx::PxArticulationFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxArticulationFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
1260 static PxU32ToName g_physx__PxArticulationCacheFlag__EnumConversion[] = {
1271 {
"eALL",
static_cast<PxU32
>( physx::PxArticulationCacheFlag::eALL ) },
1275template<>
struct PxEnumTraits<
physx::PxArticulationCacheFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxArticulationCacheFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
1276 class PxArticulationReducedCoordinate;
1280 PxU32 SolverIterationCounts[2];
1282 PxReal SleepThreshold;
1283 PxReal StabilizationThreshold;
1285 PxReal MaxCOMLinearVelocity;
1286 PxReal MaxCOMAngularVelocity;
1288 PxAggregate * Aggregate;
1289 PxArticulationFlags ArticulationFlags;
1290 PxTransform RootGlobalPose;
1291 PxVec3 RootLinearVelocity;
1292 PxVec3 RootAngularVelocity;
1314 static const char* getClassName() {
return "PxArticulationReducedCoordinate"; }
1315 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_Scene, PxArticulationReducedCoordinate, PxScene * > Scene;
1316 PxRangePropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_SolverIterationCounts, PxArticulationReducedCoordinate, PxU32 > SolverIterationCounts;
1317 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_IsSleeping, PxArticulationReducedCoordinate, _Bool > IsSleeping;
1318 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_SleepThreshold, PxArticulationReducedCoordinate, PxReal, PxReal > SleepThreshold;
1319 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_StabilizationThreshold, PxArticulationReducedCoordinate, PxReal, PxReal > StabilizationThreshold;
1320 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_WakeCounter, PxArticulationReducedCoordinate, PxReal, PxReal > WakeCounter;
1321 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_MaxCOMLinearVelocity, PxArticulationReducedCoordinate, const PxReal, PxReal > MaxCOMLinearVelocity;
1322 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_MaxCOMAngularVelocity, PxArticulationReducedCoordinate, const PxReal, PxReal > MaxCOMAngularVelocity;
1323 PxArticulationLinkCollectionProp Links;
1324 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_Name, PxArticulationReducedCoordinate, const char *, const char * > Name;
1325 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_Aggregate, PxArticulationReducedCoordinate, PxAggregate * > Aggregate;
1326 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_ArticulationFlags, PxArticulationReducedCoordinate, PxArticulationFlags, PxArticulationFlags > ArticulationFlags;
1327 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_RootGlobalPose, PxArticulationReducedCoordinate, const PxTransform &, PxTransform > RootGlobalPose;
1328 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_RootLinearVelocity, PxArticulationReducedCoordinate, const PxVec3 &, PxVec3 > RootLinearVelocity;
1329 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_RootAngularVelocity, PxArticulationReducedCoordinate, const PxVec3 &, PxVec3 > RootAngularVelocity;
1330 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationReducedCoordinate_UserData, PxArticulationReducedCoordinate, void *, void * > UserData;
1333 template<
typename TReturnType,
typename TOperator>
1334 TReturnType visitType( TOperator inOperator )
const
1336 return inOperator(
reinterpret_cast<PxArticulationReducedCoordinate*
>(NULL) );
1338 template<
typename TOperator>
1339 void visitBases( TOperator inOperator )
1341 PX_UNUSED(inOperator);
1343 template<
typename TOperator>
1344 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1346 PX_UNUSED(inOperator);
1347 PX_UNUSED(inStartIndex);
1348 return inStartIndex;
1350 static PxU32 instancePropertyCount() {
return 16; }
1351 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
1352 template<
typename TOperator>
1353 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1355 PX_UNUSED(inOperator);
1356 PX_UNUSED(inStartIndex);
1357 inOperator( Scene, inStartIndex + 0 );;
1358 inOperator( SolverIterationCounts, inStartIndex + 1 );;
1359 inOperator( IsSleeping, inStartIndex + 2 );;
1360 inOperator( SleepThreshold, inStartIndex + 3 );;
1361 inOperator( StabilizationThreshold, inStartIndex + 4 );;
1362 inOperator( WakeCounter, inStartIndex + 5 );;
1363 inOperator( MaxCOMLinearVelocity, inStartIndex + 6 );;
1364 inOperator( MaxCOMAngularVelocity, inStartIndex + 7 );;
1365 inOperator( Links, inStartIndex + 8 );;
1366 inOperator( Name, inStartIndex + 9 );;
1367 inOperator( Aggregate, inStartIndex + 10 );;
1368 inOperator( ArticulationFlags, inStartIndex + 11 );;
1369 inOperator( RootGlobalPose, inStartIndex + 12 );;
1370 inOperator( RootLinearVelocity, inStartIndex + 13 );;
1371 inOperator( RootAngularVelocity, inStartIndex + 14 );;
1372 inOperator( UserData, inStartIndex + 15 );;
1373 return 16 + inStartIndex;
1376 template<>
struct PxClassInfoTraits<PxArticulationReducedCoordinate>
1387 _Bool SelfCollision;
1388 const char * ConcreteTypeName;
1400 static const char* getClassName() {
return "PxAggregate"; }
1401 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxAggregate_MaxNbActors, PxAggregate, PxU32 > MaxNbActors;
1402 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxAggregate_MaxNbShapes, PxAggregate, PxU32 > MaxNbShapes;
1403 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxAggregate_Actors, PxAggregate, PxActor * > Actors;
1404 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxAggregate_SelfCollision, PxAggregate, _Bool > SelfCollision;
1405 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxAggregate_ConcreteTypeName, PxAggregate, const char * > ConcreteTypeName;
1406 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxAggregate_UserData, PxAggregate, void *, void * > UserData;
1409 template<
typename TReturnType,
typename TOperator>
1410 TReturnType visitType( TOperator inOperator )
const
1412 return inOperator(
reinterpret_cast<PxAggregate*
>(NULL) );
1414 template<
typename TOperator>
1415 void visitBases( TOperator inOperator )
1417 PX_UNUSED(inOperator);
1419 template<
typename TOperator>
1420 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1422 PX_UNUSED(inOperator);
1423 PX_UNUSED(inStartIndex);
1424 return inStartIndex;
1426 static PxU32 instancePropertyCount() {
return 6; }
1427 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
1428 template<
typename TOperator>
1429 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1431 PX_UNUSED(inOperator);
1432 PX_UNUSED(inStartIndex);
1433 inOperator( MaxNbActors, inStartIndex + 0 );;
1434 inOperator( MaxNbShapes, inStartIndex + 1 );;
1435 inOperator( Actors, inStartIndex + 2 );;
1436 inOperator( SelfCollision, inStartIndex + 3 );;
1437 inOperator( ConcreteTypeName, inStartIndex + 4 );;
1438 inOperator( UserData, inStartIndex + 5 );;
1439 return 6 + inStartIndex;
1442 template<>
struct PxClassInfoTraits<PxAggregate>
1448 static PxU32ToName g_physx__PxConstraintFlag__EnumConversion[] = {
1465template<>
struct PxEnumTraits<
physx::PxConstraintFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxConstraintFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
1470 PxRigidActor * Actors[2];
1471 PxConstraintFlags Flags;
1473 PxReal BreakForce[2];
1474 PxReal MinResponseThreshold;
1475 const char * ConcreteTypeName;
1490 static const char* getClassName() {
return "PxConstraint"; }
1491 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxConstraint_Scene, PxConstraint, PxScene * > Scene;
1492 PxRangePropertyInfo<PX_PROPERTY_INFO_NAME::PxConstraint_Actors, PxConstraint, PxRigidActor * > Actors;
1493 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxConstraint_Flags, PxConstraint, PxConstraintFlags, PxConstraintFlags > Flags;
1494 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxConstraint_IsValid, PxConstraint, _Bool > IsValid;
1495 PxRangePropertyInfo<PX_PROPERTY_INFO_NAME::PxConstraint_BreakForce, PxConstraint, PxReal > BreakForce;
1496 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxConstraint_MinResponseThreshold, PxConstraint, PxReal, PxReal > MinResponseThreshold;
1497 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxConstraint_ConcreteTypeName, PxConstraint, const char * > ConcreteTypeName;
1498 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxConstraint_UserData, PxConstraint, void *, void * > UserData;
1501 template<
typename TReturnType,
typename TOperator>
1502 TReturnType visitType( TOperator inOperator )
const
1504 return inOperator(
reinterpret_cast<PxConstraint*
>(NULL) );
1506 template<
typename TOperator>
1507 void visitBases( TOperator inOperator )
1509 PX_UNUSED(inOperator);
1511 template<
typename TOperator>
1512 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1514 PX_UNUSED(inOperator);
1515 PX_UNUSED(inStartIndex);
1516 return inStartIndex;
1518 static PxU32 instancePropertyCount() {
return 8; }
1519 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
1520 template<
typename TOperator>
1521 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1523 PX_UNUSED(inOperator);
1524 PX_UNUSED(inStartIndex);
1525 inOperator( Scene, inStartIndex + 0 );;
1526 inOperator( Actors, inStartIndex + 1 );;
1527 inOperator( Flags, inStartIndex + 2 );;
1528 inOperator( IsValid, inStartIndex + 3 );;
1529 inOperator( BreakForce, inStartIndex + 4 );;
1530 inOperator( MinResponseThreshold, inStartIndex + 5 );;
1531 inOperator( ConcreteTypeName, inStartIndex + 6 );;
1532 inOperator( UserData, inStartIndex + 7 );;
1533 return 8 + inStartIndex;
1536 template<>
struct PxClassInfoTraits<PxConstraint>
1542 static PxU32ToName g_physx__PxGeometryType__EnumConversion[] = {
1543 {
"eSPHERE",
static_cast<PxU32
>( physx::PxGeometryType::eSPHERE ) },
1544 {
"ePLANE",
static_cast<PxU32
>( physx::PxGeometryType::ePLANE ) },
1545 {
"eCAPSULE",
static_cast<PxU32
>( physx::PxGeometryType::eCAPSULE ) },
1546 {
"eBOX",
static_cast<PxU32
>( physx::PxGeometryType::eBOX ) },
1547 {
"eCONVEXMESH",
static_cast<PxU32
>( physx::PxGeometryType::eCONVEXMESH ) },
1548 {
"ePARTICLESYSTEM",
static_cast<PxU32
>( physx::PxGeometryType::ePARTICLESYSTEM ) },
1549 {
"eTETRAHEDRONMESH",
static_cast<PxU32
>( physx::PxGeometryType::eTETRAHEDRONMESH ) },
1550 {
"eTRIANGLEMESH",
static_cast<PxU32
>( physx::PxGeometryType::eTRIANGLEMESH ) },
1551 {
"eHEIGHTFIELD",
static_cast<PxU32
>( physx::PxGeometryType::eHEIGHTFIELD ) },
1552 {
"eHAIRSYSTEM",
static_cast<PxU32
>( physx::PxGeometryType::eHAIRSYSTEM ) },
1553 {
"eCUSTOM",
static_cast<PxU32
>( physx::PxGeometryType::eCUSTOM ) },
1557template<>
struct PxEnumTraits<
physx::PxGeometryType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxGeometryType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
1561 PxGeometryType::Enum GeometryType;
1562 PxTransform LocalPose;
1563 PxFilterData SimulationFilterData;
1564 PxFilterData QueryFilterData;
1565 PxReal ContactOffset;
1567 PxReal DensityForFluid;
1568 PxReal TorsionalPatchRadius;
1569 PxReal MinTorsionalPatchRadius;
1573 const char * ConcreteTypeName;
1575 PxGeometryHolder Geom;
1596 static const char* getClassName() {
return "PxShape"; }
1597 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_GeometryType, PxShape, PxGeometryType::Enum > GeometryType;
1598 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_LocalPose, PxShape, const PxTransform &, PxTransform > LocalPose;
1599 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_SimulationFilterData, PxShape, const PxFilterData &, PxFilterData > SimulationFilterData;
1600 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_QueryFilterData, PxShape, const PxFilterData &, PxFilterData > QueryFilterData;
1601 PxShapeMaterialsProperty Materials;
1602 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_ContactOffset, PxShape, PxReal, PxReal > ContactOffset;
1603 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_RestOffset, PxShape, PxReal, PxReal > RestOffset;
1604 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_DensityForFluid, PxShape, PxReal, PxReal > DensityForFluid;
1605 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_TorsionalPatchRadius, PxShape, PxReal, PxReal > TorsionalPatchRadius;
1606 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_MinTorsionalPatchRadius, PxShape, PxReal, PxReal > MinTorsionalPatchRadius;
1607 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_Flags, PxShape, PxShapeFlags, PxShapeFlags > Flags;
1608 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_IsExclusive, PxShape, _Bool > IsExclusive;
1609 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_Name, PxShape, const char *, const char * > Name;
1610 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_ConcreteTypeName, PxShape, const char * > ConcreteTypeName;
1611 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxShape_UserData, PxShape, void *, void * > UserData;
1612 PxShapeGeomProperty Geom;
1615 template<
typename TReturnType,
typename TOperator>
1616 TReturnType visitType( TOperator inOperator )
const
1618 return inOperator(
reinterpret_cast<PxShape*
>(NULL) );
1620 template<
typename TOperator>
1621 void visitBases( TOperator inOperator )
1623 PX_UNUSED(inOperator);
1626 template<
typename TOperator>
1627 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1629 PX_UNUSED(inOperator);
1630 PX_UNUSED(inStartIndex);
1631 inStartIndex = PxRefCountedGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
1632 inStartIndex = PxRefCountedGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
1633 return inStartIndex;
1635 static PxU32 instancePropertyCount() {
return 16; }
1636 static PxU32 totalPropertyCount() {
return instancePropertyCount()
1637 + PxRefCountedGeneratedInfo::totalPropertyCount(); }
1638 template<
typename TOperator>
1639 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1641 PX_UNUSED(inOperator);
1642 PX_UNUSED(inStartIndex);
1643 inOperator( GeometryType, inStartIndex + 0 );;
1644 inOperator( LocalPose, inStartIndex + 1 );;
1645 inOperator( SimulationFilterData, inStartIndex + 2 );;
1646 inOperator( QueryFilterData, inStartIndex + 3 );;
1647 inOperator( Materials, inStartIndex + 4 );;
1648 inOperator( ContactOffset, inStartIndex + 5 );;
1649 inOperator( RestOffset, inStartIndex + 6 );;
1650 inOperator( DensityForFluid, inStartIndex + 7 );;
1651 inOperator( TorsionalPatchRadius, inStartIndex + 8 );;
1652 inOperator( MinTorsionalPatchRadius, inStartIndex + 9 );;
1653 inOperator( Flags, inStartIndex + 10 );;
1654 inOperator( IsExclusive, inStartIndex + 11 );;
1655 inOperator( Name, inStartIndex + 12 );;
1656 inOperator( ConcreteTypeName, inStartIndex + 13 );;
1657 inOperator( UserData, inStartIndex + 14 );;
1658 inOperator( Geom, inStartIndex + 15 );;
1659 return 16 + inStartIndex;
1662 template<>
struct PxClassInfoTraits<PxShape>
1668 class PxPruningStructure;
1671 const void * StaticMergeData;
1672 const void * DynamicMergeData;
1673 const char * ConcreteTypeName;
1682 static const char* getClassName() {
return "PxPruningStructure"; }
1683 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxPruningStructure_RigidActors, PxPruningStructure, PxRigidActor * > RigidActors;
1684 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxPruningStructure_StaticMergeData, PxPruningStructure, const void * > StaticMergeData;
1685 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxPruningStructure_DynamicMergeData, PxPruningStructure, const void * > DynamicMergeData;
1686 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxPruningStructure_ConcreteTypeName, PxPruningStructure, const char * > ConcreteTypeName;
1689 template<
typename TReturnType,
typename TOperator>
1690 TReturnType visitType( TOperator inOperator )
const
1692 return inOperator(
reinterpret_cast<PxPruningStructure*
>(NULL) );
1694 template<
typename TOperator>
1695 void visitBases( TOperator inOperator )
1697 PX_UNUSED(inOperator);
1699 template<
typename TOperator>
1700 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1702 PX_UNUSED(inOperator);
1703 PX_UNUSED(inStartIndex);
1704 return inStartIndex;
1706 static PxU32 instancePropertyCount() {
return 4; }
1707 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
1708 template<
typename TOperator>
1709 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1711 PX_UNUSED(inOperator);
1712 PX_UNUSED(inStartIndex);
1713 inOperator( RigidActors, inStartIndex + 0 );;
1714 inOperator( StaticMergeData, inStartIndex + 1 );;
1715 inOperator( DynamicMergeData, inStartIndex + 2 );;
1716 inOperator( ConcreteTypeName, inStartIndex + 3 );;
1717 return 4 + inStartIndex;
1720 template<>
struct PxClassInfoTraits<PxPruningStructure>
1726 class PxTolerancesScale;
1740 static const char* getClassName() {
return "PxTolerancesScale"; }
1741 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxTolerancesScale_IsValid, PxTolerancesScale, _Bool > IsValid;
1742 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxTolerancesScale_Length, PxTolerancesScale, PxReal, PxReal > Length;
1743 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxTolerancesScale_Speed, PxTolerancesScale, PxReal, PxReal > Speed;
1746 template<
typename TReturnType,
typename TOperator>
1747 TReturnType visitType( TOperator inOperator )
const
1749 return inOperator(
reinterpret_cast<PxTolerancesScale*
>(NULL) );
1751 template<
typename TOperator>
1752 void visitBases( TOperator inOperator )
1754 PX_UNUSED(inOperator);
1756 template<
typename TOperator>
1757 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1759 PX_UNUSED(inOperator);
1760 PX_UNUSED(inStartIndex);
1761 return inStartIndex;
1763 static PxU32 instancePropertyCount() {
return 3; }
1764 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
1765 template<
typename TOperator>
1766 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1768 PX_UNUSED(inOperator);
1769 PX_UNUSED(inStartIndex);
1770 inOperator( IsValid, inStartIndex + 0 );;
1771 inOperator( Length, inStartIndex + 1 );;
1772 inOperator( Speed, inStartIndex + 2 );;
1773 return 3 + inStartIndex;
1776 template<>
struct PxClassInfoTraits<PxTolerancesScale>
1790 static const char* getClassName() {
return "PxGeometry"; }
1793 template<
typename TReturnType,
typename TOperator>
1794 TReturnType visitType( TOperator inOperator )
const
1796 return inOperator(
reinterpret_cast<PxGeometry*
>(NULL) );
1798 template<
typename TOperator>
1799 void visitBases( TOperator inOperator )
1801 PX_UNUSED(inOperator);
1803 template<
typename TOperator>
1804 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1806 PX_UNUSED(inOperator);
1807 PX_UNUSED(inStartIndex);
1808 return inStartIndex;
1810 static PxU32 instancePropertyCount() {
return 0; }
1811 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
1812 template<
typename TOperator>
1813 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1815 PX_UNUSED(inOperator);
1816 PX_UNUSED(inStartIndex);
1817 return 0 + inStartIndex;
1820 template<>
struct PxClassInfoTraits<PxGeometry>
1826 class PxBoxGeometry;
1836 static const char* getClassName() {
return "PxBoxGeometry"; }
1837 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxBoxGeometry_HalfExtents, PxBoxGeometry, PxVec3, PxVec3 > HalfExtents;
1840 template<
typename TReturnType,
typename TOperator>
1841 TReturnType visitType( TOperator inOperator )
const
1843 return inOperator(
reinterpret_cast<PxBoxGeometry*
>(NULL) );
1845 template<
typename TOperator>
1846 void visitBases( TOperator inOperator )
1848 PX_UNUSED(inOperator);
1851 template<
typename TOperator>
1852 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1854 PX_UNUSED(inOperator);
1855 PX_UNUSED(inStartIndex);
1856 inStartIndex = PxGeometryGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
1857 inStartIndex = PxGeometryGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
1858 return inStartIndex;
1860 static PxU32 instancePropertyCount() {
return 1; }
1861 static PxU32 totalPropertyCount() {
return instancePropertyCount()
1862 + PxGeometryGeneratedInfo::totalPropertyCount(); }
1863 template<
typename TOperator>
1864 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1866 PX_UNUSED(inOperator);
1867 PX_UNUSED(inStartIndex);
1868 inOperator( HalfExtents, inStartIndex + 0 );;
1869 return 1 + inStartIndex;
1872 template<>
struct PxClassInfoTraits<PxBoxGeometry>
1878 class PxCapsuleGeometry;
1890 static const char* getClassName() {
return "PxCapsuleGeometry"; }
1891 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxCapsuleGeometry_Radius, PxCapsuleGeometry, PxReal, PxReal > Radius;
1892 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxCapsuleGeometry_HalfHeight, PxCapsuleGeometry, PxReal, PxReal > HalfHeight;
1895 template<
typename TReturnType,
typename TOperator>
1896 TReturnType visitType( TOperator inOperator )
const
1898 return inOperator(
reinterpret_cast<PxCapsuleGeometry*
>(NULL) );
1900 template<
typename TOperator>
1901 void visitBases( TOperator inOperator )
1903 PX_UNUSED(inOperator);
1906 template<
typename TOperator>
1907 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1909 PX_UNUSED(inOperator);
1910 PX_UNUSED(inStartIndex);
1911 inStartIndex = PxGeometryGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
1912 inStartIndex = PxGeometryGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
1913 return inStartIndex;
1915 static PxU32 instancePropertyCount() {
return 2; }
1916 static PxU32 totalPropertyCount() {
return instancePropertyCount()
1917 + PxGeometryGeneratedInfo::totalPropertyCount(); }
1918 template<
typename TOperator>
1919 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1921 PX_UNUSED(inOperator);
1922 PX_UNUSED(inStartIndex);
1923 inOperator( Radius, inStartIndex + 0 );;
1924 inOperator( HalfHeight, inStartIndex + 1 );;
1925 return 2 + inStartIndex;
1928 template<>
struct PxClassInfoTraits<PxCapsuleGeometry>
1946 static const char* getClassName() {
return "PxMeshScale"; }
1947 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxMeshScale_Scale, PxMeshScale, PxVec3, PxVec3 > Scale;
1948 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxMeshScale_Rotation, PxMeshScale, PxQuat, PxQuat > Rotation;
1951 template<
typename TReturnType,
typename TOperator>
1952 TReturnType visitType( TOperator inOperator )
const
1954 return inOperator(
reinterpret_cast<PxMeshScale*
>(NULL) );
1956 template<
typename TOperator>
1957 void visitBases( TOperator inOperator )
1959 PX_UNUSED(inOperator);
1961 template<
typename TOperator>
1962 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1964 PX_UNUSED(inOperator);
1965 PX_UNUSED(inStartIndex);
1966 return inStartIndex;
1968 static PxU32 instancePropertyCount() {
return 2; }
1969 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
1970 template<
typename TOperator>
1971 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
1973 PX_UNUSED(inOperator);
1974 PX_UNUSED(inStartIndex);
1975 inOperator( Scale, inStartIndex + 0 );;
1976 inOperator( Rotation, inStartIndex + 1 );;
1977 return 2 + inStartIndex;
1980 template<>
struct PxClassInfoTraits<PxMeshScale>
1986 static PxU32ToName g_physx__PxConvexMeshGeometryFlag__EnumConversion[] = {
1991template<>
struct PxEnumTraits<
physx::PxConvexMeshGeometryFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxConvexMeshGeometryFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
1992 class PxConvexMeshGeometry;
1996 PxConvexMesh * ConvexMesh;
1997 PxConvexMeshGeometryFlags MeshFlags;
2006 static const char* getClassName() {
return "PxConvexMeshGeometry"; }
2007 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxConvexMeshGeometry_Scale, PxConvexMeshGeometry, PxMeshScale, PxMeshScale > Scale;
2008 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxConvexMeshGeometry_ConvexMesh, PxConvexMeshGeometry, PxConvexMesh *, PxConvexMesh * > ConvexMesh;
2009 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxConvexMeshGeometry_MeshFlags, PxConvexMeshGeometry, PxConvexMeshGeometryFlags, PxConvexMeshGeometryFlags > MeshFlags;
2012 template<
typename TReturnType,
typename TOperator>
2013 TReturnType visitType( TOperator inOperator )
const
2015 return inOperator(
reinterpret_cast<PxConvexMeshGeometry*
>(NULL) );
2017 template<
typename TOperator>
2018 void visitBases( TOperator inOperator )
2020 PX_UNUSED(inOperator);
2023 template<
typename TOperator>
2024 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2026 PX_UNUSED(inOperator);
2027 PX_UNUSED(inStartIndex);
2028 inStartIndex = PxGeometryGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
2029 inStartIndex = PxGeometryGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
2030 return inStartIndex;
2032 static PxU32 instancePropertyCount() {
return 3; }
2033 static PxU32 totalPropertyCount() {
return instancePropertyCount()
2034 + PxGeometryGeneratedInfo::totalPropertyCount(); }
2035 template<
typename TOperator>
2036 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2038 PX_UNUSED(inOperator);
2039 PX_UNUSED(inStartIndex);
2040 inOperator( Scale, inStartIndex + 0 );;
2041 inOperator( ConvexMesh, inStartIndex + 1 );;
2042 inOperator( MeshFlags, inStartIndex + 2 );;
2043 return 3 + inStartIndex;
2046 template<>
struct PxClassInfoTraits<PxConvexMeshGeometry>
2052 class PxSphereGeometry;
2062 static const char* getClassName() {
return "PxSphereGeometry"; }
2063 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSphereGeometry_Radius, PxSphereGeometry, PxReal, PxReal > Radius;
2066 template<
typename TReturnType,
typename TOperator>
2067 TReturnType visitType( TOperator inOperator )
const
2069 return inOperator(
reinterpret_cast<PxSphereGeometry*
>(NULL) );
2071 template<
typename TOperator>
2072 void visitBases( TOperator inOperator )
2074 PX_UNUSED(inOperator);
2077 template<
typename TOperator>
2078 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2080 PX_UNUSED(inOperator);
2081 PX_UNUSED(inStartIndex);
2082 inStartIndex = PxGeometryGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
2083 inStartIndex = PxGeometryGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
2084 return inStartIndex;
2086 static PxU32 instancePropertyCount() {
return 1; }
2087 static PxU32 totalPropertyCount() {
return instancePropertyCount()
2088 + PxGeometryGeneratedInfo::totalPropertyCount(); }
2089 template<
typename TOperator>
2090 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2092 PX_UNUSED(inOperator);
2093 PX_UNUSED(inStartIndex);
2094 inOperator( Radius, inStartIndex + 0 );;
2095 return 1 + inStartIndex;
2098 template<>
struct PxClassInfoTraits<PxSphereGeometry>
2104 class PxPlaneGeometry;
2112 static const char* getClassName() {
return "PxPlaneGeometry"; }
2115 template<
typename TReturnType,
typename TOperator>
2116 TReturnType visitType( TOperator inOperator )
const
2118 return inOperator(
reinterpret_cast<PxPlaneGeometry*
>(NULL) );
2120 template<
typename TOperator>
2121 void visitBases( TOperator inOperator )
2123 PX_UNUSED(inOperator);
2126 template<
typename TOperator>
2127 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2129 PX_UNUSED(inOperator);
2130 PX_UNUSED(inStartIndex);
2131 inStartIndex = PxGeometryGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
2132 inStartIndex = PxGeometryGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
2133 return inStartIndex;
2135 static PxU32 instancePropertyCount() {
return 0; }
2136 static PxU32 totalPropertyCount() {
return instancePropertyCount()
2137 + PxGeometryGeneratedInfo::totalPropertyCount(); }
2138 template<
typename TOperator>
2139 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2141 PX_UNUSED(inOperator);
2142 PX_UNUSED(inStartIndex);
2143 return 0 + inStartIndex;
2146 template<>
struct PxClassInfoTraits<PxPlaneGeometry>
2152 static PxU32ToName g_physx__PxMeshGeometryFlag__EnumConversion[] = {
2158template<>
struct PxEnumTraits<
physx::PxMeshGeometryFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxMeshGeometryFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2159 class PxTriangleMeshGeometry;
2163 PxMeshGeometryFlags MeshFlags;
2164 PxTriangleMesh * TriangleMesh;
2173 static const char* getClassName() {
return "PxTriangleMeshGeometry"; }
2174 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxTriangleMeshGeometry_Scale, PxTriangleMeshGeometry, PxMeshScale, PxMeshScale > Scale;
2175 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxTriangleMeshGeometry_MeshFlags, PxTriangleMeshGeometry, PxMeshGeometryFlags, PxMeshGeometryFlags > MeshFlags;
2176 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxTriangleMeshGeometry_TriangleMesh, PxTriangleMeshGeometry, PxTriangleMesh *, PxTriangleMesh * > TriangleMesh;
2179 template<
typename TReturnType,
typename TOperator>
2180 TReturnType visitType( TOperator inOperator )
const
2182 return inOperator(
reinterpret_cast<PxTriangleMeshGeometry*
>(NULL) );
2184 template<
typename TOperator>
2185 void visitBases( TOperator inOperator )
2187 PX_UNUSED(inOperator);
2190 template<
typename TOperator>
2191 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2193 PX_UNUSED(inOperator);
2194 PX_UNUSED(inStartIndex);
2195 inStartIndex = PxGeometryGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
2196 inStartIndex = PxGeometryGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
2197 return inStartIndex;
2199 static PxU32 instancePropertyCount() {
return 3; }
2200 static PxU32 totalPropertyCount() {
return instancePropertyCount()
2201 + PxGeometryGeneratedInfo::totalPropertyCount(); }
2202 template<
typename TOperator>
2203 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2205 PX_UNUSED(inOperator);
2206 PX_UNUSED(inStartIndex);
2207 inOperator( Scale, inStartIndex + 0 );;
2208 inOperator( MeshFlags, inStartIndex + 1 );;
2209 inOperator( TriangleMesh, inStartIndex + 2 );;
2210 return 3 + inStartIndex;
2213 template<>
struct PxClassInfoTraits<PxTriangleMeshGeometry>
2219 class PxHeightFieldGeometry;
2222 PxHeightField * HeightField;
2226 PxMeshGeometryFlags HeightFieldFlags;
2237 static const char* getClassName() {
return "PxHeightFieldGeometry"; }
2238 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldGeometry_HeightField, PxHeightFieldGeometry, PxHeightField *, PxHeightField * > HeightField;
2239 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldGeometry_HeightScale, PxHeightFieldGeometry, PxReal, PxReal > HeightScale;
2240 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldGeometry_RowScale, PxHeightFieldGeometry, PxReal, PxReal > RowScale;
2241 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldGeometry_ColumnScale, PxHeightFieldGeometry, PxReal, PxReal > ColumnScale;
2242 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldGeometry_HeightFieldFlags, PxHeightFieldGeometry, PxMeshGeometryFlags, PxMeshGeometryFlags > HeightFieldFlags;
2245 template<
typename TReturnType,
typename TOperator>
2246 TReturnType visitType( TOperator inOperator )
const
2248 return inOperator(
reinterpret_cast<PxHeightFieldGeometry*
>(NULL) );
2250 template<
typename TOperator>
2251 void visitBases( TOperator inOperator )
2253 PX_UNUSED(inOperator);
2256 template<
typename TOperator>
2257 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2259 PX_UNUSED(inOperator);
2260 PX_UNUSED(inStartIndex);
2261 inStartIndex = PxGeometryGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
2262 inStartIndex = PxGeometryGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
2263 return inStartIndex;
2265 static PxU32 instancePropertyCount() {
return 5; }
2266 static PxU32 totalPropertyCount() {
return instancePropertyCount()
2267 + PxGeometryGeneratedInfo::totalPropertyCount(); }
2268 template<
typename TOperator>
2269 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2271 PX_UNUSED(inOperator);
2272 PX_UNUSED(inStartIndex);
2273 inOperator( HeightField, inStartIndex + 0 );;
2274 inOperator( HeightScale, inStartIndex + 1 );;
2275 inOperator( RowScale, inStartIndex + 2 );;
2276 inOperator( ColumnScale, inStartIndex + 3 );;
2277 inOperator( HeightFieldFlags, inStartIndex + 4 );;
2278 return 5 + inStartIndex;
2281 template<>
struct PxClassInfoTraits<PxHeightFieldGeometry>
2287 static PxU32ToName g_physx__PxSceneQueryUpdateMode__EnumConversion[] = {
2294template<>
struct PxEnumTraits<
physx::PxSceneQueryUpdateMode::Enum > { PxEnumTraits() : NameConversion( g_physx__PxSceneQueryUpdateMode__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2295 static PxU32ToName g_physx__PxHitFlag__EnumConversion[] = {
2307 {
"eDEFAULT",
static_cast<PxU32
>( physx::PxHitFlag::eDEFAULT ) },
2312template<>
struct PxEnumTraits<
physx::PxHitFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxHitFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2313 static PxU32ToName g_physx__PxGeometryQueryFlag__EnumConversion[] = {
2315 {
"eDEFAULT",
static_cast<PxU32
>( physx::PxGeometryQueryFlag::eDEFAULT ) },
2319template<>
struct PxEnumTraits<
physx::PxGeometryQueryFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxGeometryQueryFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2320 class PxSceneQuerySystemBase;
2323 PxU32 DynamicTreeRebuildRateHint;
2324 PxSceneQueryUpdateMode::Enum UpdateMode;
2325 PxU32 StaticTimestamp;
2334 static const char* getClassName() {
return "PxSceneQuerySystemBase"; }
2335 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQuerySystemBase_DynamicTreeRebuildRateHint, PxSceneQuerySystemBase, PxU32, PxU32 > DynamicTreeRebuildRateHint;
2336 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQuerySystemBase_UpdateMode, PxSceneQuerySystemBase, PxSceneQueryUpdateMode::Enum, PxSceneQueryUpdateMode::Enum > UpdateMode;
2337 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQuerySystemBase_StaticTimestamp, PxSceneQuerySystemBase, PxU32 > StaticTimestamp;
2340 template<
typename TReturnType,
typename TOperator>
2341 TReturnType visitType( TOperator inOperator )
const
2343 return inOperator(
reinterpret_cast<PxSceneQuerySystemBase*
>(NULL) );
2345 template<
typename TOperator>
2346 void visitBases( TOperator inOperator )
2348 PX_UNUSED(inOperator);
2350 template<
typename TOperator>
2351 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2353 PX_UNUSED(inOperator);
2354 PX_UNUSED(inStartIndex);
2355 return inStartIndex;
2357 static PxU32 instancePropertyCount() {
return 3; }
2358 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
2359 template<
typename TOperator>
2360 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2362 PX_UNUSED(inOperator);
2363 PX_UNUSED(inStartIndex);
2364 inOperator( DynamicTreeRebuildRateHint, inStartIndex + 0 );;
2365 inOperator( UpdateMode, inStartIndex + 1 );;
2366 inOperator( StaticTimestamp, inStartIndex + 2 );;
2367 return 3 + inStartIndex;
2370 template<>
struct PxClassInfoTraits<PxSceneQuerySystemBase>
2376 static PxU32ToName g_physx__PxPruningStructureType__EnumConversion[] = {
2380 {
"eLAST",
static_cast<PxU32
>( physx::PxPruningStructureType::eLAST ) },
2384template<>
struct PxEnumTraits<
physx::PxPruningStructureType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxPruningStructureType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2385 class PxSceneSQSystem;
2388 PxSceneQueryUpdateMode::Enum SceneQueryUpdateMode;
2389 PxU32 SceneQueryStaticTimestamp;
2390 PxPruningStructureType::Enum StaticStructure;
2391 PxPruningStructureType::Enum DynamicStructure;
2401 static const char* getClassName() {
return "PxSceneSQSystem"; }
2402 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneSQSystem_SceneQueryUpdateMode, PxSceneSQSystem, PxSceneQueryUpdateMode::Enum, PxSceneQueryUpdateMode::Enum > SceneQueryUpdateMode;
2403 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneSQSystem_SceneQueryStaticTimestamp, PxSceneSQSystem, PxU32 > SceneQueryStaticTimestamp;
2404 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneSQSystem_StaticStructure, PxSceneSQSystem, PxPruningStructureType::Enum > StaticStructure;
2405 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneSQSystem_DynamicStructure, PxSceneSQSystem, PxPruningStructureType::Enum > DynamicStructure;
2408 template<
typename TReturnType,
typename TOperator>
2409 TReturnType visitType( TOperator inOperator )
const
2411 return inOperator(
reinterpret_cast<PxSceneSQSystem*
>(NULL) );
2413 template<
typename TOperator>
2414 void visitBases( TOperator inOperator )
2416 PX_UNUSED(inOperator);
2419 template<
typename TOperator>
2420 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2422 PX_UNUSED(inOperator);
2423 PX_UNUSED(inStartIndex);
2424 inStartIndex = PxSceneQuerySystemBaseGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
2425 inStartIndex = PxSceneQuerySystemBaseGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
2426 return inStartIndex;
2428 static PxU32 instancePropertyCount() {
return 4; }
2429 static PxU32 totalPropertyCount() {
return instancePropertyCount()
2430 + PxSceneQuerySystemBaseGeneratedInfo::totalPropertyCount(); }
2431 template<
typename TOperator>
2432 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2434 PX_UNUSED(inOperator);
2435 PX_UNUSED(inStartIndex);
2436 inOperator( SceneQueryUpdateMode, inStartIndex + 0 );;
2437 inOperator( SceneQueryStaticTimestamp, inStartIndex + 1 );;
2438 inOperator( StaticStructure, inStartIndex + 2 );;
2439 inOperator( DynamicStructure, inStartIndex + 3 );;
2440 return 4 + inStartIndex;
2443 template<>
struct PxClassInfoTraits<PxSceneSQSystem>
2449 static PxU32ToName g_physx__PxSceneFlag__EnumConversion[] = {
2460 {
"eENABLE_GPU_DYNAMICS",
static_cast<PxU32
>( physx::PxSceneFlag::eENABLE_GPU_DYNAMICS ) },
2463 {
"eSUPPRESS_READBACK",
static_cast<PxU32
>( physx::PxSceneFlag::eSUPPRESS_READBACK ) },
2464 {
"eFORCE_READBACK",
static_cast<PxU32
>( physx::PxSceneFlag::eFORCE_READBACK ) },
2465 {
"eMUTABLE_FLAGS",
static_cast<PxU32
>( physx::PxSceneFlag::eMUTABLE_FLAGS ) },
2469template<>
struct PxEnumTraits<
physx::PxSceneFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxSceneFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2470 static PxU32ToName g_physx__PxActorTypeFlag__EnumConversion[] = {
2476template<>
struct PxEnumTraits<
physx::PxActorTypeFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxActorTypeFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2477 static PxU32ToName g_physx__PxParticleSolverType__EnumConversion[] = {
2485template<>
struct PxEnumTraits<
physx::PxParticleSolverType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxParticleSolverType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2486 static PxU32ToName g_physx__PxPairFilteringMode__EnumConversion[] = {
2494template<>
struct PxEnumTraits<
physx::PxPairFilteringMode::Enum > { PxEnumTraits() : NameConversion( g_physx__PxPairFilteringMode__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2495 static PxU32ToName g_physx__PxFrictionType__EnumConversion[] = {
2502template<>
struct PxEnumTraits<
physx::PxFrictionType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxFrictionType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2503 static PxU32ToName g_physx__PxSolverType__EnumConversion[] = {
2509template<>
struct PxEnumTraits<
physx::PxSolverType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxSolverType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2510 static PxU32ToName g_physx__PxVisualizationParameter__EnumConversion[] = {
2540template<>
struct PxEnumTraits<
physx::PxVisualizationParameter::Enum > { PxEnumTraits() : NameConversion( g_physx__PxVisualizationParameter__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2541 static PxU32ToName g_physx__PxBroadPhaseType__EnumConversion[] = {
2547 {
"eLAST",
static_cast<PxU32
>( physx::PxBroadPhaseType::eLAST ) },
2551template<>
struct PxEnumTraits<
physx::PxBroadPhaseType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxBroadPhaseType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2552 static PxU32ToName g_physx__PxArticulationGpuDataType__EnumConversion[] = {
2574template<>
struct PxEnumTraits<
physx::PxArticulationGpuDataType::Enum > { PxEnumTraits() : NameConversion( g_physx__PxArticulationGpuDataType__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2575 static PxU32ToName g_physx__PxSoftBodyDataFlag__EnumConversion[] = {
2589template<>
struct PxEnumTraits<
physx::PxSoftBodyDataFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxSoftBodyDataFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2590 static PxU32ToName g_physx__PxActorCacheFlag__EnumConversion[] = {
2591 {
"eACTOR_DATA",
static_cast<PxU32
>( physx::PxActorCacheFlag::eACTOR_DATA ) },
2592 {
"eFORCE",
static_cast<PxU32
>( physx::PxActorCacheFlag::eFORCE ) },
2593 {
"eTORQUE",
static_cast<PxU32
>( physx::PxActorCacheFlag::eTORQUE ) },
2597template<>
struct PxEnumTraits<
physx::PxActorCacheFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxActorCacheFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2602 PxSceneLimits Limits;
2604 PxCpuDispatcher * CpuDispatcher;
2605 PxCudaContextManager * CudaContextManager;
2606 PxSimulationEventCallback * SimulationEventCallback;
2608 PxCCDContactModifyCallback * CCDContactModifyCallback;
2609 PxBroadPhaseCallback * BroadPhaseCallback;
2610 PxU32 FilterShaderDataSize;
2611 PxSimulationFilterShader FilterShader;
2612 PxSimulationFilterCallback * FilterCallback;
2613 PxPairFilteringMode::Enum KinematicKinematicFilteringMode;
2614 PxPairFilteringMode::Enum StaticKinematicFilteringMode;
2616 PxReal BounceThresholdVelocity;
2618 PxReal CCDMaxSeparation;
2619 PxReal CCDThreshold;
2620 PxReal MaxBiasCoefficient;
2621 PxReal FrictionOffsetThreshold;
2622 PxReal FrictionCorrelationDistance;
2623 PxFrictionType::Enum FrictionType;
2624 PxSolverType::Enum SolverType;
2625 PxBounds3 VisualizationCullingBox;
2626 PxBroadPhaseType::Enum BroadPhaseType;
2627 PxTaskManager * TaskManager;
2628 PxU32 MaxNbContactDataBlocksUsed;
2629 PxU32 ContactReportStreamBufferSize;
2630 PxU32 SolverBatchSize;
2631 PxU32 SolverArticulationBatchSize;
2632 PxReal WakeCounterResetValue;
2633 PxgDynamicsMemoryConfig GpuDynamicsConfig;
2635 PxSimulationStatistics SimulationStatistics;
2676 static const char* getClassName() {
return "PxScene"; }
2677 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_Flags, PxScene, PxSceneFlags > Flags;
2678 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_Limits, PxScene, const PxSceneLimits &, PxSceneLimits > Limits;
2679 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_Timestamp, PxScene, PxU32 > Timestamp;
2680 PxReadOnlyFilteredCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_Actors, PxScene, PxActor *, PxActorTypeFlags > Actors;
2681 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_SoftBodies, PxScene, PxSoftBody * > SoftBodies;
2682 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_Articulations, PxScene, PxArticulationReducedCoordinate * > Articulations;
2683 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_Constraints, PxScene, PxConstraint * > Constraints;
2684 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_Aggregates, PxScene, PxAggregate * > Aggregates;
2685 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_CpuDispatcher, PxScene, PxCpuDispatcher * > CpuDispatcher;
2686 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_CudaContextManager, PxScene, PxCudaContextManager * > CudaContextManager;
2687 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_SimulationEventCallback, PxScene, PxSimulationEventCallback *, PxSimulationEventCallback * > SimulationEventCallback;
2688 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_ContactModifyCallback, PxScene, PxContactModifyCallback *, PxContactModifyCallback * >
ContactModifyCallback;
2689 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_CCDContactModifyCallback, PxScene, PxCCDContactModifyCallback *, PxCCDContactModifyCallback * > CCDContactModifyCallback;
2690 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_BroadPhaseCallback, PxScene, PxBroadPhaseCallback *, PxBroadPhaseCallback * > BroadPhaseCallback;
2691 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_FilterShaderDataSize, PxScene, PxU32 > FilterShaderDataSize;
2692 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_FilterShader, PxScene, PxSimulationFilterShader > FilterShader;
2693 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_FilterCallback, PxScene, PxSimulationFilterCallback * > FilterCallback;
2694 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_KinematicKinematicFilteringMode, PxScene, PxPairFilteringMode::Enum > KinematicKinematicFilteringMode;
2695 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_StaticKinematicFilteringMode, PxScene, PxPairFilteringMode::Enum > StaticKinematicFilteringMode;
2696 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_Gravity, PxScene, const PxVec3 &, PxVec3 > Gravity;
2697 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_BounceThresholdVelocity, PxScene, const PxReal, PxReal > BounceThresholdVelocity;
2698 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_CCDMaxPasses, PxScene, PxU32, PxU32 > CCDMaxPasses;
2699 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_CCDMaxSeparation, PxScene, const PxReal, PxReal > CCDMaxSeparation;
2700 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_CCDThreshold, PxScene, const PxReal, PxReal > CCDThreshold;
2701 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_MaxBiasCoefficient, PxScene, const PxReal, PxReal > MaxBiasCoefficient;
2702 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_FrictionOffsetThreshold, PxScene, const PxReal, PxReal > FrictionOffsetThreshold;
2703 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_FrictionCorrelationDistance, PxScene, const PxReal, PxReal > FrictionCorrelationDistance;
2704 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_FrictionType, PxScene, PxFrictionType::Enum > FrictionType;
2705 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_SolverType, PxScene, PxSolverType::Enum > SolverType;
2706 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_VisualizationCullingBox, PxScene, const PxBounds3 &, PxBounds3 > VisualizationCullingBox;
2707 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_BroadPhaseType, PxScene, PxBroadPhaseType::Enum > BroadPhaseType;
2708 PxReadOnlyCollectionPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_BroadPhaseRegions, PxScene, PxBroadPhaseRegionInfo > BroadPhaseRegions;
2709 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_TaskManager, PxScene, PxTaskManager * > TaskManager;
2710 PxWriteOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_NbContactDataBlocks, PxScene, PxU32 > NbContactDataBlocks;
2711 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_MaxNbContactDataBlocksUsed, PxScene, PxU32 > MaxNbContactDataBlocksUsed;
2712 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_ContactReportStreamBufferSize, PxScene, PxU32 > ContactReportStreamBufferSize;
2713 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_SolverBatchSize, PxScene, PxU32, PxU32 > SolverBatchSize;
2714 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_SolverArticulationBatchSize, PxScene, PxU32, PxU32 > SolverArticulationBatchSize;
2715 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_WakeCounterResetValue, PxScene, PxReal > WakeCounterResetValue;
2716 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_GpuDynamicsConfig, PxScene, PxgDynamicsMemoryConfig > GpuDynamicsConfig;
2717 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxScene_UserData, PxScene, void *, void * > UserData;
2718 SimulationStatisticsProperty SimulationStatistics;
2721 template<
typename TReturnType,
typename TOperator>
2722 TReturnType visitType( TOperator inOperator )
const
2724 return inOperator(
reinterpret_cast<PxScene*
>(NULL) );
2726 template<
typename TOperator>
2727 void visitBases( TOperator inOperator )
2729 PX_UNUSED(inOperator);
2732 template<
typename TOperator>
2733 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2735 PX_UNUSED(inOperator);
2736 PX_UNUSED(inStartIndex);
2737 inStartIndex = PxSceneSQSystemGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
2738 inStartIndex = PxSceneSQSystemGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
2739 return inStartIndex;
2741 static PxU32 instancePropertyCount() {
return 42; }
2742 static PxU32 totalPropertyCount() {
return instancePropertyCount()
2743 + PxSceneSQSystemGeneratedInfo::totalPropertyCount(); }
2744 template<
typename TOperator>
2745 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2747 PX_UNUSED(inOperator);
2748 PX_UNUSED(inStartIndex);
2749 inOperator( Flags, inStartIndex + 0 );;
2750 inOperator( Limits, inStartIndex + 1 );;
2751 inOperator( Timestamp, inStartIndex + 2 );;
2752 inOperator( Actors, inStartIndex + 3 );;
2753 inOperator( SoftBodies, inStartIndex + 4 );;
2754 inOperator( Articulations, inStartIndex + 5 );;
2755 inOperator( Constraints, inStartIndex + 6 );;
2756 inOperator( Aggregates, inStartIndex + 7 );;
2757 inOperator( CpuDispatcher, inStartIndex + 8 );;
2758 inOperator( CudaContextManager, inStartIndex + 9 );;
2759 inOperator( SimulationEventCallback, inStartIndex + 10 );;
2761 inOperator( CCDContactModifyCallback, inStartIndex + 12 );;
2762 inOperator( BroadPhaseCallback, inStartIndex + 13 );;
2763 inOperator( FilterShaderDataSize, inStartIndex + 14 );;
2764 inOperator( FilterShader, inStartIndex + 15 );;
2765 inOperator( FilterCallback, inStartIndex + 16 );;
2766 inOperator( KinematicKinematicFilteringMode, inStartIndex + 17 );;
2767 inOperator( StaticKinematicFilteringMode, inStartIndex + 18 );;
2768 inOperator( Gravity, inStartIndex + 19 );;
2769 inOperator( BounceThresholdVelocity, inStartIndex + 20 );;
2770 inOperator( CCDMaxPasses, inStartIndex + 21 );;
2771 inOperator( CCDMaxSeparation, inStartIndex + 22 );;
2772 inOperator( CCDThreshold, inStartIndex + 23 );;
2773 inOperator( MaxBiasCoefficient, inStartIndex + 24 );;
2774 inOperator( FrictionOffsetThreshold, inStartIndex + 25 );;
2775 inOperator( FrictionCorrelationDistance, inStartIndex + 26 );;
2776 inOperator( FrictionType, inStartIndex + 27 );;
2777 inOperator( SolverType, inStartIndex + 28 );;
2778 inOperator( VisualizationCullingBox, inStartIndex + 29 );;
2779 inOperator( BroadPhaseType, inStartIndex + 30 );;
2780 inOperator( BroadPhaseRegions, inStartIndex + 31 );;
2781 inOperator( TaskManager, inStartIndex + 32 );;
2782 inOperator( NbContactDataBlocks, inStartIndex + 33 );;
2783 inOperator( MaxNbContactDataBlocksUsed, inStartIndex + 34 );;
2784 inOperator( ContactReportStreamBufferSize, inStartIndex + 35 );;
2785 inOperator( SolverBatchSize, inStartIndex + 36 );;
2786 inOperator( SolverArticulationBatchSize, inStartIndex + 37 );;
2787 inOperator( WakeCounterResetValue, inStartIndex + 38 );;
2788 inOperator( GpuDynamicsConfig, inStartIndex + 39 );;
2789 inOperator( UserData, inStartIndex + 40 );;
2790 inOperator( SimulationStatistics, inStartIndex + 41 );;
2791 return 42 + inStartIndex;
2794 template<>
struct PxClassInfoTraits<PxScene>
2800 class PxTetrahedronMeshGeometry;
2803 PxTetrahedronMesh * TetrahedronMesh;
2810 static const char* getClassName() {
return "PxTetrahedronMeshGeometry"; }
2811 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxTetrahedronMeshGeometry_TetrahedronMesh, PxTetrahedronMeshGeometry, PxTetrahedronMesh *, PxTetrahedronMesh * > TetrahedronMesh;
2814 template<
typename TReturnType,
typename TOperator>
2815 TReturnType visitType( TOperator inOperator )
const
2817 return inOperator(
reinterpret_cast<PxTetrahedronMeshGeometry*
>(NULL) );
2819 template<
typename TOperator>
2820 void visitBases( TOperator inOperator )
2822 PX_UNUSED(inOperator);
2825 template<
typename TOperator>
2826 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2828 PX_UNUSED(inOperator);
2829 PX_UNUSED(inStartIndex);
2830 inStartIndex = PxGeometryGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
2831 inStartIndex = PxGeometryGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
2832 return inStartIndex;
2834 static PxU32 instancePropertyCount() {
return 1; }
2835 static PxU32 totalPropertyCount() {
return instancePropertyCount()
2836 + PxGeometryGeneratedInfo::totalPropertyCount(); }
2837 template<
typename TOperator>
2838 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2840 PX_UNUSED(inOperator);
2841 PX_UNUSED(inStartIndex);
2842 inOperator( TetrahedronMesh, inStartIndex + 0 );;
2843 return 1 + inStartIndex;
2846 template<>
struct PxClassInfoTraits<PxTetrahedronMeshGeometry>
2852 class PxCustomGeometry;
2862 static const char* getClassName() {
return "PxCustomGeometry"; }
2863 PxCustomGeometryCustomTypeProperty CustomType;
2866 template<
typename TReturnType,
typename TOperator>
2867 TReturnType visitType( TOperator inOperator )
const
2869 return inOperator(
reinterpret_cast<PxCustomGeometry*
>(NULL) );
2871 template<
typename TOperator>
2872 void visitBases( TOperator inOperator )
2874 PX_UNUSED(inOperator);
2877 template<
typename TOperator>
2878 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2880 PX_UNUSED(inOperator);
2881 PX_UNUSED(inStartIndex);
2882 inStartIndex = PxGeometryGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
2883 inStartIndex = PxGeometryGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
2884 return inStartIndex;
2886 static PxU32 instancePropertyCount() {
return 1; }
2887 static PxU32 totalPropertyCount() {
return instancePropertyCount()
2888 + PxGeometryGeneratedInfo::totalPropertyCount(); }
2889 template<
typename TOperator>
2890 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2892 PX_UNUSED(inOperator);
2893 PX_UNUSED(inStartIndex);
2894 inOperator( CustomType, inStartIndex + 0 );;
2895 return 1 + inStartIndex;
2898 template<>
struct PxClassInfoTraits<PxCustomGeometry>
2904 static PxU32ToName g_physx__PxHeightFieldFormat__EnumConversion[] = {
2909template<>
struct PxEnumTraits<
physx::PxHeightFieldFormat::Enum > { PxEnumTraits() : NameConversion( g_physx__PxHeightFieldFormat__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2910 static PxU32ToName g_physx__PxHeightFieldFlag__EnumConversion[] = {
2915template<>
struct PxEnumTraits<
physx::PxHeightFieldFlag::Enum > { PxEnumTraits() : NameConversion( g_physx__PxHeightFieldFlag__EnumConversion ) {}
const PxU32ToName* NameConversion; };
2916 class PxHeightFieldDesc;
2921 PxHeightFieldFormat::Enum Format;
2922 PxStridedData Samples;
2923 PxReal ConvexEdgeThreshold;
2924 PxHeightFieldFlags Flags;
2936 static const char* getClassName() {
return "PxHeightFieldDesc"; }
2937 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldDesc_NbRows, PxHeightFieldDesc, PxU32, PxU32 > NbRows;
2938 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldDesc_NbColumns, PxHeightFieldDesc, PxU32, PxU32 > NbColumns;
2939 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldDesc_Format, PxHeightFieldDesc, PxHeightFieldFormat::Enum, PxHeightFieldFormat::Enum > Format;
2940 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldDesc_Samples, PxHeightFieldDesc, PxStridedData, PxStridedData > Samples;
2941 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldDesc_ConvexEdgeThreshold, PxHeightFieldDesc, PxReal, PxReal > ConvexEdgeThreshold;
2942 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxHeightFieldDesc_Flags, PxHeightFieldDesc, PxHeightFieldFlags, PxHeightFieldFlags > Flags;
2945 template<
typename TReturnType,
typename TOperator>
2946 TReturnType visitType( TOperator inOperator )
const
2948 return inOperator(
reinterpret_cast<PxHeightFieldDesc*
>(NULL) );
2950 template<
typename TOperator>
2951 void visitBases( TOperator inOperator )
2953 PX_UNUSED(inOperator);
2955 template<
typename TOperator>
2956 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2958 PX_UNUSED(inOperator);
2959 PX_UNUSED(inStartIndex);
2960 return inStartIndex;
2962 static PxU32 instancePropertyCount() {
return 6; }
2963 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
2964 template<
typename TOperator>
2965 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
2967 PX_UNUSED(inOperator);
2968 PX_UNUSED(inStartIndex);
2969 inOperator( NbRows, inStartIndex + 0 );;
2970 inOperator( NbColumns, inStartIndex + 1 );;
2971 inOperator( Format, inStartIndex + 2 );;
2972 inOperator( Samples, inStartIndex + 3 );;
2973 inOperator( ConvexEdgeThreshold, inStartIndex + 4 );;
2974 inOperator( Flags, inStartIndex + 5 );;
2975 return 6 + inStartIndex;
2978 template<>
struct PxClassInfoTraits<PxHeightFieldDesc>
2984 struct PxArticulationLimit;
2996 static const char* getClassName() {
return "PxArticulationLimit"; }
2997 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationLimit_Low, PxArticulationLimit, PxReal, PxReal > Low;
2998 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationLimit_High, PxArticulationLimit, PxReal, PxReal > High;
3001 template<
typename TReturnType,
typename TOperator>
3002 TReturnType visitType( TOperator inOperator )
const
3004 return inOperator(
reinterpret_cast<PxArticulationLimit*
>(NULL) );
3006 template<
typename TOperator>
3007 void visitBases( TOperator inOperator )
3009 PX_UNUSED(inOperator);
3011 template<
typename TOperator>
3012 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3014 PX_UNUSED(inOperator);
3015 PX_UNUSED(inStartIndex);
3016 return inStartIndex;
3018 static PxU32 instancePropertyCount() {
return 2; }
3019 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
3020 template<
typename TOperator>
3021 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3023 PX_UNUSED(inOperator);
3024 PX_UNUSED(inStartIndex);
3025 inOperator( Low, inStartIndex + 0 );;
3026 inOperator( High, inStartIndex + 1 );;
3027 return 2 + inStartIndex;
3030 template<>
struct PxClassInfoTraits<PxArticulationLimit>
3036 struct PxArticulationDrive;
3042 PxArticulationDriveType::Enum DriveType;
3052 static const char* getClassName() {
return "PxArticulationDrive"; }
3053 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationDrive_Stiffness, PxArticulationDrive, PxReal, PxReal > Stiffness;
3054 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationDrive_Damping, PxArticulationDrive, PxReal, PxReal > Damping;
3055 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationDrive_MaxForce, PxArticulationDrive, PxReal, PxReal > MaxForce;
3056 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxArticulationDrive_DriveType, PxArticulationDrive, PxArticulationDriveType::Enum, PxArticulationDriveType::Enum > DriveType;
3059 template<
typename TReturnType,
typename TOperator>
3060 TReturnType visitType( TOperator inOperator )
const
3062 return inOperator(
reinterpret_cast<PxArticulationDrive*
>(NULL) );
3064 template<
typename TOperator>
3065 void visitBases( TOperator inOperator )
3067 PX_UNUSED(inOperator);
3069 template<
typename TOperator>
3070 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3072 PX_UNUSED(inOperator);
3073 PX_UNUSED(inStartIndex);
3074 return inStartIndex;
3076 static PxU32 instancePropertyCount() {
return 4; }
3077 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
3078 template<
typename TOperator>
3079 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3081 PX_UNUSED(inOperator);
3082 PX_UNUSED(inStartIndex);
3083 inOperator( Stiffness, inStartIndex + 0 );;
3084 inOperator( Damping, inStartIndex + 1 );;
3085 inOperator( MaxForce, inStartIndex + 2 );;
3086 inOperator( DriveType, inStartIndex + 3 );;
3087 return 4 + inStartIndex;
3090 template<>
struct PxClassInfoTraits<PxArticulationDrive>
3096 static PxU32ToName g_physx__PxDynamicTreeSecondaryPruner__EnumConversion[] = {
3101 {
"eLAST",
static_cast<PxU32
>( physx::PxDynamicTreeSecondaryPruner::eLAST ) },
3105template<>
struct PxEnumTraits<
physx::PxDynamicTreeSecondaryPruner::Enum > { PxEnumTraits() : NameConversion( g_physx__PxDynamicTreeSecondaryPruner__EnumConversion ) {}
const PxU32ToName* NameConversion; };
3106 static PxU32ToName g_physx__PxBVHBuildStrategy__EnumConversion[] = {
3110 {
"eLAST",
static_cast<PxU32
>( physx::PxBVHBuildStrategy::eLAST ) },
3114template<>
struct PxEnumTraits<
physx::PxBVHBuildStrategy::Enum > { PxEnumTraits() : NameConversion( g_physx__PxBVHBuildStrategy__EnumConversion ) {}
const PxU32ToName* NameConversion; };
3115 class PxSceneQueryDesc;
3119 PxPruningStructureType::Enum StaticStructure;
3120 PxPruningStructureType::Enum DynamicStructure;
3121 PxU32 DynamicTreeRebuildRateHint;
3122 PxDynamicTreeSecondaryPruner::Enum DynamicTreeSecondaryPruner;
3123 PxBVHBuildStrategy::Enum StaticBVHBuildStrategy;
3124 PxBVHBuildStrategy::Enum DynamicBVHBuildStrategy;
3125 PxU32 StaticNbObjectsPerNode;
3126 PxU32 DynamicNbObjectsPerNode;
3127 PxSceneQueryUpdateMode::Enum SceneQueryUpdateMode;
3143 static const char* getClassName() {
return "PxSceneQueryDesc"; }
3144 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQueryDesc_IsValid, PxSceneQueryDesc, _Bool > IsValid;
3145 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQueryDesc_StaticStructure, PxSceneQueryDesc, PxPruningStructureType::Enum, PxPruningStructureType::Enum > StaticStructure;
3146 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQueryDesc_DynamicStructure, PxSceneQueryDesc, PxPruningStructureType::Enum, PxPruningStructureType::Enum > DynamicStructure;
3147 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQueryDesc_DynamicTreeRebuildRateHint, PxSceneQueryDesc, PxU32, PxU32 > DynamicTreeRebuildRateHint;
3148 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQueryDesc_DynamicTreeSecondaryPruner, PxSceneQueryDesc, PxDynamicTreeSecondaryPruner::Enum, PxDynamicTreeSecondaryPruner::Enum > DynamicTreeSecondaryPruner;
3149 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQueryDesc_StaticBVHBuildStrategy, PxSceneQueryDesc, PxBVHBuildStrategy::Enum, PxBVHBuildStrategy::Enum > StaticBVHBuildStrategy;
3150 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQueryDesc_DynamicBVHBuildStrategy, PxSceneQueryDesc, PxBVHBuildStrategy::Enum, PxBVHBuildStrategy::Enum > DynamicBVHBuildStrategy;
3151 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQueryDesc_StaticNbObjectsPerNode, PxSceneQueryDesc, PxU32, PxU32 > StaticNbObjectsPerNode;
3152 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQueryDesc_DynamicNbObjectsPerNode, PxSceneQueryDesc, PxU32, PxU32 > DynamicNbObjectsPerNode;
3153 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneQueryDesc_SceneQueryUpdateMode, PxSceneQueryDesc, PxSceneQueryUpdateMode::Enum, PxSceneQueryUpdateMode::Enum > SceneQueryUpdateMode;
3156 template<
typename TReturnType,
typename TOperator>
3157 TReturnType visitType( TOperator inOperator )
const
3159 return inOperator(
reinterpret_cast<PxSceneQueryDesc*
>(NULL) );
3161 template<
typename TOperator>
3162 void visitBases( TOperator inOperator )
3164 PX_UNUSED(inOperator);
3166 template<
typename TOperator>
3167 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3169 PX_UNUSED(inOperator);
3170 PX_UNUSED(inStartIndex);
3171 return inStartIndex;
3173 static PxU32 instancePropertyCount() {
return 10; }
3174 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
3175 template<
typename TOperator>
3176 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3178 PX_UNUSED(inOperator);
3179 PX_UNUSED(inStartIndex);
3180 inOperator( IsValid, inStartIndex + 0 );;
3181 inOperator( StaticStructure, inStartIndex + 1 );;
3182 inOperator( DynamicStructure, inStartIndex + 2 );;
3183 inOperator( DynamicTreeRebuildRateHint, inStartIndex + 3 );;
3184 inOperator( DynamicTreeSecondaryPruner, inStartIndex + 4 );;
3185 inOperator( StaticBVHBuildStrategy, inStartIndex + 5 );;
3186 inOperator( DynamicBVHBuildStrategy, inStartIndex + 6 );;
3187 inOperator( StaticNbObjectsPerNode, inStartIndex + 7 );;
3188 inOperator( DynamicNbObjectsPerNode, inStartIndex + 8 );;
3189 inOperator( SceneQueryUpdateMode, inStartIndex + 9 );;
3190 return 10 + inStartIndex;
3193 template<>
struct PxClassInfoTraits<PxSceneQueryDesc>
3203 PxSimulationEventCallback * SimulationEventCallback;
3205 PxCCDContactModifyCallback * CcdContactModifyCallback;
3206 const void * FilterShaderData;
3207 PxU32 FilterShaderDataSize;
3208 PxSimulationFilterShader FilterShader;
3209 PxSimulationFilterCallback * FilterCallback;
3210 PxPairFilteringMode::Enum KineKineFilteringMode;
3211 PxPairFilteringMode::Enum StaticKineFilteringMode;
3212 PxBroadPhaseType::Enum BroadPhaseType;
3213 PxBroadPhaseCallback * BroadPhaseCallback;
3214 PxSceneLimits Limits;
3215 PxFrictionType::Enum FrictionType;
3216 PxSolverType::Enum SolverType;
3217 PxReal BounceThresholdVelocity;
3218 PxReal FrictionOffsetThreshold;
3219 PxReal FrictionCorrelationDistance;
3221 PxCpuDispatcher * CpuDispatcher;
3222 PxCudaContextManager * CudaContextManager;
3224 PxU32 SolverBatchSize;
3225 PxU32 SolverArticulationBatchSize;
3226 PxU32 NbContactDataBlocks;
3227 PxU32 MaxNbContactDataBlocks;
3228 PxReal MaxBiasCoefficient;
3229 PxU32 ContactReportStreamBufferSize;
3231 PxReal CcdThreshold;
3232 PxReal CcdMaxSeparation;
3233 PxReal WakeCounterResetValue;
3234 PxBounds3 SanityBounds;
3235 PxgDynamicsMemoryConfig GpuDynamicsConfig;
3236 PxU32 GpuMaxNumPartitions;
3237 PxU32 GpuMaxNumStaticPartitions;
3238 PxU32 GpuComputeVersion;
3239 PxU32 ContactPairSlabSize;
3283 static const char* getClassName() {
return "PxSceneDesc"; }
3284 PxWriteOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_ToDefault, PxSceneDesc, const PxTolerancesScale & > ToDefault;
3285 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_Gravity, PxSceneDesc, PxVec3, PxVec3 > Gravity;
3286 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_SimulationEventCallback, PxSceneDesc, PxSimulationEventCallback *, PxSimulationEventCallback * > SimulationEventCallback;
3287 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_ContactModifyCallback, PxSceneDesc, PxContactModifyCallback *, PxContactModifyCallback * >
ContactModifyCallback;
3288 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_CcdContactModifyCallback, PxSceneDesc, PxCCDContactModifyCallback *, PxCCDContactModifyCallback * > CcdContactModifyCallback;
3289 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_FilterShaderData, PxSceneDesc, const void *, const void * > FilterShaderData;
3290 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_FilterShaderDataSize, PxSceneDesc, PxU32, PxU32 > FilterShaderDataSize;
3291 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_FilterShader, PxSceneDesc, PxSimulationFilterShader, PxSimulationFilterShader > FilterShader;
3292 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_FilterCallback, PxSceneDesc, PxSimulationFilterCallback *, PxSimulationFilterCallback * > FilterCallback;
3293 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_KineKineFilteringMode, PxSceneDesc, PxPairFilteringMode::Enum, PxPairFilteringMode::Enum > KineKineFilteringMode;
3294 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_StaticKineFilteringMode, PxSceneDesc, PxPairFilteringMode::Enum, PxPairFilteringMode::Enum > StaticKineFilteringMode;
3295 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_BroadPhaseType, PxSceneDesc, PxBroadPhaseType::Enum, PxBroadPhaseType::Enum > BroadPhaseType;
3296 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_BroadPhaseCallback, PxSceneDesc, PxBroadPhaseCallback *, PxBroadPhaseCallback * > BroadPhaseCallback;
3297 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_Limits, PxSceneDesc, PxSceneLimits, PxSceneLimits > Limits;
3298 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_FrictionType, PxSceneDesc, PxFrictionType::Enum, PxFrictionType::Enum > FrictionType;
3299 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_SolverType, PxSceneDesc, PxSolverType::Enum, PxSolverType::Enum > SolverType;
3300 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_BounceThresholdVelocity, PxSceneDesc, PxReal, PxReal > BounceThresholdVelocity;
3301 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_FrictionOffsetThreshold, PxSceneDesc, PxReal, PxReal > FrictionOffsetThreshold;
3302 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_FrictionCorrelationDistance, PxSceneDesc, PxReal, PxReal > FrictionCorrelationDistance;
3303 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_Flags, PxSceneDesc, PxSceneFlags, PxSceneFlags > Flags;
3304 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_CpuDispatcher, PxSceneDesc, PxCpuDispatcher *, PxCpuDispatcher * > CpuDispatcher;
3305 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_CudaContextManager, PxSceneDesc, PxCudaContextManager *, PxCudaContextManager * > CudaContextManager;
3306 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_UserData, PxSceneDesc, void *, void * > UserData;
3307 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_SolverBatchSize, PxSceneDesc, PxU32, PxU32 > SolverBatchSize;
3308 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_SolverArticulationBatchSize, PxSceneDesc, PxU32, PxU32 > SolverArticulationBatchSize;
3309 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_NbContactDataBlocks, PxSceneDesc, PxU32, PxU32 > NbContactDataBlocks;
3310 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_MaxNbContactDataBlocks, PxSceneDesc, PxU32, PxU32 > MaxNbContactDataBlocks;
3311 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_MaxBiasCoefficient, PxSceneDesc, PxReal, PxReal > MaxBiasCoefficient;
3312 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_ContactReportStreamBufferSize, PxSceneDesc, PxU32, PxU32 > ContactReportStreamBufferSize;
3313 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_CcdMaxPasses, PxSceneDesc, PxU32, PxU32 > CcdMaxPasses;
3314 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_CcdThreshold, PxSceneDesc, PxReal, PxReal > CcdThreshold;
3315 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_CcdMaxSeparation, PxSceneDesc, PxReal, PxReal > CcdMaxSeparation;
3316 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_WakeCounterResetValue, PxSceneDesc, PxReal, PxReal > WakeCounterResetValue;
3317 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_SanityBounds, PxSceneDesc, PxBounds3, PxBounds3 > SanityBounds;
3318 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_GpuDynamicsConfig, PxSceneDesc, PxgDynamicsMemoryConfig, PxgDynamicsMemoryConfig > GpuDynamicsConfig;
3319 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_GpuMaxNumPartitions, PxSceneDesc, PxU32, PxU32 > GpuMaxNumPartitions;
3320 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_GpuMaxNumStaticPartitions, PxSceneDesc, PxU32, PxU32 > GpuMaxNumStaticPartitions;
3321 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_GpuComputeVersion, PxSceneDesc, PxU32, PxU32 > GpuComputeVersion;
3322 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneDesc_ContactPairSlabSize, PxSceneDesc, PxU32, PxU32 > ContactPairSlabSize;
3325 template<
typename TReturnType,
typename TOperator>
3326 TReturnType visitType( TOperator inOperator )
const
3328 return inOperator(
reinterpret_cast<PxSceneDesc*
>(NULL) );
3330 template<
typename TOperator>
3331 void visitBases( TOperator inOperator )
3333 PX_UNUSED(inOperator);
3336 template<
typename TOperator>
3337 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3339 PX_UNUSED(inOperator);
3340 PX_UNUSED(inStartIndex);
3341 inStartIndex = PxSceneQueryDescGeneratedInfo::visitBaseProperties( inOperator, inStartIndex );
3342 inStartIndex = PxSceneQueryDescGeneratedInfo::visitInstanceProperties( inOperator, inStartIndex );
3343 return inStartIndex;
3345 static PxU32 instancePropertyCount() {
return 39; }
3346 static PxU32 totalPropertyCount() {
return instancePropertyCount()
3347 + PxSceneQueryDescGeneratedInfo::totalPropertyCount(); }
3348 template<
typename TOperator>
3349 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3351 PX_UNUSED(inOperator);
3352 PX_UNUSED(inStartIndex);
3353 inOperator( ToDefault, inStartIndex + 0 );;
3354 inOperator( Gravity, inStartIndex + 1 );;
3355 inOperator( SimulationEventCallback, inStartIndex + 2 );;
3357 inOperator( CcdContactModifyCallback, inStartIndex + 4 );;
3358 inOperator( FilterShaderData, inStartIndex + 5 );;
3359 inOperator( FilterShaderDataSize, inStartIndex + 6 );;
3360 inOperator( FilterShader, inStartIndex + 7 );;
3361 inOperator( FilterCallback, inStartIndex + 8 );;
3362 inOperator( KineKineFilteringMode, inStartIndex + 9 );;
3363 inOperator( StaticKineFilteringMode, inStartIndex + 10 );;
3364 inOperator( BroadPhaseType, inStartIndex + 11 );;
3365 inOperator( BroadPhaseCallback, inStartIndex + 12 );;
3366 inOperator( Limits, inStartIndex + 13 );;
3367 inOperator( FrictionType, inStartIndex + 14 );;
3368 inOperator( SolverType, inStartIndex + 15 );;
3369 inOperator( BounceThresholdVelocity, inStartIndex + 16 );;
3370 inOperator( FrictionOffsetThreshold, inStartIndex + 17 );;
3371 inOperator( FrictionCorrelationDistance, inStartIndex + 18 );;
3372 inOperator( Flags, inStartIndex + 19 );;
3373 inOperator( CpuDispatcher, inStartIndex + 20 );;
3374 inOperator( CudaContextManager, inStartIndex + 21 );;
3375 inOperator( UserData, inStartIndex + 22 );;
3376 inOperator( SolverBatchSize, inStartIndex + 23 );;
3377 inOperator( SolverArticulationBatchSize, inStartIndex + 24 );;
3378 inOperator( NbContactDataBlocks, inStartIndex + 25 );;
3379 inOperator( MaxNbContactDataBlocks, inStartIndex + 26 );;
3380 inOperator( MaxBiasCoefficient, inStartIndex + 27 );;
3381 inOperator( ContactReportStreamBufferSize, inStartIndex + 28 );;
3382 inOperator( CcdMaxPasses, inStartIndex + 29 );;
3383 inOperator( CcdThreshold, inStartIndex + 30 );;
3384 inOperator( CcdMaxSeparation, inStartIndex + 31 );;
3385 inOperator( WakeCounterResetValue, inStartIndex + 32 );;
3386 inOperator( SanityBounds, inStartIndex + 33 );;
3387 inOperator( GpuDynamicsConfig, inStartIndex + 34 );;
3388 inOperator( GpuMaxNumPartitions, inStartIndex + 35 );;
3389 inOperator( GpuMaxNumStaticPartitions, inStartIndex + 36 );;
3390 inOperator( GpuComputeVersion, inStartIndex + 37 );;
3391 inOperator( ContactPairSlabSize, inStartIndex + 38 );;
3392 return 39 + inStartIndex;
3395 template<>
struct PxClassInfoTraits<PxSceneDesc>
3401 class PxBroadPhaseDesc;
3405 PxBroadPhaseType::Enum MType;
3407 PxCudaContextManager * MContextManager;
3408 PxU32 MFoundLostPairsCapacity;
3409 _Bool MDiscardStaticVsKinematic;
3410 _Bool MDiscardKinematicVsKinematic;
3423 static const char* getClassName() {
return "PxBroadPhaseDesc"; }
3424 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxBroadPhaseDesc_IsValid, PxBroadPhaseDesc, _Bool > IsValid;
3425 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxBroadPhaseDesc_MType, PxBroadPhaseDesc, PxBroadPhaseType::Enum, PxBroadPhaseType::Enum > MType;
3426 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxBroadPhaseDesc_MContextID, PxBroadPhaseDesc, PxU64, PxU64 > MContextID;
3427 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxBroadPhaseDesc_MContextManager, PxBroadPhaseDesc, PxCudaContextManager *, PxCudaContextManager * > MContextManager;
3428 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxBroadPhaseDesc_MFoundLostPairsCapacity, PxBroadPhaseDesc, PxU32, PxU32 > MFoundLostPairsCapacity;
3429 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxBroadPhaseDesc_MDiscardStaticVsKinematic, PxBroadPhaseDesc, _Bool, _Bool > MDiscardStaticVsKinematic;
3430 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxBroadPhaseDesc_MDiscardKinematicVsKinematic, PxBroadPhaseDesc, _Bool, _Bool > MDiscardKinematicVsKinematic;
3433 template<
typename TReturnType,
typename TOperator>
3434 TReturnType visitType( TOperator inOperator )
const
3436 return inOperator(
reinterpret_cast<PxBroadPhaseDesc*
>(NULL) );
3438 template<
typename TOperator>
3439 void visitBases( TOperator inOperator )
3441 PX_UNUSED(inOperator);
3443 template<
typename TOperator>
3444 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3446 PX_UNUSED(inOperator);
3447 PX_UNUSED(inStartIndex);
3448 return inStartIndex;
3450 static PxU32 instancePropertyCount() {
return 7; }
3451 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
3452 template<
typename TOperator>
3453 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3455 PX_UNUSED(inOperator);
3456 PX_UNUSED(inStartIndex);
3457 inOperator( IsValid, inStartIndex + 0 );;
3458 inOperator( MType, inStartIndex + 1 );;
3459 inOperator( MContextID, inStartIndex + 2 );;
3460 inOperator( MContextManager, inStartIndex + 3 );;
3461 inOperator( MFoundLostPairsCapacity, inStartIndex + 4 );;
3462 inOperator( MDiscardStaticVsKinematic, inStartIndex + 5 );;
3463 inOperator( MDiscardKinematicVsKinematic, inStartIndex + 6 );;
3464 return 7 + inStartIndex;
3467 template<>
struct PxClassInfoTraits<PxBroadPhaseDesc>
3473 class PxSceneLimits;
3478 PxU32 MaxNbStaticShapes;
3479 PxU32 MaxNbDynamicShapes;
3480 PxU32 MaxNbAggregates;
3481 PxU32 MaxNbConstraints;
3483 PxU32 MaxNbBroadPhaseOverlaps;
3497 static const char* getClassName() {
return "PxSceneLimits"; }
3498 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneLimits_MaxNbActors, PxSceneLimits, PxU32, PxU32 > MaxNbActors;
3499 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneLimits_MaxNbBodies, PxSceneLimits, PxU32, PxU32 > MaxNbBodies;
3500 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneLimits_MaxNbStaticShapes, PxSceneLimits, PxU32, PxU32 > MaxNbStaticShapes;
3501 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneLimits_MaxNbDynamicShapes, PxSceneLimits, PxU32, PxU32 > MaxNbDynamicShapes;
3502 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneLimits_MaxNbAggregates, PxSceneLimits, PxU32, PxU32 > MaxNbAggregates;
3503 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneLimits_MaxNbConstraints, PxSceneLimits, PxU32, PxU32 > MaxNbConstraints;
3504 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneLimits_MaxNbRegions, PxSceneLimits, PxU32, PxU32 > MaxNbRegions;
3505 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSceneLimits_MaxNbBroadPhaseOverlaps, PxSceneLimits, PxU32, PxU32 > MaxNbBroadPhaseOverlaps;
3508 template<
typename TReturnType,
typename TOperator>
3509 TReturnType visitType( TOperator inOperator )
const
3511 return inOperator(
reinterpret_cast<PxSceneLimits*
>(NULL) );
3513 template<
typename TOperator>
3514 void visitBases( TOperator inOperator )
3516 PX_UNUSED(inOperator);
3518 template<
typename TOperator>
3519 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3521 PX_UNUSED(inOperator);
3522 PX_UNUSED(inStartIndex);
3523 return inStartIndex;
3525 static PxU32 instancePropertyCount() {
return 8; }
3526 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
3527 template<
typename TOperator>
3528 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3530 PX_UNUSED(inOperator);
3531 PX_UNUSED(inStartIndex);
3532 inOperator( MaxNbActors, inStartIndex + 0 );;
3533 inOperator( MaxNbBodies, inStartIndex + 1 );;
3534 inOperator( MaxNbStaticShapes, inStartIndex + 2 );;
3535 inOperator( MaxNbDynamicShapes, inStartIndex + 3 );;
3536 inOperator( MaxNbAggregates, inStartIndex + 4 );;
3537 inOperator( MaxNbConstraints, inStartIndex + 5 );;
3538 inOperator( MaxNbRegions, inStartIndex + 6 );;
3539 inOperator( MaxNbBroadPhaseOverlaps, inStartIndex + 7 );;
3540 return 8 + inStartIndex;
3543 template<>
struct PxClassInfoTraits<PxSceneLimits>
3549 struct PxgDynamicsMemoryConfig;
3553 PxU32 TempBufferCapacity;
3554 PxU32 MaxRigidContactCount;
3555 PxU32 MaxRigidPatchCount;
3557 PxU32 FoundLostPairsCapacity;
3558 PxU32 FoundLostAggregatePairsCapacity;
3559 PxU32 TotalAggregatePairsCapacity;
3560 PxU32 MaxSoftBodyContacts;
3561 PxU32 MaxFemClothContacts;
3562 PxU32 MaxParticleContacts;
3563 PxU32 CollisionStackSize;
3564 PxU32 MaxHairContacts;
3583 static const char* getClassName() {
return "PxgDynamicsMemoryConfig"; }
3584 PxReadOnlyPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_IsValid, PxgDynamicsMemoryConfig, _Bool > IsValid;
3585 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_TempBufferCapacity, PxgDynamicsMemoryConfig, PxU32, PxU32 > TempBufferCapacity;
3586 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_MaxRigidContactCount, PxgDynamicsMemoryConfig, PxU32, PxU32 > MaxRigidContactCount;
3587 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_MaxRigidPatchCount, PxgDynamicsMemoryConfig, PxU32, PxU32 > MaxRigidPatchCount;
3588 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_HeapCapacity, PxgDynamicsMemoryConfig, PxU32, PxU32 > HeapCapacity;
3589 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_FoundLostPairsCapacity, PxgDynamicsMemoryConfig, PxU32, PxU32 > FoundLostPairsCapacity;
3590 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_FoundLostAggregatePairsCapacity, PxgDynamicsMemoryConfig, PxU32, PxU32 > FoundLostAggregatePairsCapacity;
3591 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_TotalAggregatePairsCapacity, PxgDynamicsMemoryConfig, PxU32, PxU32 > TotalAggregatePairsCapacity;
3592 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_MaxSoftBodyContacts, PxgDynamicsMemoryConfig, PxU32, PxU32 > MaxSoftBodyContacts;
3593 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_MaxFemClothContacts, PxgDynamicsMemoryConfig, PxU32, PxU32 > MaxFemClothContacts;
3594 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_MaxParticleContacts, PxgDynamicsMemoryConfig, PxU32, PxU32 > MaxParticleContacts;
3595 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_CollisionStackSize, PxgDynamicsMemoryConfig, PxU32, PxU32 > CollisionStackSize;
3596 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxgDynamicsMemoryConfig_MaxHairContacts, PxgDynamicsMemoryConfig, PxU32, PxU32 > MaxHairContacts;
3599 template<
typename TReturnType,
typename TOperator>
3600 TReturnType visitType( TOperator inOperator )
const
3602 return inOperator(
reinterpret_cast<PxgDynamicsMemoryConfig*
>(NULL) );
3604 template<
typename TOperator>
3605 void visitBases( TOperator inOperator )
3607 PX_UNUSED(inOperator);
3609 template<
typename TOperator>
3610 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3612 PX_UNUSED(inOperator);
3613 PX_UNUSED(inStartIndex);
3614 return inStartIndex;
3616 static PxU32 instancePropertyCount() {
return 13; }
3617 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
3618 template<
typename TOperator>
3619 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3621 PX_UNUSED(inOperator);
3622 PX_UNUSED(inStartIndex);
3623 inOperator( IsValid, inStartIndex + 0 );;
3624 inOperator( TempBufferCapacity, inStartIndex + 1 );;
3625 inOperator( MaxRigidContactCount, inStartIndex + 2 );;
3626 inOperator( MaxRigidPatchCount, inStartIndex + 3 );;
3627 inOperator( HeapCapacity, inStartIndex + 4 );;
3628 inOperator( FoundLostPairsCapacity, inStartIndex + 5 );;
3629 inOperator( FoundLostAggregatePairsCapacity, inStartIndex + 6 );;
3630 inOperator( TotalAggregatePairsCapacity, inStartIndex + 7 );;
3631 inOperator( MaxSoftBodyContacts, inStartIndex + 8 );;
3632 inOperator( MaxFemClothContacts, inStartIndex + 9 );;
3633 inOperator( MaxParticleContacts, inStartIndex + 10 );;
3634 inOperator( CollisionStackSize, inStartIndex + 11 );;
3635 inOperator( MaxHairContacts, inStartIndex + 12 );;
3636 return 13 + inStartIndex;
3639 template<>
struct PxClassInfoTraits<PxgDynamicsMemoryConfig>
3645 static PxU32ToName g_physx__PxSimulationStatistics__RbPairStatsTypeConversion[] = {
3653template<>
struct PxEnumTraits<
physx::PxSimulationStatistics::RbPairStatsType > { PxEnumTraits() : NameConversion( g_physx__PxSimulationStatistics__RbPairStatsTypeConversion ) {}
const PxU32ToName* NameConversion; };
3654 class PxSimulationStatistics;
3657 PxU32 NbActiveConstraints;
3658 PxU32 NbActiveDynamicBodies;
3659 PxU32 NbActiveKinematicBodies;
3660 PxU32 NbStaticBodies;
3661 PxU32 NbDynamicBodies;
3662 PxU32 NbKinematicBodies;
3664 PxU32 NbArticulations;
3665 PxU32 NbAxisSolverConstraints;
3666 PxU32 CompressedContactSize;
3667 PxU32 RequiredContactConstraintMemory;
3668 PxU32 PeakConstraintMemory;
3669 PxU32 NbDiscreteContactPairsTotal;
3670 PxU32 NbDiscreteContactPairsWithCacheHits;
3671 PxU32 NbDiscreteContactPairsWithContacts;
3675 PxU32 NbLostTouches;
3677 PxU64 GpuMemParticles;
3678 PxU64 GpuMemSoftBodies;
3679 PxU64 GpuMemFEMCloths;
3680 PxU64 GpuMemHairSystems;
3682 PxU64 GpuMemHeapBroadPhase;
3683 PxU64 GpuMemHeapNarrowPhase;
3684 PxU64 GpuMemHeapSolver;
3685 PxU64 GpuMemHeapArticulation;
3686 PxU64 GpuMemHeapSimulation;
3687 PxU64 GpuMemHeapSimulationArticulation;
3688 PxU64 GpuMemHeapSimulationParticles;
3689 PxU64 GpuMemHeapSimulationSoftBody;
3690 PxU64 GpuMemHeapSimulationFEMCloth;
3691 PxU64 GpuMemHeapSimulationHairSystem;
3692 PxU64 GpuMemHeapParticles;
3693 PxU64 GpuMemHeapSoftBodies;
3694 PxU64 GpuMemHeapFEMCloths;
3695 PxU64 GpuMemHeapHairSystems;
3696 PxU64 GpuMemHeapOther;
3697 PxU32 NbBroadPhaseAdds;
3698 PxU32 NbBroadPhaseRemoves;
3699 PxU32 NbDiscreteContactPairs[PxGeometryType::eGEOMETRY_COUNT][PxGeometryType::eGEOMETRY_COUNT];
3700 PxU32 NbModifiedContactPairs[PxGeometryType::eGEOMETRY_COUNT][PxGeometryType::eGEOMETRY_COUNT];
3701 PxU32 NbCCDPairs[PxGeometryType::eGEOMETRY_COUNT][PxGeometryType::eGEOMETRY_COUNT];
3702 PxU32 NbTriggerPairs[PxGeometryType::eGEOMETRY_COUNT][PxGeometryType::eGEOMETRY_COUNT];
3703 PxU32 NbShapes[PxGeometryType::eGEOMETRY_COUNT];
3756 static const char* getClassName() {
return "PxSimulationStatistics"; }
3757 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbActiveConstraints, PxSimulationStatistics, PxU32, PxU32 > NbActiveConstraints;
3758 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbActiveDynamicBodies, PxSimulationStatistics, PxU32, PxU32 > NbActiveDynamicBodies;
3759 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbActiveKinematicBodies, PxSimulationStatistics, PxU32, PxU32 > NbActiveKinematicBodies;
3760 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbStaticBodies, PxSimulationStatistics, PxU32, PxU32 > NbStaticBodies;
3761 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbDynamicBodies, PxSimulationStatistics, PxU32, PxU32 > NbDynamicBodies;
3762 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbKinematicBodies, PxSimulationStatistics, PxU32, PxU32 > NbKinematicBodies;
3763 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbAggregates, PxSimulationStatistics, PxU32, PxU32 > NbAggregates;
3764 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbArticulations, PxSimulationStatistics, PxU32, PxU32 > NbArticulations;
3765 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbAxisSolverConstraints, PxSimulationStatistics, PxU32, PxU32 > NbAxisSolverConstraints;
3766 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_CompressedContactSize, PxSimulationStatistics, PxU32, PxU32 > CompressedContactSize;
3767 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_RequiredContactConstraintMemory, PxSimulationStatistics, PxU32, PxU32 > RequiredContactConstraintMemory;
3768 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_PeakConstraintMemory, PxSimulationStatistics, PxU32, PxU32 > PeakConstraintMemory;
3769 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbDiscreteContactPairsTotal, PxSimulationStatistics, PxU32, PxU32 > NbDiscreteContactPairsTotal;
3770 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbDiscreteContactPairsWithCacheHits, PxSimulationStatistics, PxU32, PxU32 > NbDiscreteContactPairsWithCacheHits;
3771 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbDiscreteContactPairsWithContacts, PxSimulationStatistics, PxU32, PxU32 > NbDiscreteContactPairsWithContacts;
3772 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbNewPairs, PxSimulationStatistics, PxU32, PxU32 > NbNewPairs;
3773 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbLostPairs, PxSimulationStatistics, PxU32, PxU32 > NbLostPairs;
3774 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbNewTouches, PxSimulationStatistics, PxU32, PxU32 > NbNewTouches;
3775 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbLostTouches, PxSimulationStatistics, PxU32, PxU32 > NbLostTouches;
3776 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbPartitions, PxSimulationStatistics, PxU32, PxU32 > NbPartitions;
3777 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemParticles, PxSimulationStatistics, PxU64, PxU64 > GpuMemParticles;
3778 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemSoftBodies, PxSimulationStatistics, PxU64, PxU64 > GpuMemSoftBodies;
3779 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemFEMCloths, PxSimulationStatistics, PxU64, PxU64 > GpuMemFEMCloths;
3780 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHairSystems, PxSimulationStatistics, PxU64, PxU64 > GpuMemHairSystems;
3781 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeap, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeap;
3782 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapBroadPhase, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapBroadPhase;
3783 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapNarrowPhase, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapNarrowPhase;
3784 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapSolver, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapSolver;
3785 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapArticulation, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapArticulation;
3786 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapSimulation, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapSimulation;
3787 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapSimulationArticulation, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapSimulationArticulation;
3788 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapSimulationParticles, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapSimulationParticles;
3789 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapSimulationSoftBody, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapSimulationSoftBody;
3790 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapSimulationFEMCloth, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapSimulationFEMCloth;
3791 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapSimulationHairSystem, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapSimulationHairSystem;
3792 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapParticles, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapParticles;
3793 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapSoftBodies, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapSoftBodies;
3794 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapFEMCloths, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapFEMCloths;
3795 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapHairSystems, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapHairSystems;
3796 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_GpuMemHeapOther, PxSimulationStatistics, PxU64, PxU64 > GpuMemHeapOther;
3797 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbBroadPhaseAdds, PxSimulationStatistics, PxU32, PxU32 > NbBroadPhaseAdds;
3798 PxPropertyInfo<PX_PROPERTY_INFO_NAME::PxSimulationStatistics_NbBroadPhaseRemoves, PxSimulationStatistics, PxU32, PxU32 > NbBroadPhaseRemoves;
3799 NbDiscreteContactPairsProperty NbDiscreteContactPairs;
3800 NbModifiedContactPairsProperty NbModifiedContactPairs;
3801 NbCCDPairsProperty NbCCDPairs;
3802 NbTriggerPairsProperty NbTriggerPairs;
3803 NbShapesProperty NbShapes;
3806 template<
typename TReturnType,
typename TOperator>
3807 TReturnType visitType( TOperator inOperator )
const
3809 return inOperator(
reinterpret_cast<PxSimulationStatistics*
>(NULL) );
3811 template<
typename TOperator>
3812 void visitBases( TOperator inOperator )
3814 PX_UNUSED(inOperator);
3816 template<
typename TOperator>
3817 PxU32 visitBaseProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3819 PX_UNUSED(inOperator);
3820 PX_UNUSED(inStartIndex);
3821 return inStartIndex;
3823 static PxU32 instancePropertyCount() {
return 47; }
3824 static PxU32 totalPropertyCount() {
return instancePropertyCount(); }
3825 template<
typename TOperator>
3826 PxU32 visitInstanceProperties( TOperator inOperator, PxU32 inStartIndex = 0 )
const
3828 PX_UNUSED(inOperator);
3829 PX_UNUSED(inStartIndex);
3830 inOperator( NbActiveConstraints, inStartIndex + 0 );;
3831 inOperator( NbActiveDynamicBodies, inStartIndex + 1 );;
3832 inOperator( NbActiveKinematicBodies, inStartIndex + 2 );;
3833 inOperator( NbStaticBodies, inStartIndex + 3 );;
3834 inOperator( NbDynamicBodies, inStartIndex + 4 );;
3835 inOperator( NbKinematicBodies, inStartIndex + 5 );;
3836 inOperator( NbAggregates, inStartIndex + 6 );;
3837 inOperator( NbArticulations, inStartIndex + 7 );;
3838 inOperator( NbAxisSolverConstraints, inStartIndex + 8 );;
3839 inOperator( CompressedContactSize, inStartIndex + 9 );;
3840 inOperator( RequiredContactConstraintMemory, inStartIndex + 10 );;
3841 inOperator( PeakConstraintMemory, inStartIndex + 11 );;
3842 inOperator( NbDiscreteContactPairsTotal, inStartIndex + 12 );;
3843 inOperator( NbDiscreteContactPairsWithCacheHits, inStartIndex + 13 );;
3844 inOperator( NbDiscreteContactPairsWithContacts, inStartIndex + 14 );;
3845 inOperator( NbNewPairs, inStartIndex + 15 );;
3846 inOperator( NbLostPairs, inStartIndex + 16 );;
3847 inOperator( NbNewTouches, inStartIndex + 17 );;
3848 inOperator( NbLostTouches, inStartIndex + 18 );;
3849 inOperator( NbPartitions, inStartIndex + 19 );;
3850 inOperator( GpuMemParticles, inStartIndex + 20 );;
3851 inOperator( GpuMemSoftBodies, inStartIndex + 21 );;
3852 inOperator( GpuMemFEMCloths, inStartIndex + 22 );;
3853 inOperator( GpuMemHairSystems, inStartIndex + 23 );;
3854 inOperator( GpuMemHeap, inStartIndex + 24 );;
3855 inOperator( GpuMemHeapBroadPhase, inStartIndex + 25 );;
3856 inOperator( GpuMemHeapNarrowPhase, inStartIndex + 26 );;
3857 inOperator( GpuMemHeapSolver, inStartIndex + 27 );;
3858 inOperator( GpuMemHeapArticulation, inStartIndex + 28 );;
3859 inOperator( GpuMemHeapSimulation, inStartIndex + 29 );;
3860 inOperator( GpuMemHeapSimulationArticulation, inStartIndex + 30 );;
3861 inOperator( GpuMemHeapSimulationParticles, inStartIndex + 31 );;
3862 inOperator( GpuMemHeapSimulationSoftBody, inStartIndex + 32 );;
3863 inOperator( GpuMemHeapSimulationFEMCloth, inStartIndex + 33 );;
3864 inOperator( GpuMemHeapSimulationHairSystem, inStartIndex + 34 );;
3865 inOperator( GpuMemHeapParticles, inStartIndex + 35 );;
3866 inOperator( GpuMemHeapSoftBodies, inStartIndex + 36 );;
3867 inOperator( GpuMemHeapFEMCloths, inStartIndex + 37 );;
3868 inOperator( GpuMemHeapHairSystems, inStartIndex + 38 );;
3869 inOperator( GpuMemHeapOther, inStartIndex + 39 );;
3870 inOperator( NbBroadPhaseAdds, inStartIndex + 40 );;
3871 inOperator( NbBroadPhaseRemoves, inStartIndex + 41 );;
3872 inOperator( NbDiscreteContactPairs, inStartIndex + 42 );;
3873 inOperator( NbModifiedContactPairs, inStartIndex + 43 );;
3874 inOperator( NbCCDPairs, inStartIndex + 44 );;
3875 inOperator( NbTriggerPairs, inStartIndex + 45 );;
3876 inOperator( NbShapes, inStartIndex + 46 );;
3877 return 47 + inStartIndex;
3880 template<>
struct PxClassInfoTraits<PxSimulationStatistics>
3888#undef THERE_IS_NO_INCLUDE_GUARD_HERE_FOR_A_REASON
3889#undef PX_PROPERTY_INFO_NAME
@ eACCELERATION
The joint accelerations, see PxArticulationCache::jointAcceleration.
Definition PxArticulationFlag.h:86
@ eROOT_VELOCITIES
Root link velocities (read/write) and accelerations (read), see PxArticulationCache::rootLinkData.
Definition PxArticulationFlag.h:92
@ eLINK_VELOCITY
The link velocities, see PxArticulationCache::linkVelocity.
Definition PxArticulationFlag.h:89
@ eLINK_ACCELERATION
The link accelerations, see PxArticulationCache::linkAcceleration.
Definition PxArticulationFlag.h:90
@ eJOINT_SOLVER_FORCES
Solver constraint joint forces, see PxArticulationCache::jointSolverForces.
Definition PxArticulationFlag.h:94
@ eVELOCITY
The joint velocities, see PxArticulationCache::jointVelocity.
Definition PxArticulationFlag.h:85
@ eSENSOR_FORCES
The spatial sensor forces, see PxArticulationCache::sensorForces.
Definition PxArticulationFlag.h:93
@ eFORCE
The joint forces, see PxArticulationCache::jointForce.
Definition PxArticulationFlag.h:88
@ eROOT_TRANSFORM
Root link transform, see PxArticulationCache::rootLinkData.
Definition PxArticulationFlag.h:91
@ ePOSITION
The joint positions, see PxArticulationCache::jointPosition.
Definition PxArticulationFlag.h:87
@ eFIXED_TENDON_JOINT
Fixed tendon joint data, write only, see PxScene::applyArticulationData()
Definition PxArticulationFlag.h:68
@ eSPATIAL_TENDON_ATTACHMENT
Spatial tendon attachment data, write only, see PxScene::applyArticulationData()
Definition PxArticulationFlag.h:70
@ eLINK_TRANSFORM
The link transforms including root link, read only, see PxScene::copyArticulationData()
Definition PxArticulationFlag.h:63
@ eLINK_TORQUE
The torques to apply to links, write only, see PxScene::applyArticulationData()
Definition PxArticulationFlag.h:66
@ eROOT_VELOCITY
The root link velocity, read and write, see PxScene::copyArticulationData(), PxScene::applyArticulati...
Definition PxArticulationFlag.h:62
@ eLINK_VELOCITY
The link velocities including root link, read only, see PxScene::copyArticulationData()
Definition PxArticulationFlag.h:64
@ eROOT_TRANSFORM
The root link transform, read and write, see PxScene::copyArticulationData(), PxScene::applyArticulat...
Definition PxArticulationFlag.h:61
@ eLINK_FORCE
The forces to apply to links, write only, see PxScene::applyArticulationData()
Definition PxArticulationFlag.h:65
@ eJOINT_TARGET_POSITION
The position targets for the joint drives, write only, see PxScene::applyArticulationData()
Definition PxArticulationFlag.h:59
@ eFIXED_TENDON
Fixed tendon data, write only, see PxScene::applyArticulationData()
Definition PxArticulationFlag.h:67
@ eSENSOR_FORCE
The spatial sensor forces, read only, see PxScene::copyArticulationData()
Definition PxArticulationFlag.h:60
@ eJOINT_POSITION
The joint positions, read and write, see PxScene::copyArticulationData(), PxScene::applyArticulationD...
Definition PxArticulationFlag.h:53
@ eJOINT_FORCE
The applied joint forces, write only, see PxScene::applyArticulationData()
Definition PxArticulationFlag.h:56
@ eSPATIAL_TENDON
Spatial tendon data, write only, see PxScene::applyArticulationData()
Definition PxArticulationFlag.h:69
@ eJOINT_VELOCITY
The joint velocities, read and write, see PxScene::copyArticulationData(), PxScene::applyArticulation...
Definition PxArticulationFlag.h:54
@ eJOINT_TARGET_VELOCITY
The velocity targets for the joint drives, write only, see PxScene::applyArticulationData()
Definition PxArticulationFlag.h:58
@ eJOINT_SOLVER_FORCE
The computed joint constraint solver forces, read only, see PxScene::copyArticulationData()()
Definition PxArticulationFlag.h:57
@ eJOINT_ACCELERATION
The joint accelerations, read only, see PxScene::copyArticulationData()
Definition PxArticulationFlag.h:55
@ eMODIFIED_CONTACT_PAIRS
Shape pairs processed with user contact modification enabled for the current simulation step.
Definition PxSimulationStatistics.h:79
@ eTRIGGER_PAIRS
Trigger shape pairs processed for the current simulation step.
Definition PxSimulationStatistics.h:86
@ eCCD_PAIRS
Shape pairs processed as swept integration pairs for the current simulation step.
Definition PxSimulationStatistics.h:72
@ eDISCRETE_CONTACT_PAIRS
Shape pairs processed as discrete contact pairs for the current simulation step.
Definition PxSimulationStatistics.h:62
@ eTET_INDICES
The collision mesh tetrahedron indices (quadruples of int32)
Definition PxSoftBodyFlag.h:50
@ eTET_POSITION_INV_MASS
The collision mesh vertex positions and their inverted mass in the 4th component (quadruples of float...
Definition PxSoftBodyFlag.h:55
@ eTET_REST_POSES
The collision mesh tetrahedron rest poses (float 3x3 matrices)
Definition PxSoftBodyFlag.h:53
@ eTET_STRESS
The collision mesh cauchy stress tensors (float 3x3 matrices)
Definition PxSoftBodyFlag.h:51
@ eSIM_POSITION_INV_MASS
The simulation mesh vertex positions and their inverted mass in the 4th component (quadruples of floa...
Definition PxSoftBodyFlag.h:58
@ eSIM_KINEMATIC_TARGET
The simulation mesh kinematic target positions.
Definition PxSoftBodyFlag.h:59
@ eTET_STRESSCOEFF
The collision mesh tetrahedron von Mises stress (float scalar)
Definition PxSoftBodyFlag.h:52
@ eSIM_VELOCITY_INV_MASS
The simulation mesh vertex velocities and their inverted mass in the 4th component (quadruples of flo...
Definition PxSoftBodyFlag.h:57
@ eSIM_TET_INDICES
The simulation mesh tetrahedron indices (quadruples of int32)
Definition PxSoftBodyFlag.h:56
@ eTET_ROTATIONS
The collision mesh tetrahedron orientations (quaternions, quadruples of float)
Definition PxSoftBodyFlag.h:54
Sorts an array of objects in ascending order, assuming that the predicate implements the < operator:
Definition PxBoxController.h:39
Definition PxAutoGeneratedMetaDataObjects.h:649
Definition PxAutoGeneratedMetaDataObjects.h:630
Definition PxAutoGeneratedMetaDataObjects.h:1399
Definition PxAutoGeneratedMetaDataObjects.h:1384
Definition PxAutoGeneratedMetaDataObjects.h:3051
Definition PxAutoGeneratedMetaDataObjects.h:3038
Definition PxAutoGeneratedMetaDataObjects.h:1188
Definition PxAutoGeneratedMetaDataObjects.h:1157
Definition PxAutoGeneratedMetaDataObjects.h:2995
Definition PxAutoGeneratedMetaDataObjects.h:2986
Definition PxAutoGeneratedMetaDataObjects.h:1058
Definition PxAutoGeneratedMetaDataObjects.h:1039
Definition PxAutoGeneratedMetaDataObjects.h:1313
Definition PxAutoGeneratedMetaDataObjects.h:1278
Definition PxAutoGeneratedMetaDataObjects.h:185
Definition PxAutoGeneratedMetaDataObjects.h:178
Definition PxAutoGeneratedMetaDataObjects.h:1835
Definition PxAutoGeneratedMetaDataObjects.h:1828
Definition PxAutoGeneratedMetaDataObjects.h:3422
Definition PxAutoGeneratedMetaDataObjects.h:3403
Definition PxAutoGeneratedMetaDataObjects.h:1889
Definition PxAutoGeneratedMetaDataObjects.h:1880
Definition PxAutoGeneratedMetaDataObjects.h:1489
Definition PxAutoGeneratedMetaDataObjects.h:1468
Definition PxAutoGeneratedMetaDataObjects.h:2005
Definition PxAutoGeneratedMetaDataObjects.h:1994
Definition PxAutoGeneratedMetaDataObjects.h:2861
Definition PxAutoGeneratedMetaDataObjects.h:2854
Definition PxAutoGeneratedMetaDataObjects.h:341
Definition PxAutoGeneratedMetaDataObjects.h:330
Definition PxAutoGeneratedMetaDataObjects.h:401
Definition PxAutoGeneratedMetaDataObjects.h:390
Definition PxAutoGeneratedMetaDataObjects.h:1789
Definition PxAutoGeneratedMetaDataObjects.h:1784
Definition PxAutoGeneratedMetaDataObjects.h:2935
Definition PxAutoGeneratedMetaDataObjects.h:2918
Definition PxAutoGeneratedMetaDataObjects.h:2236
Definition PxAutoGeneratedMetaDataObjects.h:2221
Definition PxAutoGeneratedMetaDataObjects.h:271
Definition PxAutoGeneratedMetaDataObjects.h:250
Definition PxAutoGeneratedMetaDataObjects.h:1945
Definition PxAutoGeneratedMetaDataObjects.h:1936
Definition PxAutoGeneratedMetaDataObjects.h:543
Definition PxAutoGeneratedMetaDataObjects.h:518
Definition PxAutoGeneratedMetaDataObjects.h:465
Definition PxAutoGeneratedMetaDataObjects.h:450
Definition PxAutoGeneratedMetaDataObjects.h:63
Definition PxAutoGeneratedMetaDataObjects.h:56
Definition PxAutoGeneratedMetaDataObjects.h:2111
Definition PxAutoGeneratedMetaDataObjects.h:2106
Definition PxAutoGeneratedMetaDataObjects.h:1681
Definition PxAutoGeneratedMetaDataObjects.h:1670
Definition PxAutoGeneratedMetaDataObjects.h:137
Definition PxAutoGeneratedMetaDataObjects.h:130
Definition PxAutoGeneratedMetaDataObjects.h:709
Definition PxAutoGeneratedMetaDataObjects.h:702
Definition PxAutoGeneratedMetaDataObjects.h:817
Definition PxAutoGeneratedMetaDataObjects.h:784
Definition PxAutoGeneratedMetaDataObjects.h:924
Definition PxAutoGeneratedMetaDataObjects.h:899
Definition PxAutoGeneratedMetaDataObjects.h:994
Definition PxAutoGeneratedMetaDataObjects.h:987
Definition PxAutoGeneratedMetaDataObjects.h:3282
Definition PxAutoGeneratedMetaDataObjects.h:3201
Definition PxAutoGeneratedMetaDataObjects.h:2675
Definition PxAutoGeneratedMetaDataObjects.h:2600
Definition PxAutoGeneratedMetaDataObjects.h:3496
Definition PxAutoGeneratedMetaDataObjects.h:3475
Definition PxAutoGeneratedMetaDataObjects.h:3142
Definition PxAutoGeneratedMetaDataObjects.h:3117
Definition PxAutoGeneratedMetaDataObjects.h:2333
Definition PxAutoGeneratedMetaDataObjects.h:2322
Definition PxAutoGeneratedMetaDataObjects.h:2400
Definition PxAutoGeneratedMetaDataObjects.h:2387
Definition PxAutoGeneratedMetaDataObjects.h:1595
Definition PxAutoGeneratedMetaDataObjects.h:1560
Definition PxAutoGeneratedMetaDataObjects.h:3755
Definition PxAutoGeneratedMetaDataObjects.h:3656
Definition PxAutoGeneratedMetaDataObjects.h:2061
Definition PxAutoGeneratedMetaDataObjects.h:2054
Definition PxAutoGeneratedMetaDataObjects.h:2809
Definition PxAutoGeneratedMetaDataObjects.h:2802
Definition PxAutoGeneratedMetaDataObjects.h:1739
Definition PxAutoGeneratedMetaDataObjects.h:1728
Definition PxAutoGeneratedMetaDataObjects.h:2172
Definition PxAutoGeneratedMetaDataObjects.h:2161
Definition PxAutoGeneratedMetaDataObjects.h:3582
Definition PxAutoGeneratedMetaDataObjects.h:3551
@ eDISABLE_SIMULATION
Disables simulation for the actor.
Definition PxActor.h:102
@ eSEND_SLEEP_NOTIFIES
Enables the sending of PxSimulationEventCallback::onWake() and PxSimulationEventCallback::onSleep() n...
Definition PxActor.h:84
@ eDISABLE_GRAVITY
Disables scene gravity for this actor.
Definition PxActor.h:77
@ eVISUALIZATION
Enable debug renderer for this actor.
Definition PxActor.h:72
@ eRIGID_DYNAMIC
A dynamic rigid body.
Definition PxScene.h:112
@ eRIGID_STATIC
A static rigid body.
Definition PxScene.h:106
@ eCUSTOM_PARTICLESYSTEM
A CUSTOM ParticleSystem.
Definition PxActor.h:178
@ eARTICULATION_LINK
An articulation link.
Definition PxActor.h:138
@ eFLIP_PARTICLESYSTEM
A FLIP ParticleSystem.
Definition PxActor.h:164
@ eFEMCLOTH
A FEM-based cloth.
Definition PxActor.h:151
@ eSOFTBODY
A FEM-based soft body.
Definition PxActor.h:144
@ eHAIRSYSTEM
A HairSystem.
Definition PxActor.h:185
@ ePBD_PARTICLESYSTEM
A PBD ParticleSystem.
Definition PxActor.h:157
@ eMPM_PARTICLESYSTEM
A MPM ParticleSystem.
Definition PxActor.h:171
@ eRIGID_STATIC
A static rigid body.
Definition PxActor.h:126
@ eRIGID_DYNAMIC
A dynamic rigid body.
Definition PxActor.h:132
@ eSWING2
Rotational about eZ.
Definition PxSolverDefs.h:255
@ eTWIST
Rotational about eX.
Definition PxSolverDefs.h:253
@ eSWING1
Rotational about eY.
Definition PxSolverDefs.h:254
@ eY
Linear in eY.
Definition PxSolverDefs.h:257
@ eX
Linear in eX.
Definition PxSolverDefs.h:256
@ eZ
Linear in eZ.
Definition PxSolverDefs.h:258
@ eVELOCITY
Sets the drive gains internally to track a target velocity almost kinematically (i....
Definition PxSolverDefs.h:312
@ eFORCE
The output of the implicit spring drive controller is a force/torque.
Definition PxSolverDefs.h:309
@ eTARGET
Sets the drive gains internally to track a target position almost kinematically (i....
Definition PxSolverDefs.h:311
@ eACCELERATION
The output of the implicit spring drive controller is a joint acceleration (use this to get (spatial)...
Definition PxSolverDefs.h:310
@ eFIX_BASE
Set articulation base to be fixed.
Definition PxSolverDefs.h:295
@ eCOMPUTE_JOINT_FORCES
Enable in order to be able to query joint solver (i.e. constraint) forces using PxArticulationCache::...
Definition PxSolverDefs.h:298
@ eDRIVE_LIMITS_ARE_FORCES
Limits for drive effort are forces and torques rather than impulses, see PxArticulationDrive::maxForc...
Definition PxSolverDefs.h:296
@ eDISABLE_SELF_COLLISION
Disable collisions between the articulation's links (note that parent/child collisions are disabled i...
Definition PxSolverDefs.h:297
@ eREVOLUTE_UNWRAPPED
Single rotational DOF, e.g. an elbow joint or a rotational motor, position not wrapped.
Definition PxSolverDefs.h:285
@ ePRISMATIC
Single linear DOF, e.g. cart on a rail.
Definition PxSolverDefs.h:283
@ eREVOLUTE
Single rotational DOF, e.g. an elbow joint or a rotational motor, position wrapped at 2pi radians.
Definition PxSolverDefs.h:284
@ eFIX
All joint axes, i.e. degrees of freedom (DOFs) locked.
Definition PxSolverDefs.h:282
@ eSPHERICAL
Ball and socket joint with two or three DOFs.
Definition PxSolverDefs.h:286
@ eLIMITED
Limited DOF - set limits of joint DOF together with this flag, see PxArticulationJointReducedCoordina...
Definition PxSolverDefs.h:270
@ eFREE
Free DOF.
Definition PxSolverDefs.h:271
@ eLOCKED
Locked axis, i.e. degree of freedom (DOF)
Definition PxSolverDefs.h:269
@ eSAH
SAH build strategy. Slower builds, slightly improved runtime performance in some cases.
Definition PxBVHBuildStrategy.h:51
@ eDEFAULT
Default build strategy. Medium build speed, good runtime performance in all cases.
Definition PxBVHBuildStrategy.h:50
@ eFAST
Fast build strategy. Fast build speed, good runtime performance in most cases. Recommended for runtim...
Definition PxBVHBuildStrategy.h:49
@ eABP
Automatic box pruning.
Definition PxBroadPhase.h:82
@ ePABP
Parallel automatic box pruning.
Definition PxBroadPhase.h:83
@ eMBP
Multi box pruning.
Definition PxBroadPhase.h:81
@ eGPU
GPU broad phase.
Definition PxBroadPhase.h:84
@ eSAP
3-axes sweep-and-prune
Definition PxBroadPhase.h:80
@ eMAX
Maximum: maximum(a,b)
Definition PxMaterial.h:137
@ eMULTIPLY
Multiply: a*b.
Definition PxMaterial.h:136
@ eN_VALUES
This is not a valid combine mode, it is a sentinel to denote the number of possible values....
Definition PxMaterial.h:138
@ eMIN
Minimum: minimum(a,b)
Definition PxMaterial.h:135
@ eAVERAGE
Average: (a + b)/2.
Definition PxMaterial.h:134
@ ePAD_32
This is not a valid combine mode, it is to assure that the size of the enum type is big enough.
Definition PxMaterial.h:139
@ ePROJECTION
Definition PxConstraint.h:61
@ ePROJECT_TO_ACTOR1
Definition PxConstraint.h:60
@ eIMPROVED_SLERP
perform preprocessing for improved accuracy on D6 Slerp Drive (this flag will be removed in a future ...
Definition PxConstraint.h:65
@ eALWAYS_UPDATE
updates the constraint each frame
Definition PxConstraint.h:69
@ eENABLE_EXTENDED_LIMITS
enables extended limit ranges for angular limits (e.g., limit values > PxPi or < -PxPi)
Definition PxConstraint.h:67
@ eGPU_COMPATIBLE
the constraint type is supported by gpu dynamics
Definition PxConstraint.h:68
@ ePROJECT_TO_ACTOR0
Definition PxConstraint.h:59
@ eDISABLE_PREPROCESSING
suppress constraint preprocessing, intended for use with rowResponseThreshold. May result in worse so...
Definition PxConstraint.h:66
@ eVISUALIZATION
whether this constraint should be visualized, if constraint visualization is turned on
Definition PxConstraint.h:63
@ eBROKEN
whether the constraint is broken
Definition PxConstraint.h:58
@ eDISABLE_CONSTRAINT
disables the constraint. SolverPrep functions won't be called for this constraint.
Definition PxConstraint.h:70
@ eCOLLISION_ENABLED
whether contacts should be generated between the objects this constraint constrains
Definition PxConstraint.h:62
@ eDRIVE_LIMITS_ARE_FORCES
limits for drive strength are forces rather than impulses
Definition PxConstraint.h:64
@ eTIGHT_BOUNDS
Use tighter (but more expensive to compute) bounds around the convex geometry.
Definition PxConvexMeshGeometry.h:55
@ eINCREMENTAL
incremental-BVH secondary pruner, faster query time, slower updates
Definition PxSceneQueryDesc.h:104
@ eNONE
no secondary pruner, new objects aren't visible to SQ for a few frames
Definition PxSceneQueryDesc.h:102
@ eBUCKET
bucket-based secondary pruner, faster updates, slower query time
Definition PxSceneQueryDesc.h:103
@ eBVH
PxBVH-based secondary pruner, good overall performance.
Definition PxSceneQueryDesc.h:105
@ eFORCE
parameter has unit of mass * length / time^2, i.e., a force
Definition PxForceMode.h:52
@ eVELOCITY_CHANGE
parameter has unit of length / time, i.e., the effect is mass independent: a velocity change.
Definition PxForceMode.h:54
@ eIMPULSE
parameter has unit of mass * length / time, i.e., force * time
Definition PxForceMode.h:53
@ eACCELERATION
parameter has unit of length/ time^2, i.e., an acceleration. It gets treated just like a force except...
Definition PxForceMode.h:55
@ ePATCH
Select default patch-friction model.
Definition PxSceneDesc.h:72
@ eTWO_DIRECTIONAL
Select two directional per-contact friction model.
Definition PxSceneDesc.h:74
@ eONE_DIRECTIONAL
Select one directional per-contact friction model.
Definition PxSceneDesc.h:73
@ eSIMD_GUARD
Saves/restores SIMD control word for each query (safer but slower). Omit this if you took care of it ...
Definition PxGeometryQueryFlags.h:51
@ eNO_BOUNDARY_EDGES
Disable collisions with height field with boundary edges.
Definition PxHeightFieldFlag.h:143
@ eANY_HIT
Definition PxGeometryHit.h:65
@ eMODIFIABLE_FLAGS
Only this subset of flags can be modified by pre-filter. Other modifications will be discarded.
Definition PxGeometryHit.h:80
@ eNORMAL
"normal" member of #PxQueryHit is valid
Definition PxGeometryHit.h:61
@ eFACE_INDEX
"face index" member of #PxQueryHit is valid
Definition PxGeometryHit.h:75
@ eMESH_BOTH_SIDES
Definition PxGeometryHit.h:69
@ eUV
"u" and "v" barycentric coordinates of #PxQueryHit are valid. Not applicable to sweep queries.
Definition PxGeometryHit.h:62
@ eASSUME_NO_INITIAL_OVERLAP
Definition PxGeometryHit.h:63
@ ePRECISE_SWEEP
Definition PxGeometryHit.h:72
@ ePOSITION
"position" member of #PxQueryHit is valid
Definition PxGeometryHit.h:60
@ eMESH_ANY
Definition PxGeometryHit.h:68
@ eMTD
Report the minimum translation depth, normal and contact point.
Definition PxGeometryHit.h:74
@ eMESH_MULTIPLE
Report all hits for meshes rather than just the first. Not applicable to sweep queries.
Definition PxGeometryHit.h:67
@ eDISABLE_STRONG_FRICTION
Whether to use strong friction. The difference between "normal" and "strong" friction is that the str...
Definition PxMaterial.h:78
@ eCOMPLIANT_CONTACT
This flag has the effect of enabling an implicit spring model for the normal force computation.
Definition PxMaterial.h:98
@ eDISABLE_FRICTION
If this flag is set, friction computations are always skipped between shapes with this material and a...
Definition PxMaterial.h:57
@ eIMPROVED_PATCH_FRICTION
Whether to use the patch friction model. This flag only has an effect if PxFrictionType::ePATCH frict...
Definition PxMaterial.h:92
@ eTIGHT_BOUNDS
Use tighter (but more expensive to compute) bounds around the triangle mesh geometry.
Definition PxTriangleMeshGeometry.h:54
@ eDOUBLE_SIDED
Definition PxTriangleMeshGeometry.h:55
@ eDEFAULT
Default is eSUPPRESS for compatibility with previous PhysX versions.
Definition PxFiltering.h:743
@ eKILL
Don't output pair from BP. Cannot be later switched to regular interaction, needs "resetFiltering" ca...
Definition PxFiltering.h:738
@ eSUPPRESS
Output pair from BP, create interaction marker. Can be later switched to regular interaction.
Definition PxFiltering.h:733
@ eKEEP
Output pair from BP, potentially send to user callbacks, create regular interaction object.
Definition PxFiltering.h:728
@ eFLIP
The FLIP fluid solver. See #PxFLIPParticleSystem.
Definition PxParticleSolverType.h:55
@ eCUSTOM
Custom solver. The user needs to specify the interaction of the particle by providing appropriate fun...
Definition PxParticleSolverType.h:57
@ ePBD
The position based dynamics solver that can handle fluid, granular material, cloth,...
Definition PxParticleSolverType.h:54
@ eMPM
The MPM (material point method) solver that can handle a variety of materials. See #PxMPMParticleSyst...
Definition PxParticleSolverType.h:56
@ eNONE
Using a simple data structure.
Definition PxSceneQueryDesc.h:66
@ eDYNAMIC_AABB_TREE
Using a dynamic AABB tree.
Definition PxSceneQueryDesc.h:67
@ eSTATIC_AABB_TREE
Using a static AABB tree.
Definition PxSceneQueryDesc.h:68
@ eFORCE_KINE_KINE_NOTIFICATIONS
Forces kinematic-kinematic pairs notifications for this actor.
Definition PxRigidBody.h:157
@ eFORCE_STATIC_KINE_NOTIFICATIONS
Forces static-kinematic pairs notifications for this actor.
Definition PxRigidBody.h:170
@ eENABLE_SPECULATIVE_CCD
Register a rigid body to dynamically adjust contact offset based on velocity. This can be used to ach...
Definition PxRigidBody.h:115
@ eUSE_KINEMATIC_TARGET_FOR_SCENE_QUERIES
Use the kinematic target transform for scene queries.
Definition PxRigidBody.h:85
@ eENABLE_CCD_FRICTION
Enabled CCD in swept integration for the actor.
Definition PxRigidBody.h:107
@ eRETAIN_ACCELERATIONS
Carries over forces/accelerations between frames, rather than clearing them.
Definition PxRigidBody.h:137
@ eENABLE_CCD_MAX_CONTACT_IMPULSE
Permit CCD to limit maxContactImpulse. This is useful for use-cases like a destruction system but can...
Definition PxRigidBody.h:132
@ eENABLE_POSE_INTEGRATION_PREVIEW
Register a rigid body for reporting pose changes by the simulation at an early stage.
Definition PxRigidBody.h:127
@ eKINEMATIC
Enables kinematic mode for the actor.
Definition PxRigidBody.h:74
@ eENABLE_CCD
Enables swept integration for the actor.
Definition PxRigidBody.h:96
@ eRESERVED
Reserved for internal usage.
Definition PxRigidBody.h:180
@ eENABLE_GYROSCOPIC_FORCES
Enables computation of gyroscopic forces on the rigid body.
Definition PxRigidBody.h:175
@ eENABLE_AVERAGE_POINT
Enables average points in contact manifolds.
Definition PxSceneDesc.h:218
@ eENABLE_ACTIVE_ACTORS
Enable Active Actors Notification.
Definition PxSceneDesc.h:116
@ eENABLE_ENHANCED_DETERMINISM
Provides improved determinism at the expense of performance.
Definition PxSceneDesc.h:263
@ eDISABLE_CONTACT_REPORT_BUFFER_RESIZE
Disable contact report buffer resize. Once the contact buffer is full, the rest of the contact report...
Definition PxSceneDesc.h:170
@ eDISABLE_CONTACT_CACHE
Disable contact cache.
Definition PxSceneDesc.h:182
@ eENABLE_STABILIZATION
Enables additional stabilization pass in solver.
Definition PxSceneDesc.h:208
@ eENABLE_FRICTION_EVERY_ITERATION
Controls processing friction in all solver iterations.
Definition PxSceneDesc.h:279
@ eDISABLE_CCD_RESWEEP
Enables a simplified swept integration strategy, which sacrifices some accuracy for improved performa...
Definition PxSceneDesc.h:151
@ eENABLE_PCM
Enable GJK-based distance collision detection system.
Definition PxSceneDesc.h:160
@ eENABLE_CCD
Enables a second broad phase check after integration that makes it possible to prevent objects from t...
Definition PxSceneDesc.h:130
@ eREQUIRE_RW_LOCK
Require scene-level locking.
Definition PxSceneDesc.h:199
@ eEXCLUDE_KINEMATICS_FROM_ACTIVE_ACTORS
Do not report kinematics in list of active actors.
Definition PxSceneDesc.h:232
@ eBUILD_DISABLED_COMMIT_DISABLED
No work is done, no update of scene queries.
Definition PxSceneQueryDesc.h:137
@ eBUILD_ENABLED_COMMIT_ENABLED
Both scene query build and commit are executed.
Definition PxSceneQueryDesc.h:135
@ eBUILD_ENABLED_COMMIT_DISABLED
Scene query build only is executed.
Definition PxSceneQueryDesc.h:136
@ eSIMULATION_SHAPE
The shape will partake in collision in the physical simulation.
Definition PxShape.h:83
@ eVISUALIZATION
Enable debug renderer for this shape.
Definition PxShape.h:117
@ eSCENE_QUERY_SHAPE
The shape will partake in scene queries (ray casts, overlap tests, sweeps, ...).
Definition PxShape.h:88
@ eTRIGGER_SHAPE
The shape is a trigger which can send reports whenever other shapes enter/leave its volume.
Definition PxShape.h:110
@ eTGS
Default Temporal Gauss-Seidel solver.
Definition PxSceneDesc.h:91
@ ePGS
Projected Gauss-Seidel iterative solver.
Definition PxSceneDesc.h:90
@ eJOINT_LOCAL_FRAMES
Joint local axes.
Definition PxVisualizationParameter.h:212
@ eSIMULATION_MESH
Renders the simulation mesh instead of the collision mesh (only available for tetmeshes)
Definition PxVisualizationParameter.h:232
@ eBODY_ANG_VELOCITY
Visualize the bodies angular velocity.
Definition PxVisualizationParameter.h:130
@ eSDF
Renders the SDF of a mesh instead of the collision mesh (only available for triangle meshes with SDFs...
Definition PxVisualizationParameter.h:237
@ eCOLLISION_COMPOUNDS
Compound visualization (compound AABBs in world space)
Definition PxVisualizationParameter.h:183
@ eMBP_REGIONS
MBP regions.
Definition PxVisualizationParameter.h:227
@ eCOLLISION_EDGES
Active edges for meshes.
Definition PxVisualizationParameter.h:197
@ eACTOR_AXES
Visualize actor axes.
Definition PxVisualizationParameter.h:159
@ eCOLLISION_AABBS
Visualize bounds (AABBs in world space)
Definition PxVisualizationParameter.h:164
@ eCOLLISION_SHAPES
Shape visualization.
Definition PxVisualizationParameter.h:171
@ eCONTACT_ERROR
Visualize contact errors. Will enable contact information.
Definition PxVisualizationParameter.h:147
@ eNUM_VALUES
This is not a parameter, it just records the current number of parameters (as maximum(PxVisualization...
Definition PxVisualizationParameter.h:242
@ eSCALE
This overall visualization scale gets multiplied with the individual scales. Setting to zero ignores ...
Definition PxVisualizationParameter.h:91
@ eWORLD_AXES
Visualize the world axes.
Definition PxVisualizationParameter.h:96
@ eCONTACT_FORCE
Visualize Contact forces. Will enable contact information.
Definition PxVisualizationParameter.h:152
@ eCOLLISION_STATIC
Static pruning structures.
Definition PxVisualizationParameter.h:202
@ eCONTACT_POINT
Visualize contact points. Will enable contact information.
Definition PxVisualizationParameter.h:137
@ eCOLLISION_FNORMALS
Mesh & convex face normals.
Definition PxVisualizationParameter.h:190
@ eBODY_MASS_AXES
Visualize a body's mass axes.
Definition PxVisualizationParameter.h:116
@ eCOLLISION_DYNAMIC
Dynamic pruning structures.
Definition PxVisualizationParameter.h:207
@ eCOLLISION_AXES
Shape axis visualization.
Definition PxVisualizationParameter.h:178
@ eBODY_LIN_VELOCITY
Visualize the bodies linear velocity.
Definition PxVisualizationParameter.h:123
@ eJOINT_LIMITS
Joint limits.
Definition PxVisualizationParameter.h:217
@ eCONTACT_NORMAL
Visualize contact normals. Will enable contact information.
Definition PxVisualizationParameter.h:142
@ eCULL_BOX
Visualize culling box.
Definition PxVisualizationParameter.h:222
@ eBODY_AXES
Visualize a bodies axes.
Definition PxVisualizationParameter.h:105