|
|
void | copyToSolverBodyDataStep (const PxVec3 &linearVelocity, const PxVec3 &angularVelocity, const PxReal invMass, const PxVec3 &invInertia, const PxTransform &globalPose, const PxReal maxDepenetrationVelocity, const PxReal maxContactImpulse, const PxU32 nodeIndex, const PxReal reportThreshold, const PxReal maxAngVelSq, PxU32 lockFlags, bool isKinematic, PxTGSSolverBodyVel &solverVel, PxTGSSolverBodyTxInertia &solverBodyTxInertia, PxTGSSolverBodyData &solverBodyData, const PxReal dt, const bool gyroscopicForces) |
| |
|
void | integrateCoreStep (PxTGSSolverBodyVel &vel, PxTGSSolverBodyTxInertia &txInertia, const PxF32 dt) |
| |
|
struct physx::Dy::ArticulationJointCore | PX_ALIGN_SUFFIX (16) |
| |
|
| PX_COMPILE_TIME_ASSERT (48==sizeof(Constraint)) |
| |
|
Context * | createDynamicsContext (PxcNpMemBlockPool *memBlockPool, PxcScratchAllocator &scratchAllocator, Cm::FlushPool &taskPool, PxvSimStats &simStats, PxTaskManager *taskManager, PxVirtualAllocatorCallback *allocatorCallback, PxsMaterialManager *materialManager, IG::SimpleIslandManager *islandManager, PxU64 contextID, const bool enableStabilization, const bool useEnhancedDeterminism, const PxReal maxBiasCoefficient, const bool frictionEveryIteration, const PxReal lengthScale) |
| |
|
Context * | createTGSDynamicsContext (PxcNpMemBlockPool *memBlockPool, PxcScratchAllocator &scratchAllocator, Cm::FlushPool &taskPool, PxvSimStats &simStats, PxTaskManager *taskManager, PxVirtualAllocatorCallback *allocatorCallback, PxsMaterialManager *materialManager, IG::SimpleIslandManager *islandManager, PxU64 contextID, const bool enableStabilization, const bool useEnhancedDeterminism, const PxReal lengthScale) |
| |
|
struct | PX_ALIGN_PREFIX (16) JointSpaceSpatialZ |
| |
|
PX_INLINE PX_CUDA_CALLABLE void | computeArticJacobianAxes (PxVec3 row[3], const PxQuat &qa, const PxQuat &qb) |
| |
|
PX_CUDA_CALLABLE PX_FORCE_INLINE float | compAng (PxReal swingYZ, PxReal swingW) |
| |
|
class physx::Dy::FeatherstoneArticulation | PX_ALIGN_SUFFIX (64) |
| |
|
void | PxvRegisterArticulationsReducedCoordinate () |
| |
|
PX_FORCE_INLINE void | calculateNewVelocity (const PxTransform &newTransform, const PxTransform &oldTransform, const PxReal dt, PxVec3 &linear, PxVec3 &angular) |
| |
|
PX_CUDA_CALLABLE PX_FORCE_INLINE void | separateSwingTwist (const PxQuat &q, PxQuat &twist, PxQuat &swing1, PxQuat &swing2) |
| |
|
PX_CUDA_CALLABLE PX_FORCE_INLINE void | separateSwingTwist2 (const PxQuat &q, PxQuat &twist, PxQuat &swing1, PxQuat &swing2) |
| |
|
PX_FORCE_INLINE FEMCloth * | getFEMCloth (FEMClothHandle handle) |
| |
|
PX_FORCE_INLINE HairSystem * | getHairSystem (HairSystemHandle handle) |
| |
|
PX_FORCE_INLINE ParticleSystem * | getParticleSystem (ParticleSystemHandle handle) |
| |
|
PX_FORCE_INLINE SoftBody * | getSoftBody (SoftBodyHandle handle) |
| |
|
Cm::SpatialVector | createImpulseResponseVector (const PxVec3 &linear, const PxVec3 &angular, const SolverExtBody &body) |
| |
|
Cm::SpatialVectorV | createImpulseResponseVector (const aos::Vec3V &linear, const aos::Vec3V &angular, const SolverExtBody &body) |
| |
|
PxReal | getImpulseResponse (const SolverExtBody &b0, const Cm::SpatialVector &impulse0, Cm::SpatialVector &deltaV0, PxReal dom0, PxReal angDom0, const SolverExtBody &b1, const Cm::SpatialVector &impulse1, Cm::SpatialVector &deltaV1, PxReal dom1, PxReal angDom1, Cm::SpatialVectorF *Z, bool allowSelfCollision) |
| |
|
FloatV | getImpulseResponse (const SolverExtBody &b0, const Cm::SpatialVectorV &impulse0, Cm::SpatialVectorV &deltaV0, const FloatV &dom0, const FloatV &angDom0, const SolverExtBody &b1, const Cm::SpatialVectorV &impulse1, Cm::SpatialVectorV &deltaV1, const FloatV &dom1, const FloatV &angDom1, Cm::SpatialVectorV *Z, bool) |
| |
|
void | setupFinalizeExtSolverContacts (const PxContactPoint *buffer, const CorrelationBuffer &c, const PxTransform &bodyFrame0, const PxTransform &bodyFrame1, PxU8 *workspace, const SolverExtBody &b0, const SolverExtBody &b1, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal invMassScale0, PxReal invInertiaScale0, PxReal invMassScale1, PxReal invInertiaScale1, const PxReal restDist, PxU8 *frictionDataPtr, PxReal ccdMaxContactDist, Cm::SpatialVectorF *Z, const PxReal offsetSlop) |
| |
|
bool | setupFinalizeExtSolverContactsCoulomb (const PxContactBuffer &buffer, const CorrelationBuffer &c, const PxTransform &bodyFrame0, const PxTransform &bodyFrame1, PxU8 *workspace, PxReal invDt, PxReal dtF32, PxReal bounceThreshold, const SolverExtBody &b0, const SolverExtBody &b1, PxU32 frictionCountPerPoint, PxReal invMassScale0, PxReal invInertiaScale0, PxReal invMassScale1, PxReal invInertiaScale1, PxReal restDist, PxReal ccdMaxContactDist, Cm::SpatialVectorF *Z, const PxReal solverOffsetSlop) |
| |
|
PX_FORCE_INLINE PxU32 | ArticulationLowestSetBit (ArticulationBitField val) |
| |
|
PX_FORCE_INLINE PxU32 | ArticulationHighestSetBit (ArticulationBitField val) |
| |
|
PX_FORCE_INLINE Cm::SpatialVector & | unsimdRef (Cm::SpatialVectorV &v) |
| |
|
PX_FORCE_INLINE const Cm::SpatialVector & | unsimdRef (const Cm::SpatialVectorV &v) |
| |
|
PX_FORCE_INLINE void | bodyCoreComputeUnconstrainedVelocity (const PxVec3 &gravity, const PxReal dt, const PxReal linearDamping, const PxReal angularDamping, const PxReal accelScale, const PxReal maxLinearVelocitySq, const PxReal maxAngularVelocitySq, PxVec3 &inOutLinearVelocity, PxVec3 &inOutAngularVelocity, bool disableGravity) |
| |
|
PX_FORCE_INLINE void | integrateCore (PxVec3 &motionLinearVelocity, PxVec3 &motionAngularVelocity, PxSolverBody &solverBody, PxSolverBodyData &solverBodyData, const PxF32 dt, const PxU32 lockFlags) |
| |
|
PX_FORCE_INLINE PxReal | _updateWakeCounter (PxsRigidBody *originalBody, PxReal dt, PxReal, const bool enableStabilization, const Cm::SpatialVector &motionVelocity, bool hasStaticTouch) |
| |
|
PX_FORCE_INLINE void | sleepCheck (PxsRigidBody *originalBody, const PxReal dt, const PxReal intDt, const bool enableStabilization, const Cm::SpatialVector &motionVelocity, bool hasStaticTouch) |
| |
|
template<typename Classification > |
| PxU32 | normalizePartitions (PxArray< PxU32 > &accumulatedConstraintsPerPartition, PxSolverConstraintDesc *PX_RESTRICT eaOrderedConstraintDescriptors, const PxU32 numConstraintDescriptors, PxArray< PxU32 > &bitField, const Classification &classification, const PxU32 numBodies, const PxU32 numArticulations) |
| |
|
PxU32 | partitionContactConstraints (ConstraintPartitionArgs &args) |
| |
|
void | processOverflowConstraints (PxU8 *bodies, PxU32 bodyStride, PxU32 numBodies, Dy::ArticulationSolverDesc *articulationDescs, PxU32 numArticulations, PxSolverConstraintDesc *constraints, const PxU32 numConstraints) |
| |
|
SolverConstraintPrepState::Enum | setupSolverConstraint4 (SolverConstraintShaderPrepDesc *PX_RESTRICT constraintShaderDescs, PxSolverConstraintPrepDesc *PX_RESTRICT constraintDescs, const PxReal dt, const PxReal recipdt, PxU32 &totalRows, PxConstraintAllocator &allocator) |
| |
|
SolverConstraintPrepState::Enum | setupSolverConstraint4 (PxSolverConstraintPrepDesc *PX_RESTRICT constraintDescs, const PxReal dt, const PxReal recipdt, PxU32 &totalRows, PxConstraintAllocator &allocator, PxU32 maxRows) |
| |
|
PxU32 | SetupSolverConstraint (SolverConstraintShaderPrepDesc &shaderDesc, PxSolverConstraintPrepDesc &prepDesc, PxConstraintAllocator &allocator, PxReal dt, PxReal invdt, Cm::SpatialVectorF *Z) |
| |
|
template<class PrepDescT > |
| PX_FORCE_INLINE void | setupConstraintFlags (PrepDescT &prepDesc, PxU16 flags) |
| |
|
void | preprocessRows (Px1DConstraint **sorted, Px1DConstraint *rows, PxVec4 *angSqrtInvInertia0, PxVec4 *angSqrtInvInertia1, PxU32 rowCount, const PxMat33 &sqrtInvInertia0F32, const PxMat33 &sqrtInvInertia1F32, const PxReal invMass0, const PxReal invMass1, const PxConstraintInvMassScale &ims, bool disablePreprocessing, bool diagonalizeDrive) |
| |
|
PX_FORCE_INLINE void | setupConstraintRows (Px1DConstraint *PX_RESTRICT rows, PxU32 size) |
| |
|
PX_FORCE_INLINE Vec3V | M33MulV4 (const Mat33V &a, const Vec4V b) |
| |
|
PX_FORCE_INLINE void | computeBlockStreamByteSizes (const bool useExtContacts, const CorrelationBuffer &c, PxU32 &_solverConstraintByteSize, PxU32 &_frictionPatchByteSize, PxU32 &_numFrictionPatches, PxU32 &_axisConstraintCount) |
| |
|
bool | createFinalizeSolverContacts (PxSolverContactDesc &contactDesc, CorrelationBuffer &c, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal frictionOffsetThreshold, PxReal correlationDistance, PxConstraintAllocator &constraintAllocator, Cm::SpatialVectorF *Z) |
| |
|
FloatV | setupExtSolverContact (const SolverExtBody &b0, const SolverExtBody &b1, const FloatV &d0, const FloatV &d1, const FloatV &angD0, const FloatV &angD1, const Vec3V &bodyFrame0p, const Vec3V &bodyFrame1p, const Vec3VArg normal, const FloatVArg invDt, const FloatVArg invDtp8, const FloatVArg dt, const FloatVArg restDistance, const FloatVArg maxPenBias, const FloatVArg restitution, const FloatVArg bounceThreshold, const PxContactPoint &contact, SolverContactPointExt &solverContact, const FloatVArg ccdMaxSeparation, Cm::SpatialVectorF *zVector, const Cm::SpatialVectorV &v0, const Cm::SpatialVectorV &v1, const FloatV &cfm, const Vec3VArg solverOffsetSlop, const FloatVArg norVel0, const FloatVArg norVel1, const FloatVArg damping) |
| |
|
bool | createFinalizeSolverContacts (PxSolverContactDesc &contactDesc, PxsContactManagerOutput &output, ThreadContext &threadContext, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal frictionOffsetThreshold, PxReal correlationDistance, PxConstraintAllocator &constraintAllocator, Cm::SpatialVectorF *Z) |
| |
|
PxU32 | getContactManagerConstraintDesc (const PxsContactManagerOutput &cmOutput, const PxsContactManager &, PxSolverConstraintDesc &desc) |
| |
|
SolverConstraintPrepState::Enum | createFinalizeSolverContacts4 (PxsContactManagerOutput **outputs, ThreadContext &threadContext, PxSolverContactDesc *blockDescs, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal frictionOffsetThreshold, PxReal correlationDistance, PxConstraintAllocator &constraintAllocator) |
| |
|
SolverConstraintPrepState::Enum | createFinalizeSolverContacts4 (Dy::CorrelationBuffer &c, PxSolverContactDesc *blockDescs, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal frictionOffsetThreshold, PxReal correlationDistance, PxConstraintAllocator &constraintAllocator) |
| |
|
bool | createFinalizeSolverContactsCoulomb1D (PxSolverContactDesc &contactDesc, PxsContactManagerOutput &output, ThreadContext &threadContext, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal frictionOffsetThreshold, PxReal correlationDistance, PxConstraintAllocator &constraintAllocator, Cm::SpatialVectorF *Z) |
| |
|
bool | createFinalizeSolverContactsCoulomb2D (PxSolverContactDesc &contactDesc, PxsContactManagerOutput &output, ThreadContext &threadContext, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal frictionOffsetThreshold, PxReal correlationDistance, PxConstraintAllocator &constraintAllocator, Cm::SpatialVectorF *Z) |
| |
|
SolverConstraintPrepState::Enum | createFinalizeSolverContacts4Coulomb1D (PxsContactManagerOutput **outputs, ThreadContext &threadContext, PxSolverContactDesc *blockDescs, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal frictionOffsetThreshold, PxReal correlationDistance, PxConstraintAllocator &constraintAllocator) |
| |
|
SolverConstraintPrepState::Enum | createFinalizeSolverContacts4Coulomb2D (PxsContactManagerOutput **outputs, ThreadContext &threadContext, PxSolverContactDesc *blockDescs, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal frictionOffsetThreshold, PxReal correlationDistance, PxConstraintAllocator &constraintAllocator) |
| |
|
bool | ValidateVec4 (const Vec4V v) |
| |
|
PX_FORCE_INLINE void | computeBlockStreamFrictionByteSizes (const CorrelationBuffer &c, PxU32 &_frictionPatchByteSize, PxU32 &_numFrictionPatches, PxU32 frictionPatchStartIndex, PxU32 frictionPatchEndIndex) |
| |
|
void | computeBlockStreamByteSizes4 (PxSolverContactDesc *descs, PxU32 &_solverConstraintByteSize, PxU32 *_axisConstraintCount, const CorrelationBuffer &c) |
| |
|
SolverConstraintPrepState::Enum | createFinalizeSolverContacts4Coulomb (PxsContactManagerOutput **outputs, ThreadContext &threadContext, PxSolverContactDesc *blockDescs, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal frictionOffsetThreshold, PxReal correlationDistance, PxConstraintAllocator &constraintAllocator, PxFrictionType::Enum frictionType) |
| |
|
void | computeBlockStreamByteSizesCoulomb4 (PxSolverContactDesc *descs, ThreadContext &threadContext, const CorrelationBuffer &c, const PxU32 numFrictionPerPoint, PxU32 &_solverConstraintByteSize, PxU32 *_axisConstraintCount, PxU32 &_numContactPoints4) |
| |
|
bool | createFinalizeSolverContactsCoulomb (PxSolverContactDesc &contactDesc, PxsContactManagerOutput &output, ThreadContext &threadContext, const PxReal invDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal frictionOffsetThreshold, PxReal correlationDistance, PxConstraintAllocator &constraintAllocator, PxFrictionType::Enum frictionType, Cm::SpatialVectorF *Z) |
| |
|
template<class PxSolverContactDescT > |
| PX_FORCE_INLINE Sc::ShapeInteraction * | getInteraction (const PxSolverContactDescT &desc) |
| |
|
PX_FORCE_INLINE bool | pointsAreClose (const PxTransform &body1ToBody0, const PxVec3 &localAnchor0, const PxVec3 &localAnchor1, const PxVec3 &axis, float correlDist) |
| |
|
PX_FORCE_INLINE bool | isSeparated (const FrictionPatch &patch, const PxTransform &body1ToBody0, const PxReal correlationDistance) |
| |
|
bool | getFrictionPatches (CorrelationBuffer &c, const PxU8 *frictionCookie, PxU32 frictionPatchCount, const PxTransform &bodyFrame0, const PxTransform &bodyFrame1, PxReal correlationDistance) |
| |
|
PX_FORCE_INLINE PxU32 | extractContacts (PxContactBuffer &buffer, PxsContactManagerOutput &npOutput, bool &hasMaxImpulse, bool &hasTargetVelocity, PxReal &invMassScale0, PxReal &invMassScale1, PxReal &invInertiaScale0, PxReal &invInertiaScale1, PxReal defaultMaxImpulse) |
| |
|
PX_FORCE_INLINE void | constructContactConstraint (const Mat33V &invSqrtInertia0, const Mat33V &invSqrtInertia1, const FloatVArg invMassNorLenSq0, const FloatVArg invMassNorLenSq1, const FloatVArg angD0, const FloatVArg angD1, const Vec3VArg bodyFrame0p, const Vec3VArg bodyFrame1p, const Vec3VArg normal, const FloatVArg norVel, const VecCrossV &norCross, const Vec3VArg angVel0, const Vec3VArg angVel1, const FloatVArg invDt, const FloatVArg invDtp8, const FloatVArg dt, const FloatVArg restDistance, const FloatVArg maxPenBias, const FloatVArg restitution, const FloatVArg bounceThreshold, const PxContactPoint &contact, SolverContactPoint &solverContact, const FloatVArg ccdMaxSeparation, const Vec3VArg solverOffsetSlop, const FloatVArg damping) |
| |
|
bool | createContactPatches (CorrelationBuffer &fb, const PxContactPoint *cb, PxU32 contactCount, PxReal normalTolerance) |
| |
|
bool | correlatePatches (CorrelationBuffer &fb, const PxContactPoint *cb, const PxTransform &bodyFrame0, const PxTransform &bodyFrame1, PxReal normalTolerance, PxU32 startContactPatchIndex, PxU32 startFrictionPatchIndex) |
| |
|
void | growPatches (CorrelationBuffer &fb, const PxContactPoint *buffer, const PxTransform &bodyFrame0, const PxTransform &bodyFrame1, PxU32 frictionPatchStartIndex, PxReal frictionOffsetThreshold) |
| |
|
void | chainTasks (PxLightCpuTask *first, PxLightCpuTask *next) |
| |
|
PxBaseTask * | createSolverTaskChain (DynamicsContext &dynamicContext, const SolverIslandObjects &objects, const PxsIslandIndices &counts, const PxU32 solverBodyOffset, IG::SimpleIslandManager &islandManager, PxU32 *bodyRemapTable, PxsMaterialManager *materialManager, PxBaseTask *continuation, PxsContactManagerOutputIterator &iterator, bool useEnhancedDeterminism) |
| |
|
void | WaitBodyRequiredState (volatile PxU32 *state, PxU32 requiredState) |
| |
|
void | solveParallel (SOLVER_PARALLEL_METHOD_ARGS) |
| |
|
void | solveParallelCouloumFriction (SOLVER_PARALLEL_METHOD_ARGS) |
| |
|
void | SolverCoreRegisterArticulationFns () |
| |
|
void | SolverCoreRegisterArticulationFnsCoulomb () |
| |
|
void | PxcFsFlushVelocity (FeatherstoneArticulation &articulation, Cm::SpatialVectorF *deltaV, bool computeForces) |
| |
|
PxQuat | computeSphericalJointPositions (const PxQuat &relativeQuat, const PxQuat &newRot, const PxQuat &pBody2WorldRot, PxReal *jPositions, const Cm::UnAlignedSpatialVector *motionMatrix, const PxU32 dofs) |
| |
|
PxQuat | computeSphericalJointPositions (const PxQuat &relativeQuat, const PxQuat &newRot, const PxQuat &pBody2WorldRot) |
| |
|
PX_CUDA_CALLABLE PX_FORCE_INLINE Cm::SpatialVectorF | translateImpulse (const Cm::SpatialVectorF &s, const PxVec3 &offset) |
| |
|
bool | createFinalizeSolverContactsStep (PxTGSSolverContactDesc &contactDesc, PxsContactManagerOutput &output, ThreadContext &threadContext, const PxReal invDtF32, const PxReal invTotalDt, const PxReal totalDt, const PxReal stepDt, const PxReal bounceThresholdF32, const PxReal frictionOffsetThreshold, const PxReal correlationDistance, const PxReal biasCoefficient, PxConstraintAllocator &constraintAllocator) |
| |
|
void | setupComplexLimit (ArticulationLink *links, Cm::SpatialVectorF *Z, ArticulationData &data, const PxU32 linkID, const PxReal angle, const PxReal lowLimit, const PxReal highLimit, const PxVec3 &axis, const PxReal cfm, ArticulationInternalConstraint &complexConstraint, ArticulationInternalLimit &limit) |
| |
|
void | solveExtContact (const PxSolverConstraintDesc &desc, Vec3V &linVel0, Vec3V &linVel1, Vec3V &angVel0, Vec3V &angVel1, Vec3V &linImpulse0, Vec3V &linImpulse1, Vec3V &angImpulse0, Vec3V &angImpulse1, bool doFriction) |
| |
|
void | solveExt1D (const PxSolverConstraintDesc &desc, Vec3V &linVel0, Vec3V &linVel1, Vec3V &angVel0, Vec3V &angVel1, Vec3V &li0, Vec3V &li1, Vec3V &ai0, Vec3V &ai1) |
| |
|
void | solveExt1D (const PxSolverConstraintDesc &desc, Vec3V &linVel0, Vec3V &linVel1, Vec3V &angVel0, Vec3V &angVel1, const Vec3V &linMotion0, const Vec3V &linMotion1, const Vec3V &angMotion0, const Vec3V &angMotion1, const QuatV &rotA, const QuatV &rotB, const PxReal elapsedTimeF32, Vec3V &linImpulse0, Vec3V &linImpulse1, Vec3V &angImpulse0, Vec3V &angImpulse1) |
| |
|
void | solveExtContactStep (const PxSolverConstraintDesc &desc, Vec3V &linVel0, Vec3V &linVel1, Vec3V &angVel0, Vec3V &angVel1, Vec3V &linDelta0, Vec3V &linDelta1, Vec3V &angDelta0, Vec3V &angDelta1, Vec3V &linImpulse0, Vec3V &linImpulse1, Vec3V &angImpulse0, Vec3V &angImpulse1, bool doFriction, const PxReal minPenetration, const PxReal elapsedTimeF32) |
| |
|
void | solveStaticConstraint (const PxSolverConstraintDesc &desc, Cm::SpatialVectorF &linkV, Cm::SpatialVectorF &impulse, Cm::SpatialVectorF &deltaV, const Cm::SpatialVectorF &motion, const PxQuat &rot, bool isTGS, PxReal elapsedTime, const PxReal minPenetration) |
| |
|
void | writeBackContact (const PxSolverConstraintDesc &desc, SolverContext &cache, PxSolverBodyData &bd0, PxSolverBodyData &bd1) |
| |
|
void | writeBack1D (const PxSolverConstraintDesc &desc, SolverContext &, PxSolverBodyData &, PxSolverBodyData &) |
| |
|
void | writeBackContact (const PxSolverConstraintDesc &desc, SolverContext *cache) |
| |
|
void | writeBack1D (const PxSolverConstraintDesc &desc) |
| |
|
void | concludeContact (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | conclude1D (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | concludeContact (const PxSolverConstraintDesc &desc) |
| |
|
void | conclude1DStep (const PxSolverConstraintDesc &desc) |
| |
|
void | solveExt1D (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | clearExt1D (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
PxU32 | computeHi (ArticulationData &data, const PxU32 linkID, PxReal *massMatrix, Cm::SpatialVectorF *f) |
| |
|
PX_FORCE_INLINE PxVec3 | computeSafeSqrtInertia (const PxVec3 &v) |
| |
|
void | copyToSolverBodyData (const PxVec3 &linearVelocity, const PxVec3 &angularVelocity, const PxReal invMass, const PxVec3 &invInertia, const PxTransform &globalPose, const PxReal maxDepenetrationVelocity, const PxReal maxContactImpulse, const PxU32 nodeIndex, const PxReal reportThreshold, PxSolverBodyData &solverBodyData, PxU32 lockFlags, const PxReal dt, bool gyroscopicForces) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverConstraint1DHeader)==48) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverConstraint1D)==96) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverConstraint1DExt)==160) |
| |
|
PX_FORCE_INLINE void | init (SolverConstraint1DHeader &h, PxU8 count, bool isExtended, const PxConstraintInvMassScale &ims) |
| |
|
PX_FORCE_INLINE void | init (SolverConstraint1D &c, const PxVec3 &_linear0, const PxVec3 &_linear1, const PxVec3 &_angular0, const PxVec3 &_angular1, PxReal _minImpulse, PxReal _maxImpulse) |
| |
|
PX_FORCE_INLINE bool | needsNormalVel (const Px1DConstraint &c) |
| |
|
PX_FORCE_INLINE void | setSolverConstants (PxReal &constant, PxReal &unbiasedConstant, PxReal &velMultiplier, PxReal &impulseMultiplier, const Px1DConstraint &c, PxReal normalVel, PxReal unitResponse, PxReal minRowResponse, PxReal erp, PxReal dt, PxReal recipdt) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverConstraint1DBase4)==272) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverConstraint1DDynamic4)==368) |
| |
|
PX_FORCE_INLINE void | init (SolverConstraint1DHeaderStep &h, PxU8 count, bool isExtended, const PxConstraintInvMassScale &ims) |
| |
|
PX_FORCE_INLINE void | init (SolverConstraint1DStep &c, const PxVec3 &_linear0, const PxVec3 &_linear1, const PxVec3 &_angular0, const PxVec3 &_angular1, PxReal _minImpulse, PxReal _maxImpulse) |
| |
|
PX_FORCE_INLINE bool | isArticulationConstraint (const PxSolverConstraintDesc &desc) |
| |
|
PX_FORCE_INLINE void | setConstraintLength (PxSolverConstraintDesc &desc, const PxU32 constraintLength) |
| |
|
PX_FORCE_INLINE PxU32 | getConstraintLength (const PxSolverConstraintDesc &desc) |
| |
|
PX_FORCE_INLINE Dy::FeatherstoneArticulation * | getArticulationA (const PxSolverConstraintDesc &desc) |
| |
|
PX_FORCE_INLINE Dy::FeatherstoneArticulation * | getArticulationB (const PxSolverConstraintDesc &desc) |
| |
|
| PX_COMPILE_TIME_ASSERT (0==(0x0f &sizeof(PxSolverConstraintDesc))) |
| |
|
void | solve1D (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveContact (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveContact_BStatic (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solve1DBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solve1DConcludeBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solve1DBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | writeBack1DBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactConcludeBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContact_BStaticBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContact_BStaticConcludeBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContact_BStaticBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
FloatV | solveExtContacts (SolverContactPointExt *contacts, const PxU32 nbContactPoints, const Vec3VArg contactNormal, Vec3V &linVel0, Vec3V &angVel0, Vec3V &linVel1, Vec3V &angVel1, Vec3V &li0, Vec3V &ai0, Vec3V &li1, Vec3V &ai1, PxF32 *PX_RESTRICT appliedForceBuffer) |
| |
|
void | solveExtContact (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveExtContactBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExtContactConcludeBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExtContactBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExt1DBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExt1DConcludeBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExt1DBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | ext1DBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveConcludeExtContact (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveConcludeExt1D (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveConclude1D (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveConcludeContact (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveConcludeContact_BStatic (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | writeBackContact4_Block (const PxSolverConstraintDesc *PX_RESTRICT desc, SolverContext &cache, const PxSolverBodyData **PX_RESTRICT bd0, const PxSolverBodyData **PX_RESTRICT bd1) |
| |
|
void | writeBack1D4 (const PxSolverConstraintDesc *PX_RESTRICT desc, SolverContext &, const PxSolverBodyData **PX_RESTRICT, const PxSolverBodyData **PX_RESTRICT) |
| |
|
void | solveContactPreBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32, SolverContext &cache) |
| |
|
void | solveContactPreBlock_Static (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32, SolverContext &cache) |
| |
|
void | solveContactPreBlock_Conclude (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32, SolverContext &cache) |
| |
|
void | solveContactPreBlock_ConcludeStatic (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32, SolverContext &cache) |
| |
|
void | solveContactPreBlock_WriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32, SolverContext &cache) |
| |
|
void | solveContactPreBlock_WriteBackStatic (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32, SolverContext &cache) |
| |
|
void | solve1D4_Block (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32, SolverContext &cache) |
| |
|
void | solve1D4Block_Conclude (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32, SolverContext &cache) |
| |
|
void | solve1D4Block_WriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32, SolverContext &cache) |
| |
|
void | writeBack1D4Block (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32, SolverContext &cache) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactHeader)==64) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactPoint)==48) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactPointExt)==112) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactFriction)==64) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactFrictionExt)==128) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactHeader4)==192) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactBatchPointBase4)==112) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactBatchPointDynamic4)==160) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverFrictionSharedData4)==128) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactFrictionBase4)==96) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactFrictionDynamic4)==144) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactCoulombHeader)==48) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverFrictionHeader)==32) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContactCoulombHeader4)==160) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContact4Base)==128) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverContact4Dynamic)==176) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverFrictionHeader4)==96) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverFriction4Base)==144) |
| |
|
| PX_COMPILE_TIME_ASSERT (sizeof(SolverFriction4Dynamic)==192) |
| |
|
void | contactBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | extContactBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | contactPreBlock_WriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
SolveBlockMethod * | getSolveBlockTable () |
| |
|
SolveBlockMethod * | getSolverConcludeBlockTable () |
| |
|
SolveWriteBackBlockMethod * | getSolveWritebackBlockTable () |
| |
|
void | solveVBlock (SOLVEV_BLOCK_METHOD_ARGS) |
| |
|
void | BusyWaitState (volatile PxU32 *state, const PxU32 requiredState) |
| |
|
void | WaitBodyRequiredState (PxU32 *state, const PxU32 requiredState) |
| |
|
void | BusyWaitStates (volatile PxU32 *stateA, volatile PxU32 *stateB, const PxU32 requiredStateA, const PxU32 requiredStateB) |
| |
|
void | SolveBlockParallel (PxSolverConstraintDesc *PX_RESTRICT constraintList, const PxI32 batchCount, const PxI32 index, const PxI32 headerCount, SolverContext &cache, BatchIterator &iterator, SolveBlockMethod solveTable[], const PxI32 iteration) |
| |
|
void | solveFrictionBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveFriction_BStaticBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExtFrictionBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulombBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExtContactCoulombBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulomb_BStaticBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulombConcludeBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExtContactCoulombConcludeBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulomb_BStaticConcludeBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulombBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExtContactCoulombBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulomb_BStaticBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveFrictionBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveFriction_BStaticBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExtFrictionBlockWriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulombPreBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulombPreBlock_Static (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulombPreBlock_Conclude (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulombPreBlock_ConcludeStatic (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulombPreBlock_WriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveContactCoulombPreBlock_WriteBackStatic (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveFrictionCoulombPreBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveFrictionCoulombPreBlock_Static (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveFrictionCoulombPreBlock_Conclude (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveFrictionCoulombPreBlock_ConcludeStatic (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveFrictionCoulombPreBlock_WriteBack (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveFrictionCoulombPreBlock_WriteBackStatic (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
PX_INLINE void | WaitForProgressCount (volatile PxI32 *pGlobalIndex, const PxI32 targetIndex) |
| |
|
void | solveContactCoulomb (const PxSolverConstraintDesc &desc, SolverContext &) |
| |
|
void | solveFriction (const PxSolverConstraintDesc &desc, SolverContext &) |
| |
|
void | solveContactCoulomb_BStatic (const PxSolverConstraintDesc &desc, SolverContext &) |
| |
|
void | solveFriction_BStatic (const PxSolverConstraintDesc &desc, SolverContext &) |
| |
|
void | concludeContactCoulomb (const PxSolverConstraintDesc &desc, SolverContext &) |
| |
|
void | writeBackContactCoulomb (const PxSolverConstraintDesc &desc, SolverContext &cache, PxSolverBodyData &bd0, PxSolverBodyData &bd1) |
| |
|
void | solveFriction_BStaticConcludeBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveExtContactCoulomb (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveExtFriction (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveExtFrictionConcludeBlock (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxU32 constraintCount, SolverContext &cache) |
| |
|
void | solveConcludeExtContactCoulomb (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveConcludeContactCoulomb (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | solveConcludeContactCoulomb_BStatic (const PxSolverConstraintDesc &desc, SolverContext &cache) |
| |
|
void | writeBackContactCoulomb4 (const PxSolverConstraintDesc *desc, SolverContext &cache, const PxSolverBodyData **PX_RESTRICT bd0, const PxSolverBodyData **PX_RESTRICT bd1) |
| |
|
PX_FORCE_INLINE PxReal | safeRecip (const PxReal x) |
| |
|
PX_FORCE_INLINE void | computeBlockStreamByteSizesStep (const bool useExtContacts, const CorrelationBuffer &c, PxU32 &_solverConstraintByteSize, PxU32 &_frictionPatchByteSize, PxU32 &_numFrictionPatches, PxU32 &_axisConstraintCount, PxReal torsionalPatchRadius) |
| |
|
Cm::SpatialVector | createImpulseResponseVector (const PxVec3 &linear, const PxVec3 &angular, const SolverExtBodyStep &body) |
| |
|
Cm::SpatialVectorV | createImpulseResponseVector (const aos::Vec3V &linear, const aos::Vec3V &angular, const SolverExtBodyStep &body) |
| |
|
PxReal | getImpulseResponse (const SolverExtBodyStep &b0, const Cm::SpatialVector &impulse0, Cm::SpatialVector &deltaV0, PxReal dom0, PxReal angDom0, const SolverExtBodyStep &b1, const Cm::SpatialVector &impulse1, Cm::SpatialVector &deltaV1, PxReal dom1, PxReal angDom1, bool allowSelfCollision) |
| |
|
FloatV | getImpulseResponse (const SolverExtBodyStep &b0, const Cm::SpatialVectorV &impulse0, Cm::SpatialVectorV &deltaV0, const FloatV &dom0, const FloatV &angDom0, const SolverExtBodyStep &b1, const Cm::SpatialVectorV &impulse1, Cm::SpatialVectorV &deltaV1, const FloatV &dom1, const FloatV &angDom1, bool) |
| |
|
void | setupFinalizeExtSolverContactsStep (const PxContactPoint *buffer, const CorrelationBuffer &c, const PxTransform &bodyFrame0, const PxTransform &bodyFrame1, PxU8 *workspace, const SolverExtBodyStep &b0, const SolverExtBodyStep &b1, const PxReal invDtF32, const PxReal invTotalDtF32, const PxReal totalDtF32, const PxReal dtF32, PxReal bounceThresholdF32, PxReal invMassScale0, PxReal invInertiaScale0, PxReal invMassScale1, PxReal invInertiaScale1, const PxReal restDist, PxU8 *frictionDataPtr, PxReal ccdMaxContactDist, const PxReal torsionalPatchRadiusF32, const PxReal minTorsionalPatchRadiusF32, const PxReal biasCoefficient, const PxReal solverOffsetSlop) |
| |
|
bool | createFinalizeSolverContactsStep (PxTGSSolverContactDesc &contactDesc, CorrelationBuffer &c, const PxReal invDtF32, const PxReal invTotalDtF32, const PxReal totalDtF32, const PxReal dtF32, const PxReal bounceThresholdF32, const PxReal frictionOffsetThreshold, const PxReal correlationDistance, const PxReal biasCoefficient, PxConstraintAllocator &constraintAllocator) |
| |
|
void | solveContact (const PxSolverConstraintDesc &desc, bool doFriction, const PxReal minPenetration, const PxReal elapsedTimeF32) |
| |
|
PX_FORCE_INLINE Vec3V | V3FromV4 (Vec4V x) |
| |
|
PX_FORCE_INLINE Vec3V | V3FromV4Unsafe (Vec4V x) |
| |
|
PX_FORCE_INLINE Vec4V | V4FromV3 (Vec3V x) |
| |
|
void | setSolverConstantsStep (PxReal &error, PxReal &biasScale, PxReal &targetVel, PxReal &maxBias, PxReal &velMultiplier, PxReal &rcpResponse, const Px1DConstraint &c, PxReal normalVel, PxReal unitResponse, PxReal minRowResponse, PxReal erp, PxReal dt, PxReal totalDt, PxReal biasClamp, PxReal recipdt, PxReal recipTotalDt, PxReal velTarget) |
| |
|
PxU32 | setupSolverConstraintStep (const PxTGSSolverConstraintPrepDesc &prepDesc, PxConstraintAllocator &allocator, const PxReal dt, const PxReal totalDt, const PxReal invdt, const PxReal invTotalDt, const PxReal lengthScale, const PxReal biasCoefficient) |
| |
|
PxU32 | SetupSolverConstraintStep (SolverConstraintShaderPrepDesc &shaderDesc, PxTGSSolverConstraintPrepDesc &prepDesc, PxConstraintAllocator &allocator, const PxReal dt, const PxReal totalDt, const PxReal invdt, const PxReal invTotalDt, const PxReal lengthScale, const PxReal biasCoefficient) |
| |
|
void | solveExt1DStep (const PxSolverConstraintDesc &desc, const PxReal elapsedTimeF32, SolverContext &cache, const PxTGSSolverBodyTxInertia *const txInertias) |
| |
|
void | solve1DStep (const PxSolverConstraintDesc &desc, const PxTGSSolverBodyTxInertia *const txInertias, const PxReal elapsedTime) |
| |
|
void | solveExtContactStep (const PxSolverConstraintDesc &desc, bool doFriction, const PxReal minPenetration, const PxReal elapsedTimeF32, SolverContext &cache) |
| |
|
void | solveContactBlock (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, const PxTGSSolverBodyTxInertia *const, const PxReal minPenetration, const PxReal elapsedTime, SolverContext &) |
| |
|
void | solve1DBlock (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, const PxTGSSolverBodyTxInertia *const txInertias, const PxReal, const PxReal elapsedTime, SolverContext &) |
| |
|
void | solveExtContactBlock (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, const PxTGSSolverBodyTxInertia *const, const PxReal minPenetration, const PxReal elapsedTime, SolverContext &cache) |
| |
|
void | solveExt1DBlock (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, const PxTGSSolverBodyTxInertia *const txInertias, const PxReal, const PxReal elapsedTime, SolverContext &cache) |
| |
|
void | writeBackContact (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, SolverContext *cache) |
| |
|
void | writeBack1D (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, SolverContext *) |
| |
|
void | solveConclude1DBlock (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, const PxTGSSolverBodyTxInertia *const txInertias, const PxReal elapsedTime, SolverContext &) |
| |
|
void | solveConclude1DBlockExt (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, const PxTGSSolverBodyTxInertia *const txInertias, const PxReal elapsedTime, SolverContext &cache) |
| |
|
void | solveConcludeContactBlock (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, const PxTGSSolverBodyTxInertia *const, const PxReal elapsedTime, SolverContext &) |
| |
|
void | solveConcludeContactExtBlock (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, const PxTGSSolverBodyTxInertia *const, const PxReal elapsedTime, SolverContext &cache) |
| |
|
SolverConstraintPrepState::Enum | setupSolverConstraintStep4 (PxTGSSolverConstraintPrepDesc *PX_RESTRICT constraintDescs, const PxReal dt, const PxReal totalDt, const PxReal recipdt, const PxReal recipTotalDt, PxU32 &totalRows, PxConstraintAllocator &allocator, PxU32 maxRows, const PxReal lengthScale, const PxReal biasCoefficient) |
| |
|
SolverConstraintPrepState::Enum | setupSolverConstraintStep4 (SolverConstraintShaderPrepDesc *PX_RESTRICT constraintShaderDescs, PxTGSSolverConstraintPrepDesc *PX_RESTRICT constraintDescs, const PxReal dt, const PxReal totalDt, const PxReal recipdt, const PxReal recipTotalDt, PxU32 &totalRows, PxConstraintAllocator &allocator, const PxReal lengthScale, const PxReal biasCoefficient) |
| |
|
SolverConstraintPrepState::Enum | createFinalizeSolverContacts4Step (PxsContactManagerOutput **cmOutputs, ThreadContext &threadContext, PxTGSSolverContactDesc *blockDescs, const PxReal invDtF32, const PxReal totalDtF32, const PxReal invTotalDtF32, const PxReal dt, const PxReal bounceThresholdF32, const PxReal frictionOffsetThreshold, const PxReal correlationDistance, const PxReal biasCoefficient, PxConstraintAllocator &constraintAllocator) |
| |
|
SolverConstraintPrepState::Enum | createFinalizeSolverContacts4Step (Dy::CorrelationBuffer &c, PxTGSSolverContactDesc *blockDescs, const PxReal invDtF32, const PxReal totalDt, const PxReal invTotalDtF32, const PxReal dt, const PxReal bounceThresholdF32, const PxReal frictionOffsetThreshold, const PxReal correlationDistance, const PxReal biasCoefficient, PxConstraintAllocator &constraintAllocator) |
| |
|
PX_FORCE_INLINE void | QuatRotate4 (const Vec4VArg qx, const Vec4VArg qy, const Vec4VArg qz, const Vec4VArg qw, const Vec4VArg vx, const Vec4VArg vy, const Vec4VArg vz, Vec4V &rX, Vec4V &rY, Vec4V &rZ) |
| |
|
void | computeBlockStreamByteSizes4 (PxTGSSolverContactDesc *descs, PxU32 &_solverConstraintByteSize, PxU32 *_axisConstraintCount, const CorrelationBuffer &c) |
| |
|
void | solveContact4_Block (const PxSolverConstraintDesc *PX_RESTRICT desc, const bool doFriction, const PxReal minPenetration, const PxReal elapsedTimeF32) |
| |
|
void | writeBackContact4_Block (const PxSolverConstraintDesc *PX_RESTRICT desc, SolverContext *cache) |
| |
|
void | solveContact4 (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *PX_RESTRICT desc, const PxTGSSolverBodyTxInertia *const, const PxReal minPenetration, const PxReal elapsedTime, SolverContext &) |
| |
|
void | writeBackContact4 (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *PX_RESTRICT desc, SolverContext *cache) |
| |
|
PX_FORCE_INLINE Vec4V | V4Dot3 (const Vec4V &x0, const Vec4V &y0, const Vec4V &z0, const Vec4V &x1, const Vec4V &y1, const Vec4V &z1) |
| |
|
void | solve1DStep4 (const PxSolverConstraintDesc *PX_RESTRICT desc, const PxTGSSolverBodyTxInertia *const txInertias, const PxReal elapsedTimeF32) |
| |
|
void | solve1D4 (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *PX_RESTRICT desc, const PxTGSSolverBodyTxInertia *const txInertias, const PxReal, const PxReal elapsedTime, SolverContext &) |
| |
|
void | writeBack1D4 (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *PX_RESTRICT desc, SolverContext *) |
| |
|
void | concludeContact4_Block (const PxSolverConstraintDesc *PX_RESTRICT desc) |
| |
|
void | conclude1DStep4 (const PxSolverConstraintDesc *PX_RESTRICT desc) |
| |
|
void | solveConcludeContact4 (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, const PxTGSSolverBodyTxInertia *const, const PxReal elapsedTime, SolverContext &) |
| |
|
void | solveConclude1D4 (const PxConstraintBatchHeader &hdr, const PxSolverConstraintDesc *desc, const PxTGSSolverBodyTxInertia *const txInertias, const PxReal elapsedTime, SolverContext &) |
| |
|
PX_FORCE_INLINE PxVec3 | safeRecip (const PxVec3 &v) |
| |
|
void | copyToSolverBodyDataStepKinematic (const PxVec3 &linearVelocity, const PxVec3 &angularVelocity, const PxTransform &globalPose, const PxReal maxDepenetrationVelocity, const PxReal maxContactImpulse, const PxU32 nodeIndex, const PxReal reportThreshold, const PxReal maxAngVelSq, PxTGSSolverBodyVel &solverVel, PxTGSSolverBodyTxInertia &solverBodyTxInertia, PxTGSSolverBodyData &solverBodyData) |
| |
|
void | averageVelocity (PxTGSSolverBodyVel &vel, const PxF32 invDt, const PxReal ratio) |
| |