Should impulse limits in solver include SplitImpulse push impulse? #4574
TrianglesPCT
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
If you look in btSequentialImpulseConstraintSolver.cpp at line 1617 and 1631 you will see that it uses the totalImpulse when calculating friction limits(value is m_appliedImpulse).
This does not include any impulse from the split impulse solve that ran earlier(stored in m_appliedPushImpulse).
What I'm wondering is if this should include that value?
Basically should totalImpulse = m_appliedImpulse+ m_appliedPushImpulse?
It seems odd to me that the limits are the same regardless of if it is solving for position + velocity or just velocity, this is binary decision and causes an abrupt change to the limits..
Split impulses doesn't actual run most of the time in my experience(as it requires penetration depth over a limit), so this mostly doesn't matter, maybe that is why it is this way?
I've tested this change and don't observe any downsides, but I'm mostly interested in if this is the correct theoretical thing to be doing, anyway thanks!
Beta Was this translation helpful? Give feedback.
All reactions