NVIDIAGameWorks / PhysX-3.4

NVIDIA PhysX SDK 3.4
https://www.nvidia.com/
2.34k stars 275 forks source link

There is no way to set a limited joint's contraint limits as hard limits with Max PhysX plugin-in #119

Open sainimu78 opened 4 years ago

sainimu78 commented 4 years ago

I'm using 3D Studio Max DCC plug-in for PhysX 3-4-2 and 3ds Max 2015

My using steps:

  1. Create Dynamic Rig
  2. select the left knee joint which is between the left thigh and the left calf.
  3. set Constraint Limits as Hard Limits
  4. Start simulation

I can see the thigh and the calf moves exceeding the Swing Y Limits.

I also exported PhysXScene to see the parameters

nvpx.PrepExportPhysXScene true "RepX"
nvpx.PrepExportPhysXProj true
nvpx.ExportPhysXProject "test" "exported" ""

The exported file shows the knee joint's Stiffness and Damping of SwingLimit are always 0.1 and 0.2, like this

<SwingLimit >
    <Restitution >0</Restitution>
    <BounceThreshold >0.5</BounceThreshold>
    <Stiffness >0.1</Stiffness>
    <Damping >0.2</Damping>
    <ContactDistance >0.0617253</ContactDistance>
    <YAngle >1.23451</YAngle>
    <ZAngle >1.17549e-038</ZAngle>
</SwingLimit>

After trying all parameters combination I found that there is no way to set a limited joint's contraint limits as hard limits, or say there is no way to change Stiffness and Damping of SwingLimit