diff options
author | Lukas Tönne <lukas.toenne@gmail.com> | 2022-06-22 08:37:45 +0300 |
---|---|---|
committer | Lukas Tönne <lukas.toenne@gmail.com> | 2022-06-22 08:37:45 +0300 |
commit | f4d8382c86ba760c5fccf7096ca50d6572b208bd (patch) | |
tree | 229e2a16e7dbe330b353552cc30eac67233a101e /source/blender/editors/object/object_remesh.cc | |
parent | 75f0aaab3d37f9eac61d5cea2b42b16adabff304 (diff) |
Rigid body physics: Move effector force update into substep loop.
The substep loop for rigid bodies causes unequal effects of force fields depedending on the substep setting, larger
substep counts cause a diminishing effect of force fields.
This is because the force to apply on a body is reset in Bullet after each step and needs to be recomputed. Without this
the body will just coast with constant velocity after the first substep. Since the per-step impulse with larger substep
counts is smaller, the effect is that more substeps cause a smaller total impulse.
The fix is to move external force calculation into the substep loop and update forces for each substep.
Note that this may be considered a breaking change, because the breaking commit rB1aa54d4921c2 has been in master for
a long time and after this fix force fields will generally have a much larger effect on rigid bodies (10x for the
default setting of 10 substeps).
Differential Revision: https://developer.blender.org/D15173
Diffstat (limited to 'source/blender/editors/object/object_remesh.cc')
0 files changed, 0 insertions, 0 deletions