diff options
| author | Sheikh Dawood Abdul Ajees <[email protected]> | 2017-11-20 11:35:52 -0600 |
|---|---|---|
| committer | Sheikh Dawood Abdul Ajees <[email protected]> | 2017-11-20 11:35:52 -0600 |
| commit | 3cc1861221d761b7f0301b9b61de4e1aa18c09f4 (patch) | |
| tree | a51eb808016e1710a4bbd537000a493250602944 /PhysX_3.4/Source/PhysXExtensions/src/ExtSphericalJoint.cpp | |
| parent | PhysX 3.4.1, APEX 1.4.1 Release @22845541 (diff) | |
| download | physx-3.4-3cc1861221d761b7f0301b9b61de4e1aa18c09f4.tar.xz physx-3.4-3cc1861221d761b7f0301b9b61de4e1aa18c09f4.zip | |
PhysX 3.4.1, APEX 1.4.1 Release @23131702
Diffstat (limited to 'PhysX_3.4/Source/PhysXExtensions/src/ExtSphericalJoint.cpp')
| -rw-r--r-- | PhysX_3.4/Source/PhysXExtensions/src/ExtSphericalJoint.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/PhysX_3.4/Source/PhysXExtensions/src/ExtSphericalJoint.cpp b/PhysX_3.4/Source/PhysXExtensions/src/ExtSphericalJoint.cpp index 362b3f9d..d60f94de 100644 --- a/PhysX_3.4/Source/PhysXExtensions/src/ExtSphericalJoint.cpp +++ b/PhysX_3.4/Source/PhysXExtensions/src/ExtSphericalJoint.cpp @@ -128,7 +128,7 @@ void SphericalJointVisualize(PxConstraintVisualizer& viz, const void* constantBlock, const PxTransform& body0Transform, const PxTransform& body1Transform, - PxU32 /*flags*/) + PxU32 flags) { using namespace joint; const SphericalJointData& data = *reinterpret_cast<const SphericalJointData*>(constantBlock); @@ -136,10 +136,10 @@ void SphericalJointVisualize(PxConstraintVisualizer& viz, PxTransform cA2w = body0Transform * data.c2b[0]; PxTransform cB2w = body1Transform * data.c2b[1]; - viz.visualizeJointFrames(cA2w, cB2w); + if(flags & PxConstraintVisualizationFlag::eLOCAL_FRAMES) + viz.visualizeJointFrames(cA2w, cB2w); - - if(data.jointFlags & PxSphericalJointFlag::eLIMIT_ENABLED) + if((flags & PxConstraintVisualizationFlag::eLIMITS) && (data.jointFlags & PxSphericalJointFlag::eLIMIT_ENABLED)) { if(cA2w.q.dot(cB2w.q)<0) cB2w.q = -cB2w.q; @@ -149,7 +149,8 @@ void SphericalJointVisualize(PxConstraintVisualizer& viz, Ps::separateSwingTwist(cB2cA.q,swing,twist); PxVec3 tanQSwing = PxVec3(0, Ps::tanHalf(swing.z,swing.w), -Ps::tanHalf(swing.y,swing.w)); - Cm::ConeLimitHelper coneHelper(data.tanQZLimit, data.tanQYLimit, data.tanQPad); + const PxReal pad = data.limit.isSoft() ? 0.0f : data.tanQPad; + Cm::ConeLimitHelper coneHelper(data.tanQZLimit, data.tanQYLimit, pad); viz.visualizeLimitCone(cA2w, data.tanQZLimit, data.tanQYLimit, !coneHelper.contains(tanQSwing)); } |