Developer Notes

This was modified and is by design as many users were not expecting the old behavior. To do this you should hold alt and rotate.

Description

Rotating a constraint does not update its range of motion based off of angular limits. The user who reported this also mentioned that migrated constraints do not see this issue (eg: migrating a physics asset with constraints made in 4.20 to 4.21 works without an issue) but rotating them after migration to a version where this issue is present makes it occur.

Regression?: No
This occurs in 4.21.
This is however a regression from 4.20 where it did not occur.

Steps to Reproduce
  1. Import a Skeletal Mesh (Exported TutorialTPP and imported it again for this test)
  2. Open the physics asset
  3. Delete all generated physics body
  4. Create two bodies on two different bones with intention to create a constraint between (I used upperarm_r and lowerarm_r for this test)
  5. Select one of the bodies and add a constraint on the other's bone
  6. Set the parent physics body to Kinematic
  7. In the Constraint, set two of the Angular Limits to Locked and set the other to Limited
  8. Press simulate and notice the movement along the constraint.
  9. Rotate the constraint along the axis that is currently set to Limited to change the limited range
  10. Press simulate
    Results: The results do not change and the range of movement stays the same
    Expected: The range of movement matches the newly rotated constraint.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-72542 in the post.

8
Login to Vote

By Design
ComponentUE - Simulation - Physics
Affects Versions4.214.224.23
CreatedApr 9, 2019
ResolvedApr 19, 2019
UpdatedNov 4, 2020