pafuhana1213 / KawaiiPhysics

KawaiiPhysics : Simple fake Physics for UnrealEngine4 & 5
MIT License
1.92k stars 287 forks source link

[Bug Report] WorldDampingRotation not working as intended #85

Closed dashantaozi closed 1 year ago

dashantaozi commented 1 year ago

Hi pafuhana1213,

I'm reporting a bug here.

The bug: When rotating my character along z axis, her hair, which is animated by kawaii, appears jittering.

The cause: In the function SimulateModifyBones, Bone.PrevLocation is updated before its final usage, causing WorldDampingRotation to not work properly.

The fix: This can be fixed by moving the update of Bone.PrevLocation to the end of the loop.

image

Regards, Yi

pafuhana1213 commented 1 year ago

Hi @dashantaozi ! Thank you for your report, but I can't reproduce this issue and I still don't understand how good your suggestions are.

Follow Rotation uses the correction result of Kawaii in the previous frame and the correction using Rotation. This is because Kawaii predicts based on the result in the previous frame. Also, I may have misunderstood your suggestion, but moving from the beginning to the end of the loop shouldn't change the process.

However, this code is from a few years ago, so I may have misunderstood it. So, to prove that your suggestion is correct, could you share how you reproduced it, what it looked like when you reproduced it, and detailed modified code?

thanks