The physics seems extremely unstable.
I built a very simple see-saw, with a plank that rotates around only one axis.
When the character steps on it, it often shudders a lot, and also twists along an additional axis.
turn on CCD for the plank and the character’s capsule
turn up angular damping to 0.2 and linear damping to 0.1
remove the constraint, and instead use the “lock axes” flags in the plank body
re-constructing the objects using a FBX plank instead of a static-mesh-made-from-BSP
turn on substepping and set max substep size to 0.008, max count to 6
turn off gravity for the plank
Unfortunately, while it may perhaps be slightly more stable … not really. Still pretty jerky and shuddery.
How do I create a stable see-saw? This is the simplest mechanical system imaginable: One body, one fulcrum.
When I did physics on my own and in the ODE library, this was pretty easy to stabilize, so what’s going wrong with UE / PhysX?
I could not reproduce the problem. (Start with 3rd person template, make a plank mesh from a bsp, set simulate physics on the static mesh, add a physics constraint component, lock all movement but twist motion. Result: Works perfectly smooth.)
Two ideas:
Is your framerate stable and high enough?
Do you have anything else that influences the plank except the player and the constraint? Are there maybe additional constraints or other objects with physics activated?
I’m using 4.13.0
I believe the frame rate is fine (a GeForce GTX 970M)
Also, with sub-stepping, frame rate should not affect the simulation as much.
There are no other physics constraints.
Note that I re-built the plank from scratch again, and still had this problem, so I’m surprised if you wouldn’t see it.
I will do a recording of building the entire thing from scratch and see how that goes.
You are correct; when creating it from scratch-scratch in the 3rd person template, it is stable.
Even when replacing the floor with a BSP box, it’s still stable.
So, what’s wrong with my test level?
Okay, I found what it is!
My character controller is set to collision mode “ragdoll” because I ragdoll it when it dies.
When changing the 3rd Person template character to ragdoll, I get the same instability.
I imagine this means that I have to keep the collision mode to standard, and update it to ragdoll right when the character dies.