00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef PARAMETERIZED_H
00030 #define PARAMETERIZED_H
00031
00032 namespace physx
00033 {
00034 class physx::PxVec3;
00035 class physx::PxQuat;
00036 class physx::PxMat33Legacy;
00037 class physx::PxMat34Legacy;
00038 class physx::PxBounds3;
00039 };
00040
00041 class physx::PxI64;
00042 class physx::PxI32;
00043 class physx::PxI16;
00044 class physx::PxI8;
00045
00046 class PxU64;
00047 class physx::PxU32;
00048 class PxU16;
00049 class PxU8;
00050
00051 class physx::PxF32;
00052 class physx::PxF64;
00053
00062 enum ColorChannel
00063 {
00064 red,
00065 green,
00066 blue,
00067 alpha,
00068 };
00069
00070
00074 enum DensityAdvection
00075 {
00076 ADVECTION_LINEAR,
00077 ADVECTION_MACCORMACK,
00078 };
00079
00080
00084 enum EmitterType
00085 {
00086 rate,
00087 densityOnce,
00088 densityBrush,
00089 fill,
00090 };
00091
00092
00096 enum FieldFormat
00097 {
00098 FLOAT,
00099 HALF,
00100 UCHAR,
00101 FLOAT4,
00102 HALF4,
00103 UCHAR4,
00104 };
00105
00106
00110 enum FieldType
00111 {
00112 FORCE,
00113 VELOCITY_DRAG,
00114 VELOCITY_DIRECT,
00115 };
00116
00117
00121 enum FillMode
00122 {
00123 SOLID,
00124 WIREFRAME,
00125 };
00126
00127
00131 enum ImpactAxis
00132 {
00133 incident,
00134 normal,
00135 reflection,
00136 };
00137
00138
00142 enum Max
00143 {
00144 EGR_12,
00145 EGR_16,
00146 EGR_24,
00147 EGR_32,
00148 EGR_48,
00149 EGR_64,
00150 EGR_96,
00151 EGR_128,
00152 };
00153
00154
00158 enum Min
00159 {
00160 EGR_12,
00161 EGR_16,
00162 EGR_24,
00163 EGR_32,
00164 EGR_48,
00165 EGR_64,
00166 EGR_96,
00167 EGR_128,
00168 };
00169
00170
00174 enum NoiseType
00175 {
00176 SIMPLEX,
00177 CURL,
00178 };
00179
00180
00184 enum PlaybackMode
00185 {
00186 LOOP,
00187 PLAY_ONCE,
00188 PING_PONG,
00189 };
00190
00191
00195 enum RenderMethod
00196 {
00197 RAYCASTING,
00198 SLICE_BASED,
00199 };
00200
00201
00205 enum RenderMode
00206 {
00207 VOLUME,
00208 VOLUME_COLORMAP,
00209 VOLUME_SHADOWED,
00210 VOXELS,
00211 ISOSURFACE,
00212 };
00213
00214
00218 enum RenderTechnique
00219 {
00220 SPRITE_ONE,
00221 SPRITE_ONE,
00222 SPRITE_ALPHA,
00223 SPRITE_SOLID,
00224 SPRITE_TEXTURE,
00225 SPRITE_WIREFRAME,
00226 };
00227
00228
00232 enum Resolution
00233 {
00234 GDG_8,
00235 GDG_16,
00236 GDG_32,
00237 GDG_64,
00238 GDG_128,
00239 GDG_256,
00240 };
00241
00242
00246 enum ResolutionScale
00247 {
00248 NO_SCALE,
00249 HALF_SCALE,
00250 QUARTER_SCALE,
00251 };
00252
00253
00257 enum RollType
00258 {
00259 SPHERICAL,
00260 CUBIC,
00261 FLAT_X,
00262 FLAT_Y,
00263 FLAT_Z,
00264 LONG_X,
00265 LONG_Y,
00266 LONG_Z,
00267 };
00268
00269
00273 enum RuntimeFractureType
00274 {
00275 VORONOI,
00276 GLASS,
00277 };
00278
00279
00283 enum ScaleAxis
00284 {
00285 xAxis,
00286 yAxis,
00287 zAxis,
00288 };
00289
00290
00294 enum Shape
00295 {
00296 sphere,
00297 capsule,
00298 cylinder,
00299 cone,
00300 box,
00301 none,
00302 };
00303
00304
00308 enum SimulationBackend
00309 {
00310 Default,
00311 ForceNative,
00312 ForceEmbedded,
00313 };
00314
00315
00319 enum SolverMode
00320 {
00321 SOLVER_JACOBI,
00322 SOLVER_MULTIGRID,
00323 };
00324
00325
00329 enum SortType
00330 {
00331 default,
00332 };
00333
00334
00338 enum Type
00339 {
00340 uniform,
00341 normal,
00342 };
00343
00344
00348 enum VelocityAdvection
00349 {
00350 ADVECTION_LINEAR,
00351 ADVECTION_MACCORMACK,
00352 };
00353
00371 struct ApexEmitterActorParameters
00372 {
00376 Mat34 initialPose;
00380 F32 initialScale;
00384 Mat34 attachRelativePose;
00391 Bool emitAssetParticles;
00398 String overlapTestGroupMaskName;
00405 String overlapTestGroupsMask128Name;
00412 F32 emitterDuration;
00413 };
00414
00415
00487 struct ApexEmitterAssetParameters
00488 {
00492 F32 densityRange.min;
00496 F32 densityRange.max;
00500 F32 rateRange.min;
00504 F32 rateRange.max;
00508 F32 lifetimeRange.min;
00512 F32 lifetimeRange.max;
00516 Vec3 velocityRange.min;
00520 Vec3 velocityRange.max;
00524 F32 temperatureRange.min;
00528 F32 temperatureRange.max;
00535 U32 maxSamples;
00539 U32 lodParamDesc.version;
00543 F32 lodParamDesc.maxDistance;
00547 F32 lodParamDesc.distanceWeight;
00551 F32 lodParamDesc.speedWeight;
00555 F32 lodParamDesc.lifeWeight;
00559 F32 lodParamDesc.separationWeight;
00563 F32 lodParamDesc.bias;
00567 Ref iofxAssetName;
00571 Ref iosAssetName;
00572 union GeometryType {
00576 EmitterGeomBoxParams geometryType;
00580 EmitterGeomSphereParams geometryType;
00584 EmitterGeomSphereShellParams geometryType;
00588 EmitterGeomCylinderParams geometryType;
00592 EmitterGeomExplicitParams geometryType;
00593 };
00594 GeometryType geometryType;
00601 F32 emitterDuration;
00608 U32 minSamplingFPS;
00612 F32 rateVsTimeCurvePoints[].x;
00616 F32 rateVsTimeCurvePoints[].y;
00617 };
00618
00619
00634 struct AttractorFSActorParams
00635 {
00642 Mat34 initialPose;
00646 F32 initialScale;
00650 String fieldBoundaryFilterDataName;
00654 String fieldSamplerFilterDataName;
00655 };
00656
00657
00676 struct AttractorFSAssetParams
00677 {
00681 F32 boundaryFadePercentage;
00685 F32 radius;
00689 F32 constFieldStrength;
00696 F32 variableFieldStrength;
00700 F32 fieldDragCoeff;
00704 F32 fieldWeight;
00708 String fieldBoundaryFilterDataName;
00712 String fieldSamplerFilterDataName;
00713 };
00714
00715
00730 struct AttractorFSPreviewParams
00731 {
00735 Mat44 globalPose;
00739 Bool drawShape;
00743 Bool drawAssetInfo;
00747 U64 userData;
00748 };
00749
00750
00770 struct AttractorFieldSamplerData
00771 {
00775 String Name;
00779 AttractorFSAssetParams AttractorFieldSampler;
00780 };
00781
00782
00818 struct AttractorFieldSamplerEffect
00819 {
00823 String EffectProperties.UserString;
00827 Bool EffectProperties.Enable;
00831 F32 EffectProperties.Position.TranslateX;
00835 F32 EffectProperties.Position.TranslateY;
00839 F32 EffectProperties.Position.TranslateZ;
00843 F32 EffectProperties.Orientation.RotateX;
00847 F32 EffectProperties.Orientation.RotateY;
00851 F32 EffectProperties.Orientation.RotateZ;
00855 F32 EffectProperties.InitialDelayTime;
00859 F32 EffectProperties.Duration;
00863 U32 EffectProperties.RepeatCount;
00867 F32 EffectProperties.RepeatDelay;
00871 F32 EffectProperties.RandomizeRepeatTime;
00875 PlaybackMode EffectProperties.Path.PlaybackMode;
00879 F32 EffectProperties.Path.PathDuration;
00883 U32 EffectProperties.Path.LoopIndex;
00887 Transform EffectProperties.Path.ControlPoints[];
00891 F32 EffectProperties.Path.Scale[].x;
00895 F32 EffectProperties.Path.Scale[].y;
00899 F32 EffectProperties.Path.Speed[].x;
00903 F32 EffectProperties.Path.Speed[].y;
00907 Ref AttractorFieldSampler;
00908 };
00909
00910
00943 struct BasicFSDebugRenderParams
00944 {
00948 Bool VISUALIZE_JET_FS_ACTOR;
00952 Bool VISUALIZE_JET_FS_ACTOR_NAME;
00956 Bool VISUALIZE_JET_FS_SHAPE;
00960 Bool VISUALIZE_JET_FS_FIELD;
00964 Bool VISUALIZE_JET_FS_POSE;
00968 F32 JET_FS_FIELD_SCALE;
00972 Bool VISUALIZE_ATTRACTOR_FS_ACTOR;
00976 Bool VISUALIZE_ATTRACTOR_FS_ACTOR_NAME;
00980 Bool VISUALIZE_ATTRACTOR_FS_SHAPE;
00984 Bool VISUALIZE_ATTRACTOR_FS_FIELD;
00988 Bool VISUALIZE_ATTRACTOR_FS_POSE;
00992 Bool VISUALIZE_VORTEX_FS_ACTOR;
00996 Bool VISUALIZE_VORTEX_FS_ACTOR_NAME;
01000 Bool VISUALIZE_VORTEX_FS_SHAPE;
01004 Bool VISUALIZE_VORTEX_FS_FIELD;
01008 Bool VISUALIZE_VORTEX_FS_POSE;
01012 Bool VISUALIZE_NOISE_FS_ACTOR;
01016 Bool VISUALIZE_NOISE_FS_ACTOR_NAME;
01020 Bool VISUALIZE_NOISE_FS_SHAPE;
01024 Bool VISUALIZE_NOISE_FS_POSE;
01028 Bool VISUALIZE_WIND_FS_ACTOR;
01032 Bool VISUALIZE_WIND_FS_ACTOR_NAME;
01033 };
01034
01035
01047 struct BasicFSModuleParameters
01048 {
01052 U32 unused;
01053 };
01054
01055
01091 struct BasicIOSAssetParam
01092 {
01099 F32 restDensity;
01106 F32 particleRadius;
01110 U32 maxParticleCount;
01117 F32 maxInjectedParticleCount;
01124 U32 maxCollidingObjects;
01128 F32 sceneGravityScale;
01132 Vec3 externalAcceleration;
01136 F32 particleMass.center;
01143 F32 particleMass.spread;
01150 Type particleMass.type;
01154 String collisionFilterDataName;
01158 String fieldSamplerFilterDataName;
01162 Bool staticCollision;
01166 F32 restitutionForStaticShapes;
01170 Bool dynamicCollision;
01174 F32 restitutionForDynamicShapes;
01178 F32 collisionDistanceMultiplier;
01182 F32 collisionThreshold;
01186 Bool collisionWithConvex;
01190 Bool collisionWithTriangleMesh;
01197 Bool GridDensity.Enabled;
01204 Resolution GridDensity.Resolution;
01211 F32 GridDensity.GridSize;
01218 U32 GridDensity.MaxCellCount;
01222 Bool enableTemperatureBuffer;
01223 };
01224
01225
01239 struct BasicIosDebugRenderParams
01240 {
01244 Bool VISUALIZE_BASIC_IOS_ACTOR;
01248 Bool VISUALIZE_BASIC_IOS_COLLIDE_SHAPES;
01252 Bool VISUALIZE_BASIC_IOS_GRID_DENSITY;
01253 };
01254
01255
01267 struct BasicIosModuleParameters
01268 {
01272 U32 unused;
01273 };
01274
01275
01288 struct BufferF32x1
01289 {
01293 F32 data[];
01294 };
01295
01296
01310 struct BufferF32x2
01311 {
01315 F32 data[].x;
01319 F32 data[].y;
01320 };
01321
01322
01335 struct BufferF32x3
01336 {
01340 Vec3 data[];
01341 };
01342
01343
01359 struct BufferF32x4
01360 {
01364 F32 data[].x;
01368 F32 data[].y;
01372 F32 data[].z;
01376 F32 data[].w;
01377 };
01378
01379
01392 struct BufferU16x1
01393 {
01397 U16 data[];
01398 };
01399
01400
01414 struct BufferU16x2
01415 {
01419 U16 data[].x;
01423 U16 data[].y;
01424 };
01425
01426
01441 struct BufferU16x3
01442 {
01446 U16 data[].x;
01450 U16 data[].y;
01454 U16 data[].z;
01455 };
01456
01457
01473 struct BufferU16x4
01474 {
01478 U16 data[].x;
01482 U16 data[].y;
01486 U16 data[].z;
01490 U16 data[].w;
01491 };
01492
01493
01506 struct BufferU32x1
01507 {
01511 U32 data[];
01512 };
01513
01514
01528 struct BufferU32x2
01529 {
01533 U32 data[].x;
01537 U32 data[].y;
01538 };
01539
01540
01555 struct BufferU32x3
01556 {
01560 U32 data[].x;
01564 U32 data[].y;
01568 U32 data[].z;
01569 };
01570
01571
01587 struct BufferU32x4
01588 {
01592 U32 data[].x;
01596 U32 data[].y;
01600 U32 data[].z;
01604 U32 data[].w;
01605 };
01606
01607
01620 struct BufferU8x1
01621 {
01625 U8 data[];
01626 };
01627
01628
01642 struct BufferU8x2
01643 {
01647 U8 data[].x;
01651 U8 data[].y;
01652 };
01653
01654
01669 struct BufferU8x3
01670 {
01674 U8 data[].x;
01678 U8 data[].y;
01682 U8 data[].z;
01683 };
01684
01685
01701 struct BufferU8x4
01702 {
01706 U8 data[].x;
01710 U8 data[].y;
01714 U8 data[].z;
01718 U8 data[].w;
01719 };
01720
01721
01736 struct CachedOverlaps
01737 {
01744 Bool isCached;
01748 I32 overlaps[].i0;
01752 I32 overlaps[].i1;
01753 };
01754
01755
01856 struct ClothingActorParam
01857 {
01861 Mat44 globalPose;
01865 Bool useHardwareCloth;
01872 Bool flags.ParallelCpuSkinning;
01879 Bool flags.RecomputeNormals;
01886 Bool flags.RecomputeTangents;
01890 Bool flags.Visualize;
01897 Bool flags.CorrectSimulationNormals;
01901 Bool flags.ComputeRenderData;
01905 Bool flags.ComputePhysicsMeshNormals;
01912 Bool fallbackSkinning;
01919 Bool slowStart;
01926 Bool useInternalBoneOrder;
01933 Bool updateStateWithGlobalMatrices;
01940 U32 uvChannelForTangentUpdate;
01947 F32 maxDistanceBlendTime;
01951 U32 clothingMaterialIndex;
01955 F32 lodWeights.maxDistance;
01959 F32 lodWeights.distanceWeight;
01963 F32 lodWeights.bias;
01967 F32 lodWeights.benefitsBias;
01971 Vec3 windParams.Velocity;
01978 F32 windParams.Adaption;
01982 F32 maxDistanceScale.Scale;
01986 Bool maxDistanceScale.Multipliable;
01990 U64 userData;
01997 Mat44 boneMatrices[];
02004 F32 clothDescTemplate.collisionResponseCoefficient;
02008 U16 clothDescTemplate.collisionGroup;
02012 U32 clothDescTemplate.groupsMask.bits0;
02016 U32 clothDescTemplate.groupsMask.bits1;
02020 U32 clothDescTemplate.groupsMask.bits2;
02024 U32 clothDescTemplate.groupsMask.bits3;
02031 Bounds3 clothDescTemplate.validBounds;
02038 U64 clothDescTemplate.compartment;
02042 U64 clothDescTemplate.userData;
02046 Bool shapeDescTemplate.flags.NX_SF_VISUALIZATION;
02050 Bool shapeDescTemplate.flags.NX_SF_DISABLE_COLLISION;
02054 Bool shapeDescTemplate.flags.NX_SF_DISABLE_RAYCASTING;
02058 Bool shapeDescTemplate.flags.NX_SF_DYNAMIC_DYNAMIC_CCD;
02065 Bool shapeDescTemplate.flags.NX_SF_DISABLE_SCENE_QUERIES;
02072 U16 shapeDescTemplate.collisionGroup;
02076 U32 shapeDescTemplate.groupsMask.bits0;
02080 U32 shapeDescTemplate.groupsMask.bits1;
02084 U32 shapeDescTemplate.groupsMask.bits2;
02088 U32 shapeDescTemplate.groupsMask.bits3;
02092 U16 shapeDescTemplate.materialIndex;
02096 U64 shapeDescTemplate.userData;
02100 U64 shapeDescTemplate.name;
02104 U64 actorDescTemplate.userData;
02108 U64 actorDescTemplate.name;
02112 F32 actorScale;
02116 ClothingCookedParam runtimeCooked;
02120 Vec3 morphDisplacements[];
02124 Vec3 morphPhysicalMeshNewPositions[];
02128 Vec3 morphGraphicalMeshNewPositions[];
02132 Bool allowAdaptiveTargetFrequency;
02136 Bool useVelocityClamping;
02140 Bounds3 vertexVelocityClamp;
02144 F32 pressure;
02148 Bool multiplyGlobalPoseIntoBones;
02152 String overrideMaterialNames[];
02156 SimulationBackend simulationBackend;
02160 Bool freezeByLOD;
02167 Bool localSpaceSim;
02174 I32 teleportMode;
02175 };
02176
02177
02521 struct ClothingAssetParameters
02522 {
02526 ClothingPhysicalMeshParameters physicalMeshes[];
02530 ClothingGraphicalLodParameters graphicalLods[];
02537 U32 simulation.hierarchicalLevels;
02544 F32 simulation.thickness;
02551 F32 simulation.virtualParticleDensity;
02555 Vec3 simulation.gravityDirection;
02562 F32 simulation.sleepLinearVelocity;
02569 Bool simulation.disableCCD;
02576 Bool simulation.untangling;
02583 Bool simulation.twowayInteraction;
02587 F32 simulation.restLengthScale;
02594 I32 bones[].internalIndex;
02598 I32 bones[].externalIndex;
02602 U32 bones[].numMeshReferenced;
02606 U32 bones[].numRigidBodiesReferenced;
02610 I32 bones[].parentIndex;
02614 Mat34 bones[].bindPose;
02618 String bones[].name;
02625 U32 bonesReferenced;
02632 U32 bonesReferencedByMesh;
02636 U32 rootBoneIndex;
02640 I32 boneActors[].boneIndex;
02644 U32 boneActors[].convexVerticesStart;
02648 U32 boneActors[].convexVerticesCount;
02652 F32 boneActors[].capsuleRadius;
02656 F32 boneActors[].capsuleHeight;
02660 Mat34 boneActors[].localPose;
02667 Vec3 boneVertices[];
02671 I32 boneSpheres[].boneIndex;
02675 F32 boneSpheres[].radius;
02679 Vec3 boneSpheres[].localPos;
02686 U16 boneSphereConnections[];
02690 I32 bonePlanes[].boneIndex;
02694 Vec3 bonePlanes[].n;
02698 F32 bonePlanes[].d;
02702 U32 collisionConvexes[];
02706 F32 cookedData[].scale;
02707 union CookedData {
02711 ClothingCookedParam cookedData;
02715 ClothingCookedPhysX3Param cookedData;
02716 };
02717 CookedData cookedData;
02724 Bounds3 boundingBox;
02728 ClothingMaterialLibraryParameters materialLibrary;
02732 U32 materialIndex;
02739 U32 interCollisionChannels;
02743 String toolString;
02744 };
02745
02746
02778 struct ClothingCookedParam
02779 {
02783 F32 actorScale;
02790 U8 convexCookedData[];
02794 U32 cookedPhysicalSubmeshes[].physicalMeshId;
02798 U32 cookedPhysicalSubmeshes[].submeshId;
02802 U32 cookedPhysicalSubmeshes[].cookedDataOffset;
02806 U32 cookedPhysicalSubmeshes[].cookedDataLength;
02810 U32 cookedPhysicalSubmeshes[].deformableInvParticleWeightsOffset;
02814 U32 cookedPhysicalSubmeshes[].virtualParticleIndicesOffset;
02818 U32 cookedPhysicalSubmeshes[].virtualParticleIndicesLength;
02822 U8 deformableCookedData[];
02829 U32 cookedDataVersion;
02833 F32 deformableInvParticleWeights[];
02837 U32 virtualParticleIndices[];
02841 Vec3 virtualParticleWeights[];
02842 };
02843
02844
02891 struct ClothingCookedPhysX3Param
02892 {
02896 U32 physicalMeshId;
02900 U32 physicalSubMeshId;
02904 U32 numVertices;
02908 F32 deformableRestLengths[];
02912 U32 deformableIndices[];
02916 U32 selfCollisionIndices[];
02920 U32 selfCollisionNormalIndices[];
02924 U32 selfCollisionNormalSetSizes[];
02928 U32 deformableSets[].fiberEnd;
02932 U32 deformableSets[].longestFiber;
02936 U32 deformableSets[].shortestFiber;
02940 U32 deformableSets[].numEdges;
02944 F32 deformableSets[].avgEdgeLength;
02948 U32 deformableSets[].avgFiberLength;
02952 U32 deformablePhaseDescs[].phaseType;
02956 U32 deformablePhaseDescs[].setIndex;
02960 U32 deformablePhaseDescs[].restValueOffset;
02964 U32 tetherAnchors[];
02968 F32 tetherLengths[];
02972 F32 deformableInvVertexWeights[];
02976 U32 virtualParticleIndices[];
02980 F32 virtualParticleWeights[];
02984 U32 cookedDataVersion;
02988 ClothingCookedPhysX3Param nextCookedData;
02989 };
02990
02991
03043 struct ClothingDebugRenderParams
03044 {
03048 Bool Actors;
03052 F32 SkinnedPositions;
03056 Bool Backstop;
03060 F32 BackstopPrecise;
03064 Bool MaxDistance;
03068 Bool MaxDistanceInwards;
03072 Bool SkinMapAll;
03076 Bool SkinMapBad;
03080 Bool SkinMapActual;
03084 Bool SkinMapInvalidBary;
03088 F32 PhysicsMeshWire;
03092 F32 PhysicsMeshSolid;
03096 F32 PhysicsMeshNormals;
03100 Bool Skeleton;
03104 F32 BoneFrames;
03108 F32 BoneNames;
03112 F32 Velocities;
03116 F32 Wind;
03120 Bool GraphicalVertexBones;
03124 Bool PhysicalVertexBones;
03128 Bool CollisionShapes;
03132 Bool CollisionShapesWire;
03136 Bool LengthFibers;
03140 Bool CrossSectionFibers;
03144 Bool BendingFibers;
03148 Bool ShearingFibers;
03152 Bool ZerostretchFibers;
03156 Bool TethersActive;
03160 Bool TethersInactive;
03164 Bool VirtualCollision;
03168 Bool FiberRange;
03172 Bool ShowInLocalSpace;
03176 Bool GlobalPose;
03180 Bool RecomputeSubmeshes;
03184 Bool RecomputeVertices;
03188 Bool PhysicsMeshIndices;
03192 Bool MassScale;
03196 Bool SelfCollision;
03200 Bool SelfCollisionWire;
03207 F32 SelfCollisionAttenuation;
03214 Bool SolverMode;
03215 };
03216
03217
03345 struct ClothingGraphicalLodParameters
03346 {
03353 String platforms[];
03360 U32 lod;
03367 U32 physicalMeshId;
03371 RenderMeshAssetParameters renderMeshAsset;
03378 U32 immediateClothMap[];
03382 Vec3 skinClothMapB[].vtxTetraBary;
03386 U32 skinClothMapB[].vertexIndexPlusOffset;
03390 Vec3 skinClothMapB[].nrmTetraBary;
03394 U32 skinClothMapB[].faceIndex0;
03398 U32 skinClothMapB[].tetraIndex;
03405 U32 skinClothMapB[].submeshIndex;
03409 Vec3 skinClothMap[].vertexBary;
03413 U32 skinClothMap[].vertexIndex0;
03417 Vec3 skinClothMap[].normalBary;
03421 U32 skinClothMap[].vertexIndex1;
03425 Vec3 skinClothMap[].tangentBary;
03429 U32 skinClothMap[].vertexIndex2;
03433 U32 skinClothMap[].vertexIndexPlusOffset;
03440 F32 skinClothMapThickness;
03447 F32 skinClothMapOffset;
03451 Vec3 tetraMap[].vertexBary;
03455 U32 tetraMap[].tetraIndex0;
03459 Vec3 tetraMap[].normalBary;
03463 U32 tetraMap[]._dummyForAlignment;
03467 U32 renderMeshAssetSorting;
03471 U32 physicsSubmeshPartitioning[].graphicalSubmesh;
03475 U32 physicsSubmeshPartitioning[].physicalSubmesh;
03479 U32 physicsSubmeshPartitioning[].numSimulatedVertices;
03483 U32 physicsSubmeshPartitioning[].numSimulatedVerticesAdditional;
03487 U32 physicsSubmeshPartitioning[].numSimulatedIndices;
03488 };
03489
03490
03538 struct ClothingMaterialLibraryParameters
03539 {
03543 String materials[].materialName;
03547 F32 materials[].verticalStretchingStiffness;
03551 F32 materials[].horizontalStretchingStiffness;
03555 F32 materials[].bendingStiffness;
03559 F32 materials[].shearingStiffness;
03563 F32 materials[].tetherStiffness;
03567 F32 materials[].tetherLimit;
03574 Bool materials[].orthoBending;
03581 F32 materials[].verticalStiffnessScaling.compressionRange;
03588 F32 materials[].verticalStiffnessScaling.stretchRange;
03592 F32 materials[].verticalStiffnessScaling.scale;
03599 F32 materials[].horizontalStiffnessScaling.compressionRange;
03606 F32 materials[].horizontalStiffnessScaling.stretchRange;
03610 F32 materials[].horizontalStiffnessScaling.scale;
03617 F32 materials[].bendingStiffnessScaling.compressionRange;
03624 F32 materials[].bendingStiffnessScaling.stretchRange;
03628 F32 materials[].bendingStiffnessScaling.scale;
03635 F32 materials[].shearingStiffnessScaling.compressionRange;
03642 F32 materials[].shearingStiffnessScaling.stretchRange;
03646 F32 materials[].shearingStiffnessScaling.scale;
03650 F32 materials[].damping;
03654 F32 materials[].stiffnessFrequency;
03661 F32 materials[].drag;
03668 Bool materials[].comDamping;
03675 F32 materials[].friction;
03679 F32 materials[].massScale;
03686 U32 materials[].solverIterations;
03693 F32 materials[].solverFrequency;
03700 F32 materials[].gravityScale;
03707 F32 materials[].inertiaScale;
03714 F32 materials[].hardStretchLimitation;
03721 F32 materials[].maxDistanceBias;
03725 U32 materials[].hierarchicalSolverIterations;
03732 F32 materials[].selfcollisionThickness;
03739 F32 materials[].selfcollisionSquashScale;
03746 F32 materials[].selfcollisionStiffness;
03747 };
03748
03749
03771 struct ClothingModuleParameters
03772 {
03779 U32 maxNumCompartments;
03786 U32 maxUnusedPhysXResources;
03793 Bool allowAsyncCooking;
03800 Bool asyncFetchResults;
03804 U32 avgSimFrequencyWindow;
03811 Bool allowApexWorkBetweenSubsteps;
03818 F32 interCollisionDistance;
03822 F32 interCollisionStiffness;
03826 U32 interCollisionIterations;
03833 Bool sparseSelfCollision;
03837 U32 maxTimeRenderProxyInPool;
03838 };
03839
03840
03924 struct ClothingPhysicalMeshParameters
03925 {
03929 U32 physicalMesh.numVertices;
03933 U32 physicalMesh.numIndices;
03937 U32 physicalMesh.numBonesPerVertex;
03941 Vec3 physicalMesh.vertices[];
03948 Vec3 physicalMesh.normals[];
03955 Vec3 physicalMesh.skinningNormals[];
03959 F32 physicalMesh.constrainCoefficients[].maxDistance;
03963 F32 physicalMesh.constrainCoefficients[].collisionSphereRadius;
03967 F32 physicalMesh.constrainCoefficients[].collisionSphereDistance;
03974 U16 physicalMesh.boneIndices[];
03981 F32 physicalMesh.boneWeights[];
03988 U8 physicalMesh.optimizationData[];
03992 Bool physicalMesh.hasNegativeBackstop;
03996 Bool physicalMesh.isClosed;
04000 U32 physicalMesh.indices[];
04007 F32 physicalMesh.maximumMaxDistance;
04011 U32 physicalMesh.physicalMeshSorting;
04015 F32 physicalMesh.shortestEdgeLength;
04019 F32 physicalMesh.averageEdgeLength;
04023 Bool physicalMesh.isTetrahedralMesh;
04027 Bool physicalMesh.flipNormals;
04034 U32 submeshes[].numIndices;
04041 U32 submeshes[].numVertices;
04045 U32 submeshes[].numMaxDistance0Vertices;
04049 U32 physicalLods[].costWithoutIterations;
04053 U32 physicalLods[].submeshId;
04057 F32 physicalLods[].solverIterationScale;
04061 F32 physicalLods[].maxDistanceReduction;
04065 Vec3 transitionUpB[].vtxTetraBary;
04069 U32 transitionUpB[].vertexIndexPlusOffset;
04073 Vec3 transitionUpB[].nrmTetraBary;
04077 U32 transitionUpB[].faceIndex0;
04081 U32 transitionUpB[].tetraIndex;
04088 U32 transitionUpB[].submeshIndex;
04092 Vec3 transitionUp[].vertexBary;
04096 U32 transitionUp[].vertexIndex0;
04100 Vec3 transitionUp[].normalBary;
04104 U32 transitionUp[].vertexIndex1;
04108 Vec3 transitionUp[].tangentBary;
04112 U32 transitionUp[].vertexIndex2;
04116 U32 transitionUp[].vertexIndexPlusOffset;
04120 F32 transitionUpThickness;
04124 F32 transitionUpOffset;
04128 Vec3 transitionDownB[].vtxTetraBary;
04132 U32 transitionDownB[].vertexIndexPlusOffset;
04136 Vec3 transitionDownB[].nrmTetraBary;
04140 U32 transitionDownB[].faceIndex0;
04144 U32 transitionDownB[].tetraIndex;
04151 U32 transitionDownB[].submeshIndex;
04155 Vec3 transitionDown[].vertexBary;
04159 U32 transitionDown[].vertexIndex0;
04163 Vec3 transitionDown[].normalBary;
04167 U32 transitionDown[].vertexIndex1;
04171 Vec3 transitionDown[].tangentBary;
04175 U32 transitionDown[].vertexIndex2;
04179 U32 transitionDown[].vertexIndexPlusOffset;
04183 F32 transitionDownThickness;
04187 F32 transitionDownOffset;
04191 U32 referenceCount;
04192 };
04193
04194
04212 struct ClothingPreviewParam
04213 {
04217 Mat44 globalPose;
04224 Bool fallbackSkinning;
04231 Bool useInternalBoneOrder;
04238 Bool updateStateWithGlobalMatrices;
04242 U64 userData;
04249 Mat44 boneMatrices[];
04250 };
04251
04252
04266 struct ColorVsDensityCompositeModifierParams
04267 {
04271 F32 controlPoints[].density;
04275 Vec4 controlPoints[].color;
04276 };
04277
04278
04293 struct ColorVsDensityModifierParams
04294 {
04298 ColorChannel colorChannel;
04302 F32 controlPoints[].x;
04306 F32 controlPoints[].y;
04307 };
04308
04309
04323 struct ColorVsLifeCompositeModifierParams
04324 {
04328 F32 controlPoints[].lifeRemaining;
04332 Vec4 controlPoints[].color;
04333 };
04334
04335
04350 struct ColorVsLifeModifierParams
04351 {
04355 ColorChannel colorChannel;
04359 F32 controlPoints[].x;
04363 F32 controlPoints[].y;
04364 };
04365
04366
04380 struct ColorVsTemperatureCompositeModifierParams
04381 {
04385 F32 controlPoints[].temperature;
04389 Vec4 controlPoints[].color;
04390 };
04391
04392
04407 struct ColorVsTemperatureModifierParams
04408 {
04412 ColorChannel colorChannel;
04416 F32 controlPoints[].x;
04420 F32 controlPoints[].y;
04421 };
04422
04423
04439 struct ColorVsVelocityCompositeModifierParams
04440 {
04444 F32 velocity0;
04448 F32 velocity1;
04452 F32 controlPoints[].velocity;
04456 Vec4 controlPoints[].color;
04457 };
04458
04459
04476 struct ColorVsVelocityModifierParams
04477 {
04481 ColorChannel colorChannel;
04485 F32 velocity0;
04489 F32 velocity1;
04493 F32 controlPoints[].x;
04497 F32 controlPoints[].y;
04498 };
04499
04500
04526 struct ConvexHullParameters
04527 {
04534 Vec3 vertices[];
04541 Vec3 uniquePlanes[].normal;
04548 F32 uniquePlanes[].d;
04555 F32 widths[];
04562 U32 edges[];
04569 U32 adjacentFaces[];
04576 Bounds3 bounds;
04583 F32 volume;
04590 U32 uniqueEdgeDirectionCount;
04597 U32 planeCount;
04598 };
04599
04600
04647 struct DebugColorParams
04648 {
04652 U32 Default;
04656 U32 PoseArrows;
04660 U32 MeshStatic;
04664 U32 MeshDynamic;
04668 U32 Shape;
04672 U32 Text0;
04676 U32 Text1;
04680 U32 ForceArrowsLow;
04684 U32 ForceArrowsNorm;
04688 U32 ForceArrowsHigh;
04692 U32 Color0;
04696 U32 Color1;
04700 U32 Color2;
04704 U32 Color3;
04708 U32 Color4;
04712 U32 Color5;
04716 U32 Red;
04720 U32 Green;
04724 U32 Blue;
04728 U32 DarkRed;
04732 U32 DarkGreen;
04736 U32 DarkBlue;
04740 U32 LightRed;
04744 U32 LightGreen;
04748 U32 LightBlue;
04752 U32 Purple;
04756 U32 DarkPurple;
04760 U32 Yellow;
04764 U32 Orange;
04768 U32 Gold;
04772 U32 Emerald;
04776 U32 White;
04780 U32 Black;
04784 U32 Gray;
04788 U32 LightGray;
04792 U32 DarkGray;
04793 };
04794
04795
04942 struct DebugRenderParams
04943 {
04947 Bool Enable;
04951 F32 Scale;
04955 F32 LodBenefits;
04959 F32 RelativeLodBenefitsScreenPos;
04963 F32 RelativeLodBenefitsThickness;
04967 F32 LodDistanceScale;
04971 F32 RenderNormals;
04975 F32 RenderTangents;
04979 F32 RenderBitangents;
04983 Bool Bounds;
04984 union ModuleName {
04988 BasicFSDebugRenderParams moduleName[];
04992 BasicIosDebugRenderParams moduleName[];
04996 ParticleIosDebugRenderParams moduleName[];
05000 ClothingDebugRenderParams moduleName[];
05004 DestructibleDebugRenderParams moduleName[];
05008 EmitterDebugRenderParams moduleName[];
05012 ForceFieldDebugRenderParams moduleName[];
05016 IofxDebugRenderParams moduleName[];
05020 TurbulenceFSDebugRenderParams moduleName[];
05024 ParticlesDebugRenderParams moduleName[];
05025 };
05026 ModuleName moduleName[];
05027 };
05028
05029
05052 struct DestructibleActorChunks
05053 {
05060 U8 data[].state;
05067 U8 data[].flags;
05074 U32 data[].islandID;
05081 F32 data[].damage;
05088 Vec4 data[].localSphere;
05095 Vec3 data[].localOffset;
05102 I32 data[].visibleAncestorIndex;
05109 U32 data[].shapesCount;
05116 Transform data[].globalPose;
05123 Vec3 data[].linearVelocity;
05130 Vec3 data[].angularVelocity;
05131 };
05132
05133
05402 struct DestructibleActorParam
05403 {
05410 String crumbleEmitterName;
05417 F32 crumbleParticleSpacing;
05424 String dustEmitterName;
05431 F32 dustParticleSpacing;
05438 Mat34 globalPose;
05445 Vec3 scale;
05452 Bool dynamic;
05459 U32 supportDepth;
05466 Bool formExtendedStructures;
05473 Bool performDetailedOverlapTestForExtendedStructures;
05480 Bool keepPreviousFrameBoneBuffer;
05487 Bool doNotCreateRenderable;
05494 Bool useAssetDefinedSupport;
05501 Bool useWorldSupport;
05508 Bool renderStaticChunksSeparately;
05515 Bool keepVisibleBonesPacked;
05522 Bool createChunkEvents;
05529 String overrideSkinnedMaterialNames[];
05536 String overrideStaticMaterialNames[];
05543 F32 sleepVelocityFrameDecayConstant;
05550 Bool useHardSleeping;
05557 F32 destructibleParameters.damageCap;
05564 F32 destructibleParameters.forceToDamage;
05571 F32 destructibleParameters.impactVelocityThreshold;
05578 U32 destructibleParameters.minimumFractureDepth;
05585 I32 destructibleParameters.impactDamageDefaultDepth;
05592 I32 destructibleParameters.debrisDepth;
05599 U32 destructibleParameters.essentialDepth;
05606 F32 destructibleParameters.debrisLifetimeMin;
05613 F32 destructibleParameters.debrisLifetimeMax;
05620 F32 destructibleParameters.debrisMaxSeparationMin;
05627 F32 destructibleParameters.debrisMaxSeparationMax;
05634 F32 destructibleParameters.debrisDestructionProbability;
05641 Bounds3 destructibleParameters.validBounds;
05648 F32 destructibleParameters.maxChunkSpeed;
05655 Bool destructibleParameters.flags.ACCUMULATE_DAMAGE;
05662 Bool destructibleParameters.flags.DEBRIS_TIMEOUT;
05669 Bool destructibleParameters.flags.DEBRIS_MAX_SEPARATION;
05676 Bool destructibleParameters.flags.CRUMBLE_SMALLEST_CHUNKS;
05683 Bool destructibleParameters.flags.ACCURATE_RAYCASTS;
05690 Bool destructibleParameters.flags.USE_VALID_BOUNDS;
05697 Bool destructibleParameters.flags.CRUMBLE_VIA_RUNTIME_FRACTURE;
05704 F32 destructibleParameters.fractureImpulseScale;
05711 U16 destructibleParameters.damageDepthLimit;
05718 U16 destructibleParameters.dynamicChunkDominanceGroup;
05725 Bool destructibleParameters.dynamicChunksGroupsMask.useGroupsMask;
05732 U32 destructibleParameters.dynamicChunksGroupsMask.bits0;
05739 U32 destructibleParameters.dynamicChunksGroupsMask.bits1;
05746 U32 destructibleParameters.dynamicChunksGroupsMask.bits2;
05753 U32 destructibleParameters.dynamicChunksGroupsMask.bits3;
05757 RuntimeFractureType destructibleParameters.runtimeFracture.RuntimeFractureType;
05764 Bool destructibleParameters.runtimeFracture.sheetFracture;
05771 U32 destructibleParameters.runtimeFracture.depthLimit;
05778 Bool destructibleParameters.runtimeFracture.destroyIfAtDepthLimit;
05785 F32 destructibleParameters.runtimeFracture.minConvexSize;
05792 F32 destructibleParameters.runtimeFracture.impulseScale;
05799 U32 destructibleParameters.runtimeFracture.glass.numSectors;
05806 F32 destructibleParameters.runtimeFracture.glass.sectorRand;
05813 F32 destructibleParameters.runtimeFracture.glass.firstSegmentSize;
05820 F32 destructibleParameters.runtimeFracture.glass.segmentScale;
05827 F32 destructibleParameters.runtimeFracture.glass.segmentRand;
05834 Vec3 destructibleParameters.runtimeFracture.voronoi.dimensions;
05841 U32 destructibleParameters.runtimeFracture.voronoi.numCells;
05848 F32 destructibleParameters.runtimeFracture.voronoi.biasExp;
05855 F32 destructibleParameters.runtimeFracture.voronoi.maxDist;
05862 Bool destructibleParameters.runtimeFracture.attachment.posX;
05869 Bool destructibleParameters.runtimeFracture.attachment.negX;
05876 Bool destructibleParameters.runtimeFracture.attachment.posY;
05883 Bool destructibleParameters.runtimeFracture.attachment.negY;
05890 Bool destructibleParameters.runtimeFracture.attachment.posZ;
05897 Bool destructibleParameters.runtimeFracture.attachment.negZ;
05904 F32 destructibleParameters.supportStrength;
05911 I8 destructibleParameters.legacyChunkBoundsTestSetting;
05918 I8 destructibleParameters.legacyDamageRadiusSpreadSetting;
05925 Bool depthParameters[].OVERRIDE_IMPACT_DAMAGE;
05932 Bool depthParameters[].OVERRIDE_IMPACT_DAMAGE_VALUE;
05939 Bool depthParameters[].IGNORE_POSE_UPDATES;
05946 Bool depthParameters[].IGNORE_RAYCAST_CALLBACKS;
05953 Bool depthParameters[].IGNORE_CONTACT_CALLBACKS;
05960 Bool depthParameters[].USER_FLAG_0;
05967 Bool depthParameters[].USER_FLAG_1;
05974 Bool depthParameters[].USER_FLAG_2;
05981 Bool depthParameters[].USER_FLAG_3;
05988 Bool shapeDescTemplate.flags.NX_TRIGGER_ON_ENTER;
05995 Bool shapeDescTemplate.flags.NX_TRIGGER_ON_LEAVE;
06002 Bool shapeDescTemplate.flags.NX_TRIGGER_ON_STAY;
06009 Bool shapeDescTemplate.flags.NX_SF_VISUALIZATION;
06016 Bool shapeDescTemplate.flags.NX_SF_DISABLE_COLLISION;
06023 Bool shapeDescTemplate.flags.NX_SF_FEATURE_INDICES;
06030 Bool shapeDescTemplate.flags.NX_SF_DISABLE_RAYCASTING;
06037 Bool shapeDescTemplate.flags.NX_SF_POINT_CONTACT_FORCE;
06044 Bool shapeDescTemplate.flags.NX_SF_FLUID_DRAIN;
06051 Bool shapeDescTemplate.flags.NX_SF_FLUID_DISABLE_COLLISION;
06058 Bool shapeDescTemplate.flags.NX_SF_FLUID_TWOWAY;
06065 Bool shapeDescTemplate.flags.NX_SF_DISABLE_RESPONSE;
06072 Bool shapeDescTemplate.flags.NX_SF_DYNAMIC_DYNAMIC_CCD;
06079 Bool shapeDescTemplate.flags.NX_SF_DISABLE_SCENE_QUERIES;
06086 Bool shapeDescTemplate.flags.NX_SF_CLOTH_DRAIN;
06093 Bool shapeDescTemplate.flags.NX_SF_CLOTH_DISABLE_COLLISION;
06100 Bool shapeDescTemplate.flags.NX_SF_CLOTH_TWOWAY;
06107 Bool shapeDescTemplate.flags.NX_SF_SOFTBODY_DRAIN;
06114 Bool shapeDescTemplate.flags.NX_SF_SOFTBODY_DISABLE_COLLISION;
06121 Bool shapeDescTemplate.flags.NX_SF_SOFTBODY_TWOWAY;
06128 U16 shapeDescTemplate.collisionGroup;
06135 Bool shapeDescTemplate.groupsMask.useGroupsMask;
06142 U32 shapeDescTemplate.groupsMask.bits0;
06149 U32 shapeDescTemplate.groupsMask.bits1;
06156 U32 shapeDescTemplate.groupsMask.bits2;
06163 U32 shapeDescTemplate.groupsMask.bits3;
06170 U16 shapeDescTemplate.materialIndex;
06177 F32 shapeDescTemplate.density;
06184 F32 shapeDescTemplate.skinWidth;
06191 U64 shapeDescTemplate.userData;
06198 U64 shapeDescTemplate.name;
06205 Bool actorDescTemplate.flags.NX_AF_DISABLE_COLLISION;
06212 Bool actorDescTemplate.flags.NX_AF_DISABLE_RESPONSE;
06219 Bool actorDescTemplate.flags.NX_AF_LOCK_COM;
06226 Bool actorDescTemplate.flags.NX_AF_FLUID_DISABLE_COLLISION;
06233 Bool actorDescTemplate.flags.NX_AF_CONTACT_MODIFICATION;
06240 Bool actorDescTemplate.flags.NX_AF_FORCE_CONE_FRICTION;
06247 Bool actorDescTemplate.flags.NX_AF_USER_ACTOR_PAIR_FILTERING;
06254 F32 actorDescTemplate.density;
06261 U16 actorDescTemplate.actorCollisionGroup;
06268 U16 actorDescTemplate.dominanceGroup;
06275 Bool actorDescTemplate.contactReportFlags.NX_IGNORE_PAIR;
06282 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_ON_START_TOUCH;
06289 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_ON_END_TOUCH;
06296 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_ON_TOUCH;
06303 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_ON_IMPACT;
06310 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_ON_ROLL;
06317 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_ON_SLIDE;
06324 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_FORCES;
06331 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_ON_START_TOUCH_FORCE_THRESHOLD;
06338 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_ON_END_TOUCH_FORCE_THRESHOLD;
06345 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_ON_TOUCH_FORCE_THRESHOLD;
06352 Bool actorDescTemplate.contactReportFlags.NX_NOTIFY_CONTACT_MODIFICATION;
06359 U16 actorDescTemplate.forceFieldMaterial;
06366 U64 actorDescTemplate.userData;
06373 U64 actorDescTemplate.name;
06380 U64 actorDescTemplate.compartment;
06387 Bool bodyDescTemplate.flags.NX_BF_DISABLE_GRAVITY;
06394 Bool bodyDescTemplate.flags.NX_BF_FILTER_SLEEP_VEL;
06401 Bool bodyDescTemplate.flags.NX_BF_ENERGY_SLEEP_TEST;
06408 Bool bodyDescTemplate.flags.NX_BF_VISUALIZATION;
06415 F32 bodyDescTemplate.wakeUpCounter;
06422 F32 bodyDescTemplate.linearDamping;
06429 F32 bodyDescTemplate.angularDamping;
06436 F32 bodyDescTemplate.maxAngularVelocity;
06443 F32 bodyDescTemplate.CCDMotionThreshold;
06450 F32 bodyDescTemplate.sleepLinearVelocity;
06457 F32 bodyDescTemplate.sleepAngularVelocity;
06464 U32 bodyDescTemplate.solverIterationCount;
06471 F32 bodyDescTemplate.sleepEnergyThreshold;
06478 F32 bodyDescTemplate.sleepDamping;
06485 F32 bodyDescTemplate.contactReportThreshold;
06489 Bool p3ShapeDescTemplate.flags.eSIMULATION_SHAPE;
06493 Bool p3ShapeDescTemplate.flags.eSCENE_QUERY_SHAPE;
06500 Bool p3ShapeDescTemplate.flags.eTRIGGER_SHAPE;
06504 Bool p3ShapeDescTemplate.flags.eVISUALIZATION;
06508 Bool p3ShapeDescTemplate.flags.ePARTICLE_DRAIN;
06512 Bool p3ShapeDescTemplate.flags.eDEFORMABLE_DRAIN;
06516 U32 p3ShapeDescTemplate.simulationFilterData.word0;
06520 U32 p3ShapeDescTemplate.simulationFilterData.word1;
06524 U32 p3ShapeDescTemplate.simulationFilterData.word2;
06528 U32 p3ShapeDescTemplate.simulationFilterData.word3;
06532 U32 p3ShapeDescTemplate.queryFilterData.word0;
06536 U32 p3ShapeDescTemplate.queryFilterData.word1;
06540 U32 p3ShapeDescTemplate.queryFilterData.word2;
06544 U32 p3ShapeDescTemplate.queryFilterData.word3;
06551 U64 p3ShapeDescTemplate.material;
06558 F32 p3ShapeDescTemplate.contactOffset;
06565 F32 p3ShapeDescTemplate.restOffset;
06572 U64 p3ShapeDescTemplate.userData;
06579 U64 p3ShapeDescTemplate.name;
06586 Bool p3ActorDescTemplate.flags.eVISUALIZATION;
06593 Bool p3ActorDescTemplate.flags.eDISABLE_GRAVITY;
06600 Bool p3ActorDescTemplate.flags.eSEND_SLEEP_NOTIFIES;
06607 U8 p3ActorDescTemplate.dominanceGroup;
06614 U8 p3ActorDescTemplate.ownerClient;
06621 U32 p3ActorDescTemplate.clientBehaviorBits;
06628 Bool p3ActorDescTemplate.contactReportFlags.eRESOLVE_CONTACTS;
06635 Bool p3ActorDescTemplate.contactReportFlags.eMODIFY_CONTACTS;
06642 Bool p3ActorDescTemplate.contactReportFlags.eNOTIFY_TOUCH_FOUND;
06649 Bool p3ActorDescTemplate.contactReportFlags.eNOTIFY_TOUCH_PERSISTS;
06656 Bool p3ActorDescTemplate.contactReportFlags.eNOTIFY_TOUCH_LOST;
06663 Bool p3ActorDescTemplate.contactReportFlags.eNOTIFY_THRESHOLD_FORCE_FOUND;
06670 Bool p3ActorDescTemplate.contactReportFlags.eNOTIFY_THRESHOLD_FORCE_PERSISTS;
06677 Bool p3ActorDescTemplate.contactReportFlags.eNOTIFY_THRESHOLD_FORCE_LOST;
06684 Bool p3ActorDescTemplate.contactReportFlags.eNOTIFY_CONTACT_POINTS;
06691 Bool p3ActorDescTemplate.contactReportFlags.eNOTIFY_CONTACT_FORCES;
06698 Bool p3ActorDescTemplate.contactReportFlags.eNOTIFY_CONTACT_FORCE_PER_POINT;
06705 Bool p3ActorDescTemplate.contactReportFlags.eNOTIFY_CONTACT_FEATURE_INDICES_PER_POINT;
06712 Bool p3ActorDescTemplate.contactReportFlags.eCCD_LINEAR;
06716 Bool p3ActorDescTemplate.contactReportFlags.eCONTACT_DEFAULT;
06720 Bool p3ActorDescTemplate.contactReportFlags.eTRIGGER_DEFAULT;
06727 U64 p3ActorDescTemplate.userData;
06734 U64 p3ActorDescTemplate.name;
06741 F32 p3BodyDescTemplate.density;
06748 Bool p3BodyDescTemplate.flags.eKINEMATIC;
06755 Bool p3BodyDescTemplate.flags.eENABLE_CCD;
06762 F32 p3BodyDescTemplate.sleepThreshold;
06769 F32 p3BodyDescTemplate.wakeUpCounter;
06776 F32 p3BodyDescTemplate.linearDamping;
06783 F32 p3BodyDescTemplate.angularDamping;
06790 F32 p3BodyDescTemplate.maxAngularVelocity;
06797 U32 p3BodyDescTemplate.solverIterationCount;
06804 U32 p3BodyDescTemplate.velocityIterationCount;
06811 F32 p3BodyDescTemplate.contactReportThreshold;
06818 F32 p3BodyDescTemplate.sleepLinearVelocity;
06825 Bool structureSettings.useStressSolver;
06832 F32 structureSettings.stressSolverTimeDelay;
06839 F32 structureSettings.stressSolverMassThreshold;
06846 String defaultBehaviorGroup.name;
06853 F32 defaultBehaviorGroup.damageThreshold;
06860 F32 defaultBehaviorGroup.damageToRadius;
06867 F32 defaultBehaviorGroup.damageSpread.minimumRadius;
06874 F32 defaultBehaviorGroup.damageSpread.radiusMultiplier;
06881 F32 defaultBehaviorGroup.damageSpread.falloffExponent;
06888 F32 defaultBehaviorGroup.damageColorSpread.minimumRadius;
06895 F32 defaultBehaviorGroup.damageColorSpread.radiusMultiplier;
06902 F32 defaultBehaviorGroup.damageColorSpread.falloffExponent;
06909 Vec4 defaultBehaviorGroup.damageColorChange;
06916 F32 defaultBehaviorGroup.materialStrength;
06923 F32 defaultBehaviorGroup.density;
06930 F32 defaultBehaviorGroup.fadeOut;
06937 F32 defaultBehaviorGroup.maxDepenetrationVelocity;
06944 Bool defaultBehaviorGroup.groupsMask.useGroupsMask;
06951 U32 defaultBehaviorGroup.groupsMask.bits0;
06958 U32 defaultBehaviorGroup.groupsMask.bits1;
06965 U32 defaultBehaviorGroup.groupsMask.bits2;
06972 U32 defaultBehaviorGroup.groupsMask.bits3;
06979 U64 defaultBehaviorGroup.userData;
06986 String behaviorGroups[].name;
06993 F32 behaviorGroups[].damageThreshold;
07000 F32 behaviorGroups[].damageToRadius;
07007 F32 behaviorGroups[].damageSpread.minimumRadius;
07014 F32 behaviorGroups[].damageSpread.radiusMultiplier;
07021 F32 behaviorGroups[].damageSpread.falloffExponent;
07028 F32 behaviorGroups[].damageColorSpread.minimumRadius;
07035 F32 behaviorGroups[].damageColorSpread.radiusMultiplier;
07042 F32 behaviorGroups[].damageColorSpread.falloffExponent;
07049 Vec4 behaviorGroups[].damageColorChange;
07056 F32 behaviorGroups[].materialStrength;
07063 F32 behaviorGroups[].density;
07070 F32 behaviorGroups[].fadeOut;
07077 F32 behaviorGroups[].maxDepenetrationVelocity;
07084 Bool behaviorGroups[].groupsMask.useGroupsMask;
07091 U32 behaviorGroups[].groupsMask.bits0;
07098 U32 behaviorGroups[].groupsMask.bits1;
07105 U32 behaviorGroups[].groupsMask.bits2;
07112 U32 behaviorGroups[].groupsMask.bits3;
07119 U64 behaviorGroups[].userData;
07126 Bool deleteChunksLeavingUserDefinedBB;
07133 Bool deleteChunksEnteringUserDefinedBB;
07134 };
07135
07136
07480 struct DestructibleActorState
07481 {
07488 Bool enableCrumbleEmitter;
07495 Bool enableDustEmitter;
07499 F32 internalLODWeights.maxDistance;
07503 F32 internalLODWeights.distanceWeight;
07507 F32 internalLODWeights.maxAge;
07511 F32 internalLODWeights.ageWeight;
07515 F32 internalLODWeights.bias;
07522 U32 lod;
07529 Bool forceLod;
07536 F32 destructibleParameters.damageCap;
07543 F32 destructibleParameters.forceToDamage;
07550 F32 destructibleParameters.impactVelocityThreshold;
07557 U32 destructibleParameters.minimumFractureDepth;
07564 I32 destructibleParameters.impactDamageDefaultDepth;
07571 I32 destructibleParameters.debrisDepth;
07578 U32 destructibleParameters.essentialDepth;
07585 F32 destructibleParameters.debrisLifetimeMin;
07592 F32 destructibleParameters.debrisLifetimeMax;
07599 F32 destructibleParameters.debrisMaxSeparationMin;
07606 F32 destructibleParameters.debrisMaxSeparationMax;
07613 F32 destructibleParameters.debrisDestructionProbability;
07620 Bounds3 destructibleParameters.validBounds;
07627 F32 destructibleParameters.maxChunkSpeed;
07634 Bool destructibleParameters.flags.ACCUMULATE_DAMAGE;
07641 Bool destructibleParameters.flags.DEBRIS_TIMEOUT;
07648 Bool destructibleParameters.flags.DEBRIS_MAX_SEPARATION;
07655 Bool destructibleParameters.flags.CRUMBLE_SMALLEST_CHUNKS;
07662 Bool destructibleParameters.flags.ACCURATE_RAYCASTS;
07669 Bool destructibleParameters.flags.USE_VALID_BOUNDS;
07676 Bool destructibleParameters.flags.CRUMBLE_VIA_RUNTIME_FRACTURE;
07683 F32 destructibleParameters.fractureImpulseScale;
07690 U16 destructibleParameters.damageDepthLimit;
07697 U16 destructibleParameters.dynamicChunkDominanceGroup;
07704 Bool destructibleParameters.dynamicChunksGroupsMask.useGroupsMask;
07711 U32 destructibleParameters.dynamicChunksGroupsMask.bits0;
07718 U32 destructibleParameters.dynamicChunksGroupsMask.bits1;
07725 U32 destructibleParameters.dynamicChunksGroupsMask.bits2;
07732 U32 destructibleParameters.dynamicChunksGroupsMask.bits3;
07736 RuntimeFractureType destructibleParameters.runtimeFracture.RuntimeFractureType;
07743 Bool destructibleParameters.runtimeFracture.sheetFracture;
07750 U32 destructibleParameters.runtimeFracture.depthLimit;
07757 Bool destructibleParameters.runtimeFracture.destroyIfAtDepthLimit;
07764 F32 destructibleParameters.runtimeFracture.minConvexSize;
07771 F32 destructibleParameters.runtimeFracture.impulseScale;
07778 U32 destructibleParameters.runtimeFracture.glass.numSectors;
07785 F32 destructibleParameters.runtimeFracture.glass.sectorRand;
07792 F32 destructibleParameters.runtimeFracture.glass.firstSegmentSize;
07799 F32 destructibleParameters.runtimeFracture.glass.segmentScale;
07806 F32 destructibleParameters.runtimeFracture.glass.segmentRand;
07813 Vec3 destructibleParameters.runtimeFracture.voronoi.dimensions;
07820 U32 destructibleParameters.runtimeFracture.voronoi.numCells;
07827 F32 destructibleParameters.runtimeFracture.voronoi.biasExp;
07834 F32 destructibleParameters.runtimeFracture.voronoi.maxDist;
07841 Bool destructibleParameters.runtimeFracture.attachment.posX;
07848 Bool destructibleParameters.runtimeFracture.attachment.negX;
07855 Bool destructibleParameters.runtimeFracture.attachment.posY;
07862 Bool destructibleParameters.runtimeFracture.attachment.negY;
07869 Bool destructibleParameters.runtimeFracture.attachment.posZ;
07876 Bool destructibleParameters.runtimeFracture.attachment.negZ;
07883 F32 destructibleParameters.supportStrength;
07890 I8 destructibleParameters.legacyChunkBoundsTestSetting;
07897 I8 destructibleParameters.legacyDamageRadiusSpreadSetting;
07904 U64 userData;
07908 DestructibleActorParam actorParameters;
07912 DestructibleActorChunks actorChunks;
07913 };
07914
07915
07935 struct DestructibleAssetCollisionDataSet
07936 {
07943 String assetName;
07950 U32 cookingPlatform;
07957 U32 cookingVersionNum;
07964 Vec3 scales[];
07968 MeshCookedCollisionStreamsAtScale meshCookedCollisionStreamsAtScale[];
07969 };
07970
07971
08312 struct DestructibleAssetParameters
08313 {
08320 String comments;
08327 U32 depthCount;
08334 U32 originalDepthCount;
08341 Bounds3 bounds;
08348 String defaultBehaviorGroup.name;
08355 F32 defaultBehaviorGroup.damageThreshold;
08362 F32 defaultBehaviorGroup.damageToRadius;
08369 F32 defaultBehaviorGroup.damageSpread.minimumRadius;
08376 F32 defaultBehaviorGroup.damageSpread.radiusMultiplier;
08383 F32 defaultBehaviorGroup.damageSpread.falloffExponent;
08390 F32 defaultBehaviorGroup.damageColorSpread.minimumRadius;
08397 F32 defaultBehaviorGroup.damageColorSpread.radiusMultiplier;
08404 F32 defaultBehaviorGroup.damageColorSpread.falloffExponent;
08411 Vec4 defaultBehaviorGroup.damageColorChange;
08418 F32 defaultBehaviorGroup.materialStrength;
08425 F32 defaultBehaviorGroup.density;
08432 F32 defaultBehaviorGroup.fadeOut;
08439 F32 defaultBehaviorGroup.maxDepenetrationVelocity;
08446 U64 defaultBehaviorGroup.userData;
08453 String behaviorGroups[].name;
08460 F32 behaviorGroups[].damageThreshold;
08467 F32 behaviorGroups[].damageToRadius;
08474 F32 behaviorGroups[].damageSpread.minimumRadius;
08481 F32 behaviorGroups[].damageSpread.radiusMultiplier;
08488 F32 behaviorGroups[].damageSpread.falloffExponent;
08495 F32 behaviorGroups[].damageColorSpread.minimumRadius;
08502 F32 behaviorGroups[].damageColorSpread.radiusMultiplier;
08509 F32 behaviorGroups[].damageColorSpread.falloffExponent;
08516 Vec4 behaviorGroups[].damageColorChange;
08523 F32 behaviorGroups[].materialStrength;
08530 F32 behaviorGroups[].density;
08537 F32 behaviorGroups[].fadeOut;
08544 F32 behaviorGroups[].maxDepenetrationVelocity;
08551 U64 behaviorGroups[].userData;
08558 I8 RTFractureBehaviorGroup;
08565 U16 chunks[].depth;
08572 U16 chunks[].parentIndex;
08579 U16 chunks[].firstChildIndex;
08586 U16 chunks[].numChildren;
08593 U16 chunks[].meshPartIndex;
08600 U16 chunks[].flags;
08607 Vec3 chunks[].surfaceNormal;
08614 I8 chunks[].behaviorGroupIndex;
08621 U16 chunks[].firstScatterMesh;
08628 U16 chunks[].scatterMeshCount;
08632 ConvexHullParameters chunkConvexHulls[];
08639 U32 chunkConvexHullStartIndices[];
08646 F32 destructibleParameters.damageCap;
08653 F32 destructibleParameters.forceToDamage;
08660 F32 destructibleParameters.impactVelocityThreshold;
08667 U32 destructibleParameters.minimumFractureDepth;
08674 I32 destructibleParameters.impactDamageDefaultDepth;
08681 I32 destructibleParameters.debrisDepth;
08688 U32 destructibleParameters.essentialDepth;
08695 F32 destructibleParameters.debrisLifetimeMin;
08702 F32 destructibleParameters.debrisLifetimeMax;
08709 F32 destructibleParameters.debrisMaxSeparationMin;
08716 F32 destructibleParameters.debrisMaxSeparationMax;
08723 F32 destructibleParameters.debrisDestructionProbability;
08730 Bounds3 destructibleParameters.validBounds;
08737 F32 destructibleParameters.maxChunkSpeed;
08744 Bool destructibleParameters.flags.ACCUMULATE_DAMAGE;
08751 Bool destructibleParameters.flags.DEBRIS_TIMEOUT;
08758 Bool destructibleParameters.flags.DEBRIS_MAX_SEPARATION;
08765 Bool destructibleParameters.flags.CRUMBLE_SMALLEST_CHUNKS;
08772 Bool destructibleParameters.flags.ACCURATE_RAYCASTS;
08779 Bool destructibleParameters.flags.USE_VALID_BOUNDS;
08786 Bool destructibleParameters.flags.CRUMBLE_VIA_RUNTIME_FRACTURE;
08793 F32 destructibleParameters.fractureImpulseScale;
08800 U16 destructibleParameters.damageDepthLimit;
08807 U16 destructibleParameters.dynamicChunkDominanceGroup;
08814 Bool destructibleParameters.dynamicChunksGroupsMask.useGroupsMask;
08821 U32 destructibleParameters.dynamicChunksGroupsMask.bits0;
08828 U32 destructibleParameters.dynamicChunksGroupsMask.bits1;
08835 U32 destructibleParameters.dynamicChunksGroupsMask.bits2;
08842 U32 destructibleParameters.dynamicChunksGroupsMask.bits3;
08846 RuntimeFractureType destructibleParameters.runtimeFracture.RuntimeFractureType;
08853 Bool destructibleParameters.runtimeFracture.sheetFracture;
08860 U32 destructibleParameters.runtimeFracture.depthLimit;
08867 Bool destructibleParameters.runtimeFracture.destroyIfAtDepthLimit;
08874 F32 destructibleParameters.runtimeFracture.minConvexSize;
08881 F32 destructibleParameters.runtimeFracture.impulseScale;
08888 U32 destructibleParameters.runtimeFracture.glass.numSectors;
08895 F32 destructibleParameters.runtimeFracture.glass.sectorRand;
08902 F32 destructibleParameters.runtimeFracture.glass.firstSegmentSize;
08909 F32 destructibleParameters.runtimeFracture.glass.segmentScale;
08916 F32 destructibleParameters.runtimeFracture.glass.segmentRand;
08923 Vec3 destructibleParameters.runtimeFracture.voronoi.dimensions;
08930 U32 destructibleParameters.runtimeFracture.voronoi.numCells;
08937 F32 destructibleParameters.runtimeFracture.voronoi.biasExp;
08944 F32 destructibleParameters.runtimeFracture.voronoi.maxDist;
08951 Bool destructibleParameters.runtimeFracture.attachment.posX;
08958 Bool destructibleParameters.runtimeFracture.attachment.negX;
08965 Bool destructibleParameters.runtimeFracture.attachment.posY;
08972 Bool destructibleParameters.runtimeFracture.attachment.negY;
08979 Bool destructibleParameters.runtimeFracture.attachment.posZ;
08986 Bool destructibleParameters.runtimeFracture.attachment.negZ;
08993 F32 destructibleParameters.supportStrength;
09000 I8 destructibleParameters.legacyChunkBoundsTestSetting;
09007 I8 destructibleParameters.legacyDamageRadiusSpreadSetting;
09014 Bool depthParameters[].OVERRIDE_IMPACT_DAMAGE;
09021 Bool depthParameters[].OVERRIDE_IMPACT_DAMAGE_VALUE;
09028 Bool depthParameters[].IGNORE_POSE_UPDATES;
09035 Bool depthParameters[].IGNORE_RAYCAST_CALLBACKS;
09042 Bool depthParameters[].IGNORE_CONTACT_CALLBACKS;
09049 Bool depthParameters[].USER_FLAG_0;
09056 Bool depthParameters[].USER_FLAG_1;
09063 Bool depthParameters[].USER_FLAG_2;
09070 Bool depthParameters[].USER_FLAG_3;
09077 String crumbleEmitterName;
09084 String dustEmitterName;
09088 DestructibleAssetCollisionDataSet collisionData;
09092 RenderMeshAssetParameters renderMeshAsset;
09099 U32 initialDestructibleActorAllowanceForInstancing;
09106 U16 chunkInstanceInfo[].partIndex;
09113 Vec3 chunkInstanceInfo[].chunkPositionOffset;
09120 Vec2 chunkInstanceInfo[].chunkUVOffset;
09127 String staticMaterialNames[];
09134 F32 neighborPadding;
09138 CachedOverlaps overlapsAtDepth[];
09145 U32 firstChunkAtDepth[];
09152 U32 supportDepth;
09159 Bool formExtendedStructures;
09166 Bool useAssetDefinedSupport;
09173 Bool useWorldSupport;
09180 Mat44 actorTransforms[];
09184 RenderMeshAssetParameters scatterMeshAssets[];
09191 U8 scatterMeshIndices[];
09198 Mat33 scatterMeshTransforms[].matrix;
09205 Vec3 scatterMeshTransforms[].vector;
09206 };
09207
09208
09228 struct DestructibleDebugRenderParams
09229 {
09233 Bool VISUALIZE_DESTRUCTIBLE_ACTOR;
09237 F32 VISUALIZE_DESTRUCTIBLE_BOUNDS;
09241 F32 VISUALIZE_DESTRUCTIBLE_SUPPORT;
09245 Bool VISUALIZE_DESTRUCTIBLE_ACTOR_POSE;
09249 F32 THRESHOLD_DISTANCE_DESTRUCTIBLE_ACTOR_POSE;
09253 Bool VISUALIZE_DESTRUCTIBLE_ACTOR_NAME;
09257 F32 THRESHOLD_DISTANCE_DESTRUCTIBLE_ACTOR_NAME;
09261 Bool VISUALIZE_DESTRUCTIBLE_FRAGMENT_POSE;
09265 F32 THRESHOLD_DISTANCE_DESTRUCTIBLE_FRAGMENT_POSE;
09266 };
09267
09268
09287 struct DestructibleModuleParameters
09288 {
09292 U32 maxDynamicChunkIslandCount;
09296 Bool sortFIFOByBenefit;
09300 F32 validBoundsPadding;
09307 F32 maxChunkSeparationLOD;
09311 U32 maxActorCreatesPerFrame;
09318 U32 maxChunkDepthOffset;
09325 F32 massScale;
09332 F32 scaledMassExponent;
09333 };
09334
09335
09355 struct DestructiblePreviewParam
09356 {
09363 Mat44 globalPose;
09370 U32 chunkDepth;
09377 F32 explodeAmount;
09384 Bool renderUnexplodedChunksStatically;
09391 String overrideSkinnedMaterialNames[];
09398 String overrideStaticMaterialNames[];
09402 U64 userData;
09403 };
09404
09405
09419 struct EffectPackageActorParams
09420 {
09424 Transform InitialPose;
09428 F32 objectScale;
09432 Bool Enabled;
09433 };
09434
09435
09798 struct EffectPackageAssetParams
09799 {
09803 Bool LODSettings.UniqueRenderVolume;
09807 F32 LODSettings.FadeDistanceBegin;
09811 F32 LODSettings.FadeDistanceEnd;
09815 Bool LODSettings.RandomizeEmitterRate;
09819 F32 LODSettings.FadeOutRate;
09823 Bool LODSettings.CullByDistance;
09827 Bool LODSettings.CullOffScreen;
09831 F32 LODSettings.OffScreenCullTime;
09835 F32 LODSettings.NonVisibleDeleteTime;
09839 F32 LODSettings.ScreenCullSize;
09843 F32 LODSettings.ScreenCullDistance;
09847 Bool LODSettings.FadeEmitterRate;
09851 Bool LODSettings.FadeAttractorFieldStrength;
09855 Bool LODSettings.FadeJetFieldStrength;
09859 Bool LODSettings.FadeTurbulenceVelocity;
09863 Bool LODSettings.FadeTurbulenceNoise;
09867 Bool LODSettings.FadeTurbulenceExternalVelocity;
09871 Bool LODSettings.FadeTurbulenceVelocityWeight;
09875 Bool LODSettings.FadeHeatSourceTemperature;
09879 Bool LODSettings.FadeForceFieldStrength;
09883 Bool LODSettings.FadeForceFieldScale;
09887 PlaybackMode Path.PlaybackMode;
09891 F32 Path.PathDuration;
09895 U32 Path.LoopIndex;
09899 Transform Path.ControlPoints[];
09903 F32 Path.Scale[].x;
09907 F32 Path.Scale[].y;
09911 F32 Path.Speed[].x;
09915 F32 Path.Speed[].y;
09916 union Effects {
09920 EmitterEffect Effects[];
09924 HeatSourceEffect Effects[];
09928 JetFieldSamplerEffect Effects[];
09932 AttractorFieldSamplerEffect Effects[];
09936 TurbulenceFieldSamplerEffect Effects[];
09940 ForceFieldEffect Effects[];
09944 NoiseFieldSamplerEffect Effects[];
09948 VortexFieldSamplerEffect Effects[];
09952 SubstanceSourceEffect Effects[];
09956 WindFieldSamplerEffect Effects[];
09960 RigidBodyEffect Effects[];
09964 VelocitySourceEffect Effects[];
09965 };
09966 Effects Effects[];
09967 };
09968
09969
10333 struct EffectPackageData
10334 {
10338 String Name;
10342 EffectPackageAssetParams EffectPackage;
10343 };
10344
10345
10710 struct EffectPackageDatabaseParams
10711 {
10715 EffectPackageData EffectPackages[];
10716 };
10717
10718
10788 struct EffectPackageEmitterDatabaseParams
10789 {
10793 EmitterData Emitters[];
10794 };
10795
10796
10988 struct EffectPackageFieldSamplerDatabaseParams
10989 {
10990 union FieldSamplers {
10994 AttractorFieldSamplerData FieldSamplers[];
10998 ForceFieldData FieldSamplers[];
11002 HeatSourceData FieldSamplers[];
11006 JetFieldSamplerData FieldSamplers[];
11010 TurbulenceFieldSamplerData FieldSamplers[];
11014 VortexFieldSamplerData FieldSamplers[];
11018 NoiseFieldSamplerData FieldSamplers[];
11022 SubstanceSourceData FieldSamplers[];
11026 WindFieldSamplerData FieldSamplers[];
11030 VelocitySourceData FieldSamplers[];
11031 };
11032 FieldSamplers FieldSamplers[];
11033 };
11034
11035
11099 struct EffectPackageGraphicsMaterialsParams
11100 {
11101 union GraphicsMaterials {
11105 GraphicsMaterialData GraphicsMaterials[];
11109 VolumeRenderMaterialData GraphicsMaterials[];
11110 };
11111 GraphicsMaterials GraphicsMaterials[];
11112 };
11113
11114
11274 struct EffectPackageIOFXDatabaseParams
11275 {
11279 GraphicsEffectData GraphicsEffects[];
11280 };
11281
11282
11352 struct EffectPackageIOSDatabaseParams
11353 {
11357 ParticleSimulationData ParticleSimulations[];
11358 };
11359
11360
11373 struct EmitterAssetPreviewParameters
11374 {
11378 Mat34 pose;
11382 F32 scale;
11383 };
11384
11385
11454 struct EmitterData
11455 {
11459 String Name;
11463 ApexEmitterAssetParameters Emitter;
11464 };
11465
11466
11493 struct EmitterDebugRenderParams
11494 {
11498 Bool apexEmitterParameters.VISUALIZE_APEX_EMITTER_ACTOR;
11502 Bool apexEmitterParameters.VISUALIZE_TOTAL_INJECTED_AABB;
11506 Bool apexEmitterParameters.VISUALIZE_APEX_EMITTER_ACTOR_POSE;
11510 F32 apexEmitterParameters.THRESHOLD_DISTANCE_APEX_EMITTER_ACTOR_POSE;
11514 Bool apexEmitterParameters.VISUALIZE_APEX_EMITTER_ACTOR_NAME;
11518 F32 apexEmitterParameters.THRESHOLD_DISTANCE_APEX_EMITTER_ACTOR_NAME;
11522 Bool groundEmitterParameters.VISUALIZE_GROUND_EMITTER_ACTOR;
11526 Bool groundEmitterParameters.VISUALIZE_GROUND_EMITTER_SPHERE;
11530 Bool groundEmitterParameters.VISUALIZE_GROUND_EMITTER_GRID;
11534 Bool groundEmitterParameters.VISUALIZE_GROUND_EMITTER_RAYCAST;
11538 Bool groundEmitterParameters.VISUALIZE_GROUND_EMITTER_ACTOR_POSE;
11542 Bool groundEmitterParameters.VISUALIZE_GROUND_EMITTER_ACTOR_NAME;
11546 Bool impactEmitterParameters.VISUALIZE_IMPACT_EMITTER_ACTOR;
11550 Bool impactEmitterParameters.VISUALIZE_IMPACT_EMITTER_RAYCAST;
11554 Bool impactEmitterParameters.VISUALIZE_IMPACT_EMITTER_ACTOR_NAME;
11558 F32 impactEmitterParameters.THRESHOLD_DISTANCE_IMPACT_EMITTER_ACTOR_NAME;
11559 };
11560
11561
11607 struct EmitterEffect
11608 {
11612 String EffectProperties.UserString;
11616 Bool EffectProperties.Enable;
11620 F32 EffectProperties.Position.TranslateX;
11624 F32 EffectProperties.Position.TranslateY;
11628 F32 EffectProperties.Position.TranslateZ;
11632 F32 EffectProperties.Orientation.RotateX;
11636 F32 EffectProperties.Orientation.RotateY;
11640 F32 EffectProperties.Orientation.RotateZ;
11644 F32 EffectProperties.InitialDelayTime;
11648 F32 EffectProperties.Duration;
11652 U32 EffectProperties.RepeatCount;
11656 F32 EffectProperties.RepeatDelay;
11660 F32 EffectProperties.RandomizeRepeatTime;
11664 PlaybackMode EffectProperties.Path.PlaybackMode;
11668 F32 EffectProperties.Path.PathDuration;
11672 U32 EffectProperties.Path.LoopIndex;
11676 Transform EffectProperties.Path.ControlPoints[];
11680 F32 EffectProperties.Path.Scale[].x;
11684 F32 EffectProperties.Path.Scale[].y;
11688 F32 EffectProperties.Path.Speed[].x;
11692 F32 EffectProperties.Path.Speed[].y;
11696 Bool EmitterVelocityChanges.AdjustLifetime.AdjustEnabled;
11700 F32 EmitterVelocityChanges.AdjustLifetime.VelocityLow;
11704 F32 EmitterVelocityChanges.AdjustLifetime.VelocityHigh;
11708 F32 EmitterVelocityChanges.AdjustLifetime.LowValue;
11712 F32 EmitterVelocityChanges.AdjustLifetime.HighValue;
11716 Bool EmitterVelocityChanges.AdjustEmitterRate.AdjustEnabled;
11720 F32 EmitterVelocityChanges.AdjustEmitterRate.VelocityLow;
11724 F32 EmitterVelocityChanges.AdjustEmitterRate.VelocityHigh;
11728 F32 EmitterVelocityChanges.AdjustEmitterRate.LowValue;
11732 F32 EmitterVelocityChanges.AdjustEmitterRate.HighValue;
11736 Ref Emitter;
11737 };
11738
11739
11752 struct EmitterGeomBoxParams
11753 {
11760 EmitterType emitterType;
11764 Vec3 extents;
11765 };
11766
11767
11781 struct EmitterGeomCylinderParams
11782 {
11789 EmitterType emitterType;
11793 F32 radius;
11797 F32 height;
11798 };
11799
11800
11831 struct EmitterGeomExplicitParams
11832 {
11836 F32 distance;
11840 Vec3 points.positions[].position;
11844 Bool points.positions[].doDetectOverlaps;
11848 Vec3 points.velocities[];
11852 Vec3 spheres.positions[].center;
11856 F32 spheres.positions[].radius;
11860 Bool spheres.positions[].doDetectOverlaps;
11864 Vec3 spheres.velocities[];
11868 Vec3 ellipsoids.positions[].center;
11872 F32 ellipsoids.positions[].radius;
11876 Vec3 ellipsoids.positions[].normal;
11880 F32 ellipsoids.positions[].polarRadius;
11884 Bool ellipsoids.positions[].doDetectOverlaps;
11888 Vec3 ellipsoids.velocities[];
11889 };
11890
11891
11905 struct EmitterGeomSphereParams
11906 {
11913 EmitterType emitterType;
11917 F32 radius;
11921 F32 hemisphere;
11922 };
11923
11924
11939 struct EmitterGeomSphereShellParams
11940 {
11947 EmitterType emitterType;
11951 F32 radius;
11955 F32 shellThickness;
11959 F32 hemisphere;
11960 };
11961
11962
11974 struct EmitterModuleParameters
11975 {
11979 U32 unused;
11980 };
11981
11982
11994 struct FieldSamplerModuleParameters
11995 {
11999 U32 unused;
12000 };
12001
12002
12016 struct FieldSamplerPhysXMonitorParams
12017 {
12021 U32 maxRBCount;
12025 U32 maxPSCount;
12029 U32 maxParticleCount;
12030 };
12031
12045 struct FluidParticleSystemParams
12046 {
12053 F32 restParticleDistance;
12060 F32 stiffness;
12067 F32 viscosity;
12068 };
12069
12070
12085 struct ForceFieldActorParams
12086 {
12090 Mat44 initialPose;
12094 F32 scale;
12098 String fieldBoundaryFilterDataName;
12102 String fieldSamplerFilterDataName;
12103 };
12104
12105
12143 struct ForceFieldAssetParams
12144 {
12145 union ForceFieldKernelType {
12149 GenericForceFieldKernelParams forceFieldKernelType;
12153 RadialForceFieldKernelParams forceFieldKernelType;
12154 };
12155 ForceFieldKernelType forceFieldKernelType;
12159 F32 defScale;
12163 F32 strength;
12167 F32 lifetime;
12171 Shape includeShapeParameters.shape;
12175 Mat44 includeShapeParameters.forceFieldToShape;
12179 Vec3 includeShapeParameters.dimensions;
12183 String fieldBoundaryFilterDataName;
12187 String fieldSamplerFilterDataName;
12188 };
12189
12190
12206 struct ForceFieldAssetPreviewParams
12207 {
12211 Mat44 pose;
12215 F32 iconScale;
12219 Bool drawIcon;
12223 Bool drawBoundaries;
12227 Bool drawBold;
12228 };
12229
12230
12269 struct ForceFieldData
12270 {
12274 String Name;
12278 ForceFieldAssetParams ForceField;
12279 };
12280
12281
12293 struct ForceFieldDebugRenderParams
12294 {
12298 Bool VISUALIZE_FORCEFIELD_ACTOR;
12299 };
12300
12301
12337 struct ForceFieldEffect
12338 {
12342 String EffectProperties.UserString;
12346 Bool EffectProperties.Enable;
12350 F32 EffectProperties.Position.TranslateX;
12354 F32 EffectProperties.Position.TranslateY;
12358 F32 EffectProperties.Position.TranslateZ;
12362 F32 EffectProperties.Orientation.RotateX;
12366 F32 EffectProperties.Orientation.RotateY;
12370 F32 EffectProperties.Orientation.RotateZ;
12374 F32 EffectProperties.InitialDelayTime;
12378 F32 EffectProperties.Duration;
12382 U32 EffectProperties.RepeatCount;
12386 F32 EffectProperties.RepeatDelay;
12390 F32 EffectProperties.RandomizeRepeatTime;
12394 PlaybackMode EffectProperties.Path.PlaybackMode;
12398 F32 EffectProperties.Path.PathDuration;
12402 U32 EffectProperties.Path.LoopIndex;
12406 Transform EffectProperties.Path.ControlPoints[];
12410 F32 EffectProperties.Path.Scale[].x;
12414 F32 EffectProperties.Path.Scale[].y;
12418 F32 EffectProperties.Path.Speed[].x;
12422 F32 EffectProperties.Path.Speed[].y;
12426 Ref ForceField;
12427 };
12428
12429
12444 struct ForceFieldFalloffParams
12445 {
12449 Type type;
12453 F32 multiplier;
12457 F32 start;
12461 F32 end;
12462 };
12463
12464
12476 struct ForceFieldModuleParams
12477 {
12481 U32 unused;
12482 };
12483
12484
12499 struct ForceFieldNoiseParams
12500 {
12504 F32 strength;
12508 F32 spaceScale;
12512 F32 timeScale;
12516 U32 octaves;
12517 };
12518
12519
12540 struct GenericForceFieldKernelParams
12541 {
12545 Type coordinateSystemParameters.type;
12549 F32 coordinateSystemParameters.torusRadius;
12553 Vec3 constant;
12557 Mat33 positionMultiplier;
12561 Vec3 positionTarget;
12565 Mat33 velocityMultiplier;
12569 Vec3 velocityTarget;
12573 Vec3 noise;
12577 Vec3 falloffLinear;
12581 Vec3 falloffQuadratic;
12582 };
12583
12584
12743 struct GraphicsEffectData
12744 {
12748 String Name;
12752 IofxAssetParameters IOFX;
12753 };
12754
12755
12784 struct GraphicsMaterialData
12785 {
12789 String Name;
12793 String ApplicationMaterialName;
12797 String UserProperties;
12801 RenderTechnique RenderTechnique;
12805 String DiffuseTexture;
12809 U32 CellColumn;
12813 U32 CellRow;
12817 U32 CellCount;
12821 Bool CrossBlend;
12825 F32 ColorMultiplier;
12829 Bool UsePSM;
12833 Resolution Resolution;
12837 U32 FullResPercent;
12841 U32 HalfResPercent;
12845 F32 PSM_ShadowBias;
12849 Bool PSM_Frustum.ShowFrustum;
12853 F32 PSM_Frustum.FrustumDepth;
12857 F32 PSM_Frustum.FrustumSize;
12858 };
12859
12860
12881 struct GroundEmitterActorParameters
12882 {
12886 F32 densityRange.min;
12890 F32 densityRange.max;
12897 F32 radius;
12904 Vec3 upDirection;
12911 F32 raycastHeight;
12918 F32 spawnHeight;
12925 U32 maxRaycastsPerFrame;
12932 String raycastCollisionGroupMaskName;
12939 Vec3 attachRelativePosition;
12946 Mat34 globalPose;
12947 };
12948
12949
12984 struct GroundEmitterAssetParameters
12985 {
12989 F32 densityRange.min;
12993 F32 densityRange.max;
12997 Vec3 velocityRange.min;
13001 Vec3 velocityRange.max;
13005 F32 lifetimeRange.min;
13009 F32 lifetimeRange.max;
13016 F32 radius;
13023 F32 raycastHeight;
13030 F32 spawnHeight;
13037 U32 maxRaycastsPerFrame;
13044 String raycastCollisionGroupMaskName;
13048 Ref materialFactoryMapList[].iofxAssetName;
13052 Ref materialFactoryMapList[].iosAssetName;
13056 String materialFactoryMapList[].physMatName;
13060 F32 materialFactoryMapList[].weight;
13064 F32 materialFactoryMapList[].maxSlopeAngle;
13068 U32 materialFactoryMapList[].lodParamDesc.version;
13072 F32 materialFactoryMapList[].lodParamDesc.maxDistance;
13076 F32 materialFactoryMapList[].lodParamDesc.distanceWeight;
13080 F32 materialFactoryMapList[].lodParamDesc.speedWeight;
13084 F32 materialFactoryMapList[].lodParamDesc.lifeWeight;
13088 F32 materialFactoryMapList[].lodParamDesc.separationWeight;
13092 F32 materialFactoryMapList[].lodParamDesc.bias;
13093 };
13094
13095
13113 struct HeatSourceActorParams
13114 {
13118 Mat34 initialPose;
13122 F32 initialScale;
13126 F32 averageTemperature;
13130 F32 stdTemperature;
13131 union GeometryType {
13135 HeatSourceGeomBoxParams geometryType;
13139 HeatSourceGeomSphereParams geometryType;
13140 };
13141 GeometryType geometryType;
13145 String fieldSamplerFilterDataName;
13146 };
13147
13148
13164 struct HeatSourceAssetParams
13165 {
13169 F32 averageTemperature;
13173 F32 stdTemperature;
13174 union GeometryType {
13178 HeatSourceGeomBoxParams geometryType;
13182 HeatSourceGeomSphereParams geometryType;
13183 };
13184 GeometryType geometryType;
13188 String fieldSamplerFilterDataName;
13189 };
13190
13191
13208 struct HeatSourceData
13209 {
13213 String Name;
13217 HeatSourceAssetParams HeatSource;
13218 };
13219
13220
13256 struct HeatSourceEffect
13257 {
13261 String EffectProperties.UserString;
13265 Bool EffectProperties.Enable;
13269 F32 EffectProperties.Position.TranslateX;
13273 F32 EffectProperties.Position.TranslateY;
13277 F32 EffectProperties.Position.TranslateZ;
13281 F32 EffectProperties.Orientation.RotateX;
13285 F32 EffectProperties.Orientation.RotateY;
13289 F32 EffectProperties.Orientation.RotateZ;
13293 F32 EffectProperties.InitialDelayTime;
13297 F32 EffectProperties.Duration;
13301 U32 EffectProperties.RepeatCount;
13305 F32 EffectProperties.RepeatDelay;
13309 F32 EffectProperties.RandomizeRepeatTime;
13313 PlaybackMode EffectProperties.Path.PlaybackMode;
13317 F32 EffectProperties.Path.PathDuration;
13321 U32 EffectProperties.Path.LoopIndex;
13325 Transform EffectProperties.Path.ControlPoints[];
13329 F32 EffectProperties.Path.Scale[].x;
13333 F32 EffectProperties.Path.Scale[].y;
13337 F32 EffectProperties.Path.Speed[].x;
13341 F32 EffectProperties.Path.Speed[].y;
13345 Ref HeatSource;
13346 };
13347
13348
13360 struct HeatSourceGeomBoxParams
13361 {
13365 Vec3 extents;
13366 };
13367
13368
13380 struct HeatSourceGeomSphereParams
13381 {
13385 F32 radius;
13386 };
13387
13388
13401 struct HeatSourcePreviewParams
13402 {
13406 Mat34 pose;
13410 F32 scale;
13411 };
13412
13413
13424 struct ImpactEmitterActorParameters
13425 {
13426 };
13427
13428
13463 struct ImpactEmitterAssetParameters
13464 {
13465 union EventSetList {
13469 ImpactObjectEvent eventSetList[];
13473 ImpactExplosionEvent eventSetList[];
13474 };
13475 EventSetList eventSetList[];
13476 };
13477
13478
13493 struct ImpactExplosionEvent
13494 {
13498 String eventSetName;
13502 Ref explosionAssetName;
13506 F32 delay;
13510 F32 duration;
13511 };
13512
13513
13543 struct ImpactObjectEvent
13544 {
13548 String eventSetName;
13552 Ref iofxAssetName;
13556 Ref iosAssetName;
13560 F32 angleRange.min;
13564 F32 angleRange.max;
13568 F32 speedRange.min;
13572 F32 speedRange.max;
13576 F32 lifeRange.min;
13580 F32 lifeRange.max;
13584 F32 delay;
13588 U32 particleSpawnCount;
13592 ImpactAxis impactAxis;
13596 U32 lodParamDesc.version;
13600 F32 lodParamDesc.maxDistance;
13604 F32 lodParamDesc.distanceWeight;
13608 F32 lodParamDesc.speedWeight;
13612 F32 lodParamDesc.lifeWeight;
13616 F32 lodParamDesc.separationWeight;
13620 F32 lodParamDesc.bias;
13621 };
13622
13623
13635 struct InitialColorModifierParams
13636 {
13640 Vec4 color;
13641 };
13642
13643
13801 struct IofxAssetParameters
13802 {
13803 union IofxType {
13807 MeshIofxParameters iofxType;
13811 SpriteIofxParameters iofxType;
13812 };
13813 IofxType iofxType;
13817 Bool renderOutput.useUserSemantic;
13821 Bool renderOutput.useFloat4Color;
13822 };
13823
13824
13838 struct IofxDebugRenderParams
13839 {
13843 Bool VISUALIZE_IOFX_ACTOR;
13847 Bool VISUALIZE_IOFX_BOUNDING_BOX;
13851 Bool VISUALIZE_IOFX_ACTOR_NAME;
13852 };
13853
13854
13866 struct IofxModuleParameters
13867 {
13871 U32 unused;
13872 };
13873
13874
13889 struct JetFSActorParams
13890 {
13897 Mat34 initialPose;
13901 F32 initialScale;
13905 String fieldBoundaryFilterDataName;
13909 String fieldSamplerFilterDataName;
13910 };
13911
13912
13948 struct JetFSAssetParams
13949 {
13956 F32 defaultScale;
13960 F32 boundaryFadePercentage;
13964 Vec3 fieldDirection;
13971 F32 fieldDirectionDeviationAngle;
13978 F32 fieldDirectionOscillationPeriod;
13982 F32 fieldStrength;
13989 F32 fieldStrengthDeviationPercentage;
13996 F32 fieldStrengthOscillationPeriod;
14000 F32 gridShapeRadius;
14004 F32 gridShapeHeight;
14008 F32 gridBoundaryFadePercentage;
14012 F32 nearRadius;
14016 F32 pivotRadius;
14020 F32 farRadius;
14024 F32 directionalStretch;
14028 F32 averageStartDistance;
14032 F32 averageEndDistance;
14036 F32 noisePercentage;
14040 F32 noiseSpaceScale;
14044 F32 noiseTimeScale;
14048 U32 noiseOctaves;
14052 F32 fieldDragCoeff;
14056 F32 fieldWeight;
14060 String fieldBoundaryFilterDataName;
14064 String fieldSamplerFilterDataName;
14065 };
14066
14067
14082 struct JetFSPreviewParams
14083 {
14087 Mat44 globalPose;
14091 Bool drawShape;
14095 Bool drawAssetInfo;
14099 U64 userData;
14100 };
14101
14102
14139 struct JetFieldSamplerData
14140 {
14144 String Name;
14148 JetFSAssetParams JetFieldSampler;
14149 };
14150
14151
14187 struct JetFieldSamplerEffect
14188 {
14192 String EffectProperties.UserString;
14196 Bool EffectProperties.Enable;
14200 F32 EffectProperties.Position.TranslateX;
14204 F32 EffectProperties.Position.TranslateY;
14208 F32 EffectProperties.Position.TranslateZ;
14212 F32 EffectProperties.Orientation.RotateX;
14216 F32 EffectProperties.Orientation.RotateY;
14220 F32 EffectProperties.Orientation.RotateZ;
14224 F32 EffectProperties.InitialDelayTime;
14228 F32 EffectProperties.Duration;
14232 U32 EffectProperties.RepeatCount;
14236 F32 EffectProperties.RepeatDelay;
14240 F32 EffectProperties.RandomizeRepeatTime;
14244 PlaybackMode EffectProperties.Path.PlaybackMode;
14248 F32 EffectProperties.Path.PathDuration;
14252 U32 EffectProperties.Path.LoopIndex;
14256 Transform EffectProperties.Path.ControlPoints[];
14260 F32 EffectProperties.Path.Scale[].x;
14264 F32 EffectProperties.Path.Scale[].y;
14268 F32 EffectProperties.Path.Speed[].x;
14272 F32 EffectProperties.Path.Speed[].y;
14276 Ref JetFieldSampler;
14277 };
14278
14279
14292 struct MeshCookedCollisionStream
14293 {
14300 U8 bytes[];
14301 };
14302
14303
14317 struct MeshCookedCollisionStreamsAtScale
14318 {
14322 MeshCookedCollisionStream meshCookedCollisionStreams[];
14323 };
14324
14325
14401 struct MeshIofxParameters
14402 {
14406 Ref renderMeshList[].meshAssetName;
14410 U32 renderMeshList[].weight;
14411 union SpawnModifierList {
14415 RotationModifierParams spawnModifierList[];
14419 SimpleScaleModifierParams spawnModifierList[];
14423 RandomScaleModifierParams spawnModifierList[];
14427 InitialColorModifierParams spawnModifierList[];
14431 ScaleByMassModifierParams spawnModifierList[];
14432 };
14433 SpawnModifierList spawnModifierList[];
14434 union ContinuousModifierList {
14438 RotationModifierParams continuousModifierList[];
14442 ScaleVsLife3DModifierParams continuousModifierList[];
14446 ScaleVsDensity3DModifierParams continuousModifierList[];
14450 ScaleVsTemperature3DModifierParams continuousModifierList[];
14454 ScaleVsCameraDistance3DModifierParams continuousModifierList[];
14458 OrientAlongVelocityModifierParams continuousModifierList[];
14462 ScaleAlongVelocityModifierParams continuousModifierList[];
14466 ColorVsLifeCompositeModifierParams continuousModifierList[];
14470 ColorVsDensityCompositeModifierParams continuousModifierList[];
14474 ColorVsTemperatureCompositeModifierParams continuousModifierList[];
14478 ScaleVsLifeModifierParams continuousModifierList[];
14482 ScaleVsDensityModifierParams continuousModifierList[];
14486 ScaleVsTemperatureModifierParams continuousModifierList[];
14490 ScaleVsCameraDistanceModifierParams continuousModifierList[];
14494 ColorVsVelocityCompositeModifierParams continuousModifierList[];
14495 };
14496 ContinuousModifierList continuousModifierList[];
14497 };
14498
14499
14514 struct NoiseFSActorParams
14515 {
14522 Mat34 initialPose;
14526 F32 initialScale;
14530 String fieldBoundaryFilterDataName;
14534 String fieldSamplerFilterDataName;
14535 };
14536
14537
14566 struct NoiseFSAssetParams
14567 {
14574 F32 defaultScale;
14578 Vec3 boundarySize;
14582 F32 boundaryFadePercentage;
14586 FieldType fieldType;
14590 F32 fieldDragCoeff;
14594 F32 fieldWeight;
14598 NoiseType noiseType;
14602 U32 noiseSeed;
14606 F32 noiseStrength;
14610 Vec3 noiseSpacePeriod;
14614 F32 noiseTimePeriod;
14618 U32 noiseOctaves;
14622 F32 noiseStrengthOctaveMultiplier;
14626 Vec3 noiseSpacePeriodOctaveMultiplier;
14630 F32 noiseTimePeriodOctaveMultiplier;
14634 String fieldBoundaryFilterDataName;
14638 String fieldSamplerFilterDataName;
14642 Bool useLocalSpace;
14643 };
14644
14645
14660 struct NoiseFSPreviewParams
14661 {
14665 Mat44 globalPose;
14669 Bool drawShape;
14673 Bool drawAssetInfo;
14677 U64 userData;
14678 };
14679
14680
14710 struct NoiseFieldSamplerData
14711 {
14715 String Name;
14719 NoiseFSAssetParams NoiseFieldSampler;
14720 };
14721
14722
14758 struct NoiseFieldSamplerEffect
14759 {
14763 String EffectProperties.UserString;
14767 Bool EffectProperties.Enable;
14771 F32 EffectProperties.Position.TranslateX;
14775 F32 EffectProperties.Position.TranslateY;
14779 F32 EffectProperties.Position.TranslateZ;
14783 F32 EffectProperties.Orientation.RotateX;
14787 F32 EffectProperties.Orientation.RotateY;
14791 F32 EffectProperties.Orientation.RotateZ;
14795 F32 EffectProperties.InitialDelayTime;
14799 F32 EffectProperties.Duration;
14803 U32 EffectProperties.RepeatCount;
14807 F32 EffectProperties.RepeatDelay;
14811 F32 EffectProperties.RandomizeRepeatTime;
14815 PlaybackMode EffectProperties.Path.PlaybackMode;
14819 F32 EffectProperties.Path.PathDuration;
14823 U32 EffectProperties.Path.LoopIndex;
14827 Transform EffectProperties.Path.ControlPoints[];
14831 F32 EffectProperties.Path.Scale[].x;
14835 F32 EffectProperties.Path.Scale[].y;
14839 F32 EffectProperties.Path.Speed[].x;
14843 F32 EffectProperties.Path.Speed[].y;
14847 Ref NoiseFieldSampler;
14848 };
14849
14850
14862 struct OrientAlongVelocityModifierParams
14863 {
14867 Vec3 modelForward;
14868 };
14869
14870
14884 struct OrientScaleAlongScreenVelocityModifierParams
14885 {
14892 F32 scalePerVelocity;
14899 F32 scaleChangeLimit;
14906 F32 scaleChangeDelay;
14907 };
14908
14909
14952 struct ParticleIosAssetParam
14953 {
14954 union ParticleType {
14958 SimpleParticleSystemParams particleType;
14962 FluidParticleSystemParams particleType;
14963 };
14964 ParticleType particleType;
14968 U32 maxParticleCount;
14975 F32 particleRadius;
14982 F32 maxInjectedParticleCount;
14989 F32 maxMotionDistance;
14996 F32 contactOffset;
15003 F32 restOffset;
15010 F32 gridSize;
15017 F32 damping;
15024 Vec3 externalAcceleration;
15031 Vec3 projectionPlaneNormal;
15038 F32 projectionPlaneDistance;
15045 F32 particleMass;
15052 F32 restitution;
15059 F32 dynamicFriction;
15066 F32 staticFriction;
15073 String simulationFilterData;
15080 String fieldSamplerFilterData;
15087 Bool CollisionTwoway;
15094 Bool CollisionWithDynamicActors;
15098 Bool Enable;
15105 Bool ProjectToPlane;
15112 Bool PerParticleRestOffset;
15119 Bool PerParticleCollisionCacheHint;
15123 Bool DensityBuffer;
15127 Bool enableTemperatureBuffer;
15128 };
15129
15130
15143 struct ParticleIosDebugRenderParams
15144 {
15148 Bool VISUALIZE_PARTICLE_IOS_ACTOR;
15152 Bool VISUALIZE_PARTICLE_IOS_GRID_DENSITY;
15153 };
15154
15155
15167 struct ParticleIosModuleParameters
15168 {
15172 U32 unused;
15173 };
15174
15175
15244 struct ParticleSimulationData
15245 {
15249 String Name;
15250 union IOS {
15254 BasicIOSAssetParam IOS;
15258 ParticleIosAssetParam IOS;
15259 };
15260 IOS IOS;
15261 };
15262
15263
15276 struct ParticlesDebugRenderParams
15277 {
15281 Bool VISUALIZE_HEAT_SOURCE_ACTOR;
15285 Bool VISUALIZE_EFFECT_PACKAGE_ACTOR;
15286 };
15287
15288
15300 struct ParticlesModuleParameters
15301 {
15305 U32 unused;
15306 };
15307
15308
15328 struct RadialForceFieldKernelParams
15329 {
15333 ForceFieldFalloffParams falloffParameters;
15337 ForceFieldNoiseParams noiseParameters;
15341 F32 radius;
15342 };
15343
15344
15357 struct RandomRotationModifierParams
15358 {
15362 F32 minRotation;
15366 F32 maxRotation;
15367 };
15368
15369
15382 struct RandomScaleModifierParams
15383 {
15387 F32 minScaleFactor;
15391 F32 maxScaleFactor;
15392 };
15393
15394
15407 struct RandomSubtextureModifierParams
15408 {
15412 F32 minSubtexture;
15416 F32 maxSubtexture;
15417 };
15418
15419
15512 struct RenderMeshAssetParameters
15513 {
15517 SubmeshParameters submeshes[];
15524 String materialNames[];
15531 Bounds3 partBounds[];
15538 U32 textureUVOrigin;
15545 U32 boneCount;
15552 Bool deleteStaticBuffersAfterUse;
15556 Bool isReferenced;
15557 };
15558
15559
15604 struct RigidBodyEffect
15605 {
15609 String EffectProperties.UserString;
15613 Bool EffectProperties.Enable;
15617 F32 EffectProperties.Position.TranslateX;
15621 F32 EffectProperties.Position.TranslateY;
15625 F32 EffectProperties.Position.TranslateZ;
15629 F32 EffectProperties.Orientation.RotateX;
15633 F32 EffectProperties.Orientation.RotateY;
15637 F32 EffectProperties.Orientation.RotateZ;
15641 F32 EffectProperties.InitialDelayTime;
15645 F32 EffectProperties.Duration;
15649 U32 EffectProperties.RepeatCount;
15653 F32 EffectProperties.RepeatDelay;
15657 F32 EffectProperties.RandomizeRepeatTime;
15661 PlaybackMode EffectProperties.Path.PlaybackMode;
15665 F32 EffectProperties.Path.PathDuration;
15669 U32 EffectProperties.Path.LoopIndex;
15673 Transform EffectProperties.Path.ControlPoints[];
15677 F32 EffectProperties.Path.Scale[].x;
15681 F32 EffectProperties.Path.Scale[].y;
15685 F32 EffectProperties.Path.Speed[].x;
15689 F32 EffectProperties.Path.Speed[].y;
15693 Type Type;
15697 String CollisionFilterDataName;
15701 Bool Dynamic;
15705 Bool Gravity;
15709 Vec3 Extents;
15713 F32 Mass;
15717 Vec3 InitialLinearVelocity;
15721 Vec3 InitialAngularVelocity;
15725 F32 LinearDamping;
15729 F32 AngularDamping;
15730 };
15731
15732
15749 struct RotationModifierParams
15750 {
15754 RollType rollType;
15758 F32 maxRotationRatePerSec;
15762 F32 maxSettleRatePerSec;
15766 F32 inAirRotationMultiplier;
15770 F32 collisionRotationMultiplier;
15774 Bool includeVerticalDirection;
15775 };
15776
15777
15789 struct RotationRateModifierParams
15790 {
15794 F32 rotationRate;
15795 };
15796
15797
15811 struct RotationRateVsLifeModifierParams
15812 {
15816 F32 controlPoints[].x;
15820 F32 controlPoints[].y;
15821 };
15822
15823
15835 struct ScaleAlongVelocityModifierParams
15836 {
15840 F32 scaleFactor;
15841 };
15842
15843
15854 struct ScaleByMassModifierParams
15855 {
15856 };
15857
15858
15872 struct ScaleVsCameraDistance2DModifierParams
15873 {
15877 F32 controlPoints[].cameraDistance;
15881 Vec2 controlPoints[].scale;
15882 };
15883
15884
15898 struct ScaleVsCameraDistance3DModifierParams
15899 {
15903 F32 controlPoints[].cameraDistance;
15907 Vec3 controlPoints[].scale;
15908 };
15909
15910
15925 struct ScaleVsCameraDistanceModifierParams
15926 {
15930 ScaleAxis scaleAxis;
15934 F32 controlPoints[].x;
15938 F32 controlPoints[].y;
15939 };
15940
15941
15955 struct ScaleVsDensity2DModifierParams
15956 {
15960 F32 controlPoints[].density;
15964 Vec2 controlPoints[].scale;
15965 };
15966
15967
15981 struct ScaleVsDensity3DModifierParams
15982 {
15986 F32 controlPoints[].density;
15990 Vec3 controlPoints[].scale;
15991 };
15992
15993
16008 struct ScaleVsDensityModifierParams
16009 {
16013 ScaleAxis scaleAxis;
16017 F32 controlPoints[].x;
16021 F32 controlPoints[].y;
16022 };
16023
16024
16038 struct ScaleVsLife2DModifierParams
16039 {
16043 F32 controlPoints[].lifeRemaining;
16047 Vec2 controlPoints[].scale;
16048 };
16049
16050
16064 struct ScaleVsLife3DModifierParams
16065 {
16069 F32 controlPoints[].lifeRemaining;
16073 Vec3 controlPoints[].scale;
16074 };
16075
16076
16091 struct ScaleVsLifeModifierParams
16092 {
16096 ScaleAxis scaleAxis;
16100 F32 controlPoints[].x;
16104 F32 controlPoints[].y;
16105 };
16106
16107
16121 struct ScaleVsTemperature2DModifierParams
16122 {
16126 F32 controlPoints[].temperature;
16130 Vec2 controlPoints[].scale;
16131 };
16132
16133
16147 struct ScaleVsTemperature3DModifierParams
16148 {
16152 F32 controlPoints[].temperature;
16156 Vec3 controlPoints[].scale;
16157 };
16158
16159
16174 struct ScaleVsTemperatureModifierParams
16175 {
16179 ScaleAxis scaleAxis;
16183 F32 controlPoints[].x;
16187 F32 controlPoints[].y;
16188 };
16189
16190
16205 struct SimpleParticleSystemParams
16206 {
16213 Bool GridDensity.Enabled;
16220 Resolution GridDensity.Resolution;
16227 F32 GridDensity.GridSize;
16234 U32 GridDensity.MaxCellCount;
16235 };
16236
16237
16249 struct SimpleScaleModifierParams
16250 {
16254 Vec3 scaleFactor;
16255 };
16256
16257
16348 struct SpriteIofxParameters
16349 {
16353 Ref spriteMaterialName;
16354 union SpawnModifierList {
16358 SimpleScaleModifierParams spawnModifierList[];
16362 RandomScaleModifierParams spawnModifierList[];
16366 InitialColorModifierParams spawnModifierList[];
16370 RandomSubtextureModifierParams spawnModifierList[];
16374 RandomRotationModifierParams spawnModifierList[];
16378 ColorVsLifeModifierParams spawnModifierList[];
16382 ScaleByMassModifierParams spawnModifierList[];
16383 };
16384 SpawnModifierList spawnModifierList[];
16385 union ContinuousModifierList {
16389 ColorVsLifeCompositeModifierParams continuousModifierList[];
16393 ColorVsDensityCompositeModifierParams continuousModifierList[];
16397 ColorVsTemperatureCompositeModifierParams continuousModifierList[];
16401 ScaleVsLife2DModifierParams continuousModifierList[];
16405 ScaleVsDensity2DModifierParams continuousModifierList[];
16409 ScaleVsTemperature2DModifierParams continuousModifierList[];
16413 ScaleVsCameraDistance2DModifierParams continuousModifierList[];
16417 SubtextureVsLifeModifierParams continuousModifierList[];
16421 ViewDirectionSortingModifierParams continuousModifierList[];
16425 ColorVsLifeModifierParams continuousModifierList[];
16429 ColorVsDensityModifierParams continuousModifierList[];
16433 ColorVsTemperatureModifierParams continuousModifierList[];
16437 ScaleVsLifeModifierParams continuousModifierList[];
16441 ScaleVsDensityModifierParams continuousModifierList[];
16445 ScaleVsTemperatureModifierParams continuousModifierList[];
16449 ScaleVsCameraDistanceModifierParams continuousModifierList[];
16453 RotationRateModifierParams continuousModifierList[];
16457 RotationRateVsLifeModifierParams continuousModifierList[];
16461 OrientScaleAlongScreenVelocityModifierParams continuousModifierList[];
16465 ColorVsVelocityCompositeModifierParams continuousModifierList[];
16466 };
16467 ContinuousModifierList continuousModifierList[];
16468 };
16469
16470
16554 struct SubmeshParameters
16555 {
16559 VertexBufferParameters vertexBuffer;
16566 U32 indexBuffer[];
16573 U32 vertexPartition[];
16580 U32 indexPartition[];
16587 U32 smoothingGroups[];
16588 };
16589
16590
16608 struct SubstanceSourceActorParams
16609 {
16613 Mat34 initialPose;
16617 F32 initialScale;
16621 F32 averageDensity;
16625 F32 stdDensity;
16626 union GeometryType {
16630 HeatSourceGeomBoxParams geometryType;
16634 HeatSourceGeomSphereParams geometryType;
16635 };
16636 GeometryType geometryType;
16640 String fieldSamplerFilterDataName;
16641 };
16642
16643
16660 struct SubstanceSourceAssetParams
16661 {
16665 Vec3 position;
16669 F32 averageDensity;
16673 F32 stdDensity;
16674 union GeometryType {
16678 HeatSourceGeomBoxParams geometryType;
16682 HeatSourceGeomSphereParams geometryType;
16683 };
16684 GeometryType geometryType;
16688 String fieldSamplerFilterDataName;
16689 };
16690
16691
16709 struct SubstanceSourceData
16710 {
16714 String Name;
16718 SubstanceSourceAssetParams SubstanceSource;
16719 };
16720
16721
16757 struct SubstanceSourceEffect
16758 {
16762 String EffectProperties.UserString;
16766 Bool EffectProperties.Enable;
16770 F32 EffectProperties.Position.TranslateX;
16774 F32 EffectProperties.Position.TranslateY;
16778 F32 EffectProperties.Position.TranslateZ;
16782 F32 EffectProperties.Orientation.RotateX;
16786 F32 EffectProperties.Orientation.RotateY;
16790 F32 EffectProperties.Orientation.RotateZ;
16794 F32 EffectProperties.InitialDelayTime;
16798 F32 EffectProperties.Duration;
16802 U32 EffectProperties.RepeatCount;
16806 F32 EffectProperties.RepeatDelay;
16810 F32 EffectProperties.RandomizeRepeatTime;
16814 PlaybackMode EffectProperties.Path.PlaybackMode;
16818 F32 EffectProperties.Path.PathDuration;
16822 U32 EffectProperties.Path.LoopIndex;
16826 Transform EffectProperties.Path.ControlPoints[];
16830 F32 EffectProperties.Path.Scale[].x;
16834 F32 EffectProperties.Path.Scale[].y;
16838 F32 EffectProperties.Path.Speed[].x;
16842 F32 EffectProperties.Path.Speed[].y;
16846 Ref SubstanceSource;
16847 };
16848
16849
16863 struct SubtextureVsLifeModifierParams
16864 {
16868 F32 controlPoints[].x;
16872 F32 controlPoints[].y;
16873 };
16874
16875
16943 struct SurfaceBufferParameters
16944 {
16948 U32 width;
16952 U32 height;
16956 U32 surfaceFormat;
16957 union Buffer {
16961 BufferU8x1 buffer;
16965 BufferU8x2 buffer;
16969 BufferU8x3 buffer;
16973 BufferU8x4 buffer;
16977 BufferU16x1 buffer;
16981 BufferU16x2 buffer;
16985 BufferU16x3 buffer;
16989 BufferU16x4 buffer;
16993 BufferU32x1 buffer;
16997 BufferU32x2 buffer;
17001 BufferU32x3 buffer;
17005 BufferU32x4 buffer;
17009 BufferF32x1 buffer;
17013 BufferF32x2 buffer;
17017 BufferF32x3 buffer;
17021 BufferF32x4 buffer;
17022 };
17023 Buffer buffer;
17024 };
17025
17026
17042 struct SurfaceTraceParameters
17043 {
17050 U8 submeshIndices[];
17057 U32 vertexIndices[];
17064 Vec3 defaultNormal;
17065 };
17066
17067
17085 struct SurfaceTraceSetParameters
17086 {
17090 SurfaceTraceParameters traces[];
17097 Vec3 positionOffset;
17098 };
17099
17100
17121 struct TurbulenceFSActorParams
17122 {
17126 Mat34 initialPose;
17130 F32 initialScale;
17134 Vec3 gridSizeWorld;
17138 String collisionFilterDataName;
17142 String fieldBoundaryFilterDataName;
17146 String fieldSamplerFilterDataName;
17150 Bool isAutoSwitchingBC;
17154 F32 outletPressureBC;
17158 F32 dragCoeffForRigidBody;
17162 F32 fluidViscosity;
17163 };
17164
17165
17228 struct TurbulenceFSAssetParams
17229 {
17233 Min gridXRange.min;
17237 Max gridXRange.max;
17241 Min gridYRange.min;
17245 Max gridYRange.max;
17249 Min gridZRange.min;
17253 Max gridZRange.max;
17257 Vec3 gridSizeWorld;
17261 F32 updatesPerFrameRange.min;
17265 F32 updatesPerFrameRange.max;
17269 F32 angularVelocityMultiplier;
17273 F32 angularVelocityClamp;
17277 F32 linearVelocityMultiplier;
17281 F32 linearVelocityClamp;
17285 F32 velocityFieldFadeTime;
17289 F32 velocityFieldFadeDelay;
17293 F32 velocityFieldFadeIntensity;
17297 F32 boundaryFadePercentage;
17301 F32 boundarySizePercentage;
17305 String collisionFilterDataName;
17309 String fieldBoundaryFilterDataName;
17313 String fieldSamplerFilterDataName;
17317 U32 maxCollidingObjects;
17321 U32 maxVelocitySources;
17325 U32 maxHeatSources;
17329 U32 maxSubstanceSources;
17333 F32 dragCoeff;
17337 Vec3 externalVelocity;
17341 F32 fieldVelocityMultiplier;
17345 F32 fieldVelocityWeight;
17349 Bool useHeat;
17353 F32 heatParams.temperatureBasedForceMultiplier;
17357 F32 heatParams.ambientTemperature;
17361 Vec3 heatParams.heatForceDirection;
17365 F32 heatParams.thermalConductivity;
17369 Bool useDensity;
17373 F32 densityParams.diffusionCoef;
17377 F32 densityParams.densityFieldFade;
17381 U32 densityParams.densityGridMultiplier;
17385 Bool isEnabledOptimizedLOD;
17389 F32 customLOD;
17393 F32 lodWeights.maxDistance;
17397 F32 lodWeights.distanceWeight;
17401 F32 lodWeights.bias;
17405 F32 lodWeights.benefitBias;
17409 F32 lodWeights.benefitWeight;
17413 F32 noiseParams.noiseStrength;
17417 Vec3 noiseParams.noiseSpacePeriod;
17421 F32 noiseParams.noiseTimePeriod;
17425 U32 noiseParams.noiseOctaves;
17429 F32 dragCoeffForRigidBody;
17433 F32 fluidViscosity;
17437 Ref volumeRenderMaterialName;
17438 };
17439
17440
17477 struct TurbulenceFSDebugRenderParams
17478 {
17482 Bool VISUALIZE_TURBULENCE_FS_ACTOR;
17486 Bool VISUALIZE_HEAT_SOURCE_ACTOR;
17490 Bool VISUALIZE_SUBSTANCE_SOURCE_ACTOR;
17494 Bool VISUALIZE_VELOCITY_SOURCE_ACTOR;
17498 Bool VISUALIZE_TURBULENCE_FS_VELOCITY;
17502 Bool VISUALIZE_TURBULENCE_FS_BBOX;
17506 Bool VISUALIZE_TURBULENCE_FS_ACTOR_NAME;
17510 Bool VISUALIZE_TURBULENCE_FS_VELOCITY_FIELD;
17514 F32 TURBULENCE_FS_VELOCITY_FIELD_SCALE;
17518 U32 TURBULENCE_FS_VELOCITY_FIELD_SPACING;
17522 Bool VISUALIZE_TURBULENCE_FS_TEMPERATURE_FIELD;
17526 Bool VISUALIZE_TURBULENCE_FS_PRESSURE_FIELD;
17530 Bool VISUALIZE_TURBULENCE_FS_DENSITY_FIELD;
17534 F32 TURBULENCE_FS_SCALAR_FIELD_SCALE;
17538 U32 TURBULENCE_FS_SCALAR_FIELD_SPACING;
17542 Bool VISUALIZE_TURBULENCE_FS_STREAMLINES;
17546 F32 TURBULENCE_FS_STREAMLINES.tmax;
17550 F32 TURBULENCE_FS_STREAMLINES.tstep;
17554 Vec3 TURBULENCE_FS_STREAMLINES.grid;
17558 Bool VISUALIZE_TURBULENCE_FS_PLANE;
17562 Vec3 TURBULENCE_FS_PLANE.normal;
17566 F32 TURBULENCE_FS_PLANE.offset;
17570 Bool VISUALIZE_TURBULENCE_FS_GRID;
17574 Bool VISUALIZE_TURBULENCE_FS_LOD;
17578 Bool VISUALIZE_TURBULENCE_FS_POSE;
17582 F32 TURBULENCE_FS_LOD;
17583 };
17584
17585
17597 struct TurbulenceFSModuleParameters
17598 {
17602 U32 unused;
17603 };
17604
17605
17623 struct TurbulenceFSPreviewParams
17624 {
17628 Mat44 globalPose;
17632 F32 iconScale;
17636 Bool drawIcon;
17640 Bool drawBox;
17644 Bool drawGrid;
17648 Bool drawAssetInfo;
17652 U64 userData;
17653 };
17654
17655
17719 struct TurbulenceFieldSamplerData
17720 {
17724 String Name;
17728 TurbulenceFSAssetParams TurbulenceFieldSampler;
17729 };
17730
17731
17767 struct TurbulenceFieldSamplerEffect
17768 {
17772 String EffectProperties.UserString;
17776 Bool EffectProperties.Enable;
17780 F32 EffectProperties.Position.TranslateX;
17784 F32 EffectProperties.Position.TranslateY;
17788 F32 EffectProperties.Position.TranslateZ;
17792 F32 EffectProperties.Orientation.RotateX;
17796 F32 EffectProperties.Orientation.RotateY;
17800 F32 EffectProperties.Orientation.RotateZ;
17804 F32 EffectProperties.InitialDelayTime;
17808 F32 EffectProperties.Duration;
17812 U32 EffectProperties.RepeatCount;
17816 F32 EffectProperties.RepeatDelay;
17820 F32 EffectProperties.RandomizeRepeatTime;
17824 PlaybackMode EffectProperties.Path.PlaybackMode;
17828 F32 EffectProperties.Path.PathDuration;
17832 U32 EffectProperties.Path.LoopIndex;
17836 Transform EffectProperties.Path.ControlPoints[];
17840 F32 EffectProperties.Path.Scale[].x;
17844 F32 EffectProperties.Path.Scale[].y;
17848 F32 EffectProperties.Path.Speed[].x;
17852 F32 EffectProperties.Path.Speed[].y;
17856 Ref TurbulenceFieldSampler;
17857 };
17858
17859
17877 struct VelocitySourceActorParams
17878 {
17882 Mat34 initialPose;
17886 F32 initialScale;
17890 F32 averageVelocity;
17894 F32 stdVelocity;
17895 union GeometryType {
17899 HeatSourceGeomBoxParams geometryType;
17903 HeatSourceGeomSphereParams geometryType;
17904 };
17905 GeometryType geometryType;
17909 String fieldSamplerFilterDataName;
17910 };
17911
17912
17928 struct VelocitySourceAssetParams
17929 {
17933 F32 averageVelocity;
17937 F32 stdVelocity;
17938 union GeometryType {
17942 HeatSourceGeomBoxParams geometryType;
17946 HeatSourceGeomSphereParams geometryType;
17947 };
17948 GeometryType geometryType;
17952 String fieldSamplerFilterDataName;
17953 };
17954
17955
17972 struct VelocitySourceData
17973 {
17977 String Name;
17981 VelocitySourceAssetParams VelocitySource;
17982 };
17983
17984
18020 struct VelocitySourceEffect
18021 {
18025 String EffectProperties.UserString;
18029 Bool EffectProperties.Enable;
18033 F32 EffectProperties.Position.TranslateX;
18037 F32 EffectProperties.Position.TranslateY;
18041 F32 EffectProperties.Position.TranslateZ;
18045 F32 EffectProperties.Orientation.RotateX;
18049 F32 EffectProperties.Orientation.RotateY;
18053 F32 EffectProperties.Orientation.RotateZ;
18057 F32 EffectProperties.InitialDelayTime;
18061 F32 EffectProperties.Duration;
18065 U32 EffectProperties.RepeatCount;
18069 F32 EffectProperties.RepeatDelay;
18073 F32 EffectProperties.RandomizeRepeatTime;
18077 PlaybackMode EffectProperties.Path.PlaybackMode;
18081 F32 EffectProperties.Path.PathDuration;
18085 U32 EffectProperties.Path.LoopIndex;
18089 Transform EffectProperties.Path.ControlPoints[];
18093 F32 EffectProperties.Path.Scale[].x;
18097 F32 EffectProperties.Path.Scale[].y;
18101 F32 EffectProperties.Path.Speed[].x;
18105 F32 EffectProperties.Path.Speed[].y;
18109 Ref VelocitySource;
18110 };
18111
18112
18125 struct VelocitySourcePreviewParams
18126 {
18130 Mat34 pose;
18134 F32 scale;
18135 };
18136
18137
18213 struct VertexBufferParameters
18214 {
18221 U32 vertexCount;
18225 VertexFormatParameters vertexFormat;
18226 union Buffers {
18230 BufferU8x1 buffers[];
18234 BufferU8x2 buffers[];
18238 BufferU8x3 buffers[];
18242 BufferU8x4 buffers[];
18246 BufferU16x1 buffers[];
18250 BufferU16x2 buffers[];
18254 BufferU16x3 buffers[];
18258 BufferU16x4 buffers[];
18262 BufferU32x1 buffers[];
18266 BufferU32x2 buffers[];
18270 BufferU32x3 buffers[];
18274 BufferU32x4 buffers[];
18278 BufferF32x1 buffers[];
18282 BufferF32x2 buffers[];
18286 BufferF32x3 buffers[];
18290 BufferF32x4 buffers[];
18291 };
18292 Buffers buffers[];
18293 };
18294
18295
18315 struct VertexFormatParameters
18316 {
18323 U32 winding;
18330 Bool hasSeparateBoneBuffer;
18337 String bufferFormats[].name;
18344 I32 bufferFormats[].semantic;
18351 U32 bufferFormats[].id;
18358 U32 bufferFormats[].format;
18365 U32 bufferFormats[].access;
18372 Bool bufferFormats[].serialize;
18373 };
18374
18375
18387 struct ViewDirectionSortingModifierParams
18388 {
18392 SortType sortType;
18393 };
18394
18395
18440 struct VolumeRenderMaterialData
18441 {
18445 String Name;
18449 String ApplicationMaterialName;
18453 String UserProperties;
18457 RenderMode RenderMode;
18461 RenderMethod RenderMethod;
18465 ResolutionScale ResolutionScale;
18469 FillMode FillMode;
18473 Bool GenerateShadows;
18477 Bool BlurShadows;
18481 Bool GenerateMipmaps;
18485 Bool EnableStencilOpt;
18489 F32 StepScale;
18493 F32 Density;
18497 F32 EdgeFade;
18501 F32 OpacityThreshold;
18505 F32 RayJitter;
18509 F32 IsoValue;
18513 F32 IsoValueSign;
18517 U32 ShadowSamples;
18521 F32 ShadowDistance;
18525 F32 ShadowDensity;
18529 F32 ShadowJitter;
18533 F32 ShadowAmount;
18537 Vec3 LightDir;
18541 Vec4 LightColor;
18545 F32 BlockEmptyThreshold;
18549 Bool ReadDepth;
18553 F32 ColorMapScale;
18557 F32 ColorMapOffset;
18561 F32 ColorMap[].density;
18565 Vec4 ColorMap[].color;
18569 F32 TextureRangeMin;
18573 F32 TextureRangeMax;
18574 };
18575
18576
18591 struct VortexFSActorParams
18592 {
18599 Mat34 initialPose;
18603 F32 initialScale;
18607 String fieldBoundaryFilterDataName;
18611 String fieldSamplerFilterDataName;
18612 };
18613
18614
18639 struct VortexFSAssetParams
18640 {
18644 F32 boundaryFadePercentage;
18648 Vec3 axis;
18652 Bool bottomSphericalForce;
18656 Bool topSphericalForce;
18660 F32 height;
18664 F32 bottomRadius;
18668 F32 topRadius;
18672 F32 rotationalStrength;
18676 F32 radialStrength;
18680 F32 liftStrength;
18684 F32 fieldDragCoeff;
18688 F32 fieldWeight;
18692 String fieldBoundaryFilterDataName;
18696 String fieldSamplerFilterDataName;
18697 };
18698
18699
18714 struct VortexFSPreviewParams
18715 {
18719 Mat44 globalPose;
18723 Bool drawShape;
18727 Bool drawAssetInfo;
18731 U64 userData;
18732 };
18733
18734
18760 struct VortexFieldSamplerData
18761 {
18765 String Name;
18769 VortexFSAssetParams VortexFieldSampler;
18770 };
18771
18772
18808 struct VortexFieldSamplerEffect
18809 {
18813 String EffectProperties.UserString;
18817 Bool EffectProperties.Enable;
18821 F32 EffectProperties.Position.TranslateX;
18825 F32 EffectProperties.Position.TranslateY;
18829 F32 EffectProperties.Position.TranslateZ;
18833 F32 EffectProperties.Orientation.RotateX;
18837 F32 EffectProperties.Orientation.RotateY;
18841 F32 EffectProperties.Orientation.RotateZ;
18845 F32 EffectProperties.InitialDelayTime;
18849 F32 EffectProperties.Duration;
18853 U32 EffectProperties.RepeatCount;
18857 F32 EffectProperties.RepeatDelay;
18861 F32 EffectProperties.RandomizeRepeatTime;
18865 PlaybackMode EffectProperties.Path.PlaybackMode;
18869 F32 EffectProperties.Path.PathDuration;
18873 U32 EffectProperties.Path.LoopIndex;
18877 Transform EffectProperties.Path.ControlPoints[];
18881 F32 EffectProperties.Path.Scale[].x;
18885 F32 EffectProperties.Path.Scale[].y;
18889 F32 EffectProperties.Path.Speed[].x;
18893 F32 EffectProperties.Path.Speed[].y;
18897 Ref VortexFieldSampler;
18898 };
18899
18900
18915 struct WindFSActorParams
18916 {
18923 Mat34 initialPose;
18927 F32 initialScale;
18931 String fieldBoundaryFilterDataName;
18935 String fieldSamplerFilterDataName;
18936 };
18937
18938
18959 struct WindFSAssetParams
18960 {
18964 Vec3 fieldDirection;
18971 F32 fieldDirectionDeviationAngle;
18978 F32 fieldDirectionOscillationPeriod;
18982 F32 fieldStrength;
18989 F32 fieldStrengthDeviationPercentage;
18996 F32 fieldStrengthOscillationPeriod;
19000 F32 fieldDragCoeff;
19004 F32 fieldWeight;
19008 String fieldBoundaryFilterDataName;
19012 String fieldSamplerFilterDataName;
19013 };
19014
19015
19029 struct WindFSPreviewParams
19030 {
19034 Mat44 globalPose;
19038 Bool drawAssetInfo;
19042 U64 userData;
19043 };
19044
19045
19067 struct WindFieldSamplerData
19068 {
19072 String Name;
19076 WindFSAssetParams WindFieldSampler;
19077 };
19078
19079
19115 struct WindFieldSamplerEffect
19116 {
19120 String EffectProperties.UserString;
19124 Bool EffectProperties.Enable;
19128 F32 EffectProperties.Position.TranslateX;
19132 F32 EffectProperties.Position.TranslateY;
19136 F32 EffectProperties.Position.TranslateZ;
19140 F32 EffectProperties.Orientation.RotateX;
19144 F32 EffectProperties.Orientation.RotateY;
19148 F32 EffectProperties.Orientation.RotateZ;
19152 F32 EffectProperties.InitialDelayTime;
19156 F32 EffectProperties.Duration;
19160 U32 EffectProperties.RepeatCount;
19164 F32 EffectProperties.RepeatDelay;
19168 F32 EffectProperties.RandomizeRepeatTime;
19172 PlaybackMode EffectProperties.Path.PlaybackMode;
19176 F32 EffectProperties.Path.PathDuration;
19180 U32 EffectProperties.Path.LoopIndex;
19184 Transform EffectProperties.Path.ControlPoints[];
19188 F32 EffectProperties.Path.Scale[].x;
19192 F32 EffectProperties.Path.Scale[].y;
19196 F32 EffectProperties.Path.Speed[].x;
19200 F32 EffectProperties.Path.Speed[].y;
19204 Ref WindFieldSampler;
19205 };
19206
19207
19208
19209 #endif