Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Bug / Crash  distance constraint, stretching scale bug
#1
The stretching scale variable distorts meshes in an incorrect way, some constrants actually extend instead of retracting when it is lowered. Resulting in very messy meshes.
 
Link to video demonstrating differences in two mirrored meshes as stretching scale is altered:

https://gyazo.com/2b07c7a5b333ed802d32c35a70d56b10
Reply
#2
(27-04-2021, 04:07 AM)Hakazaba Wrote: The stretching scale variable distorts meshes in an incorrect way, some constrants actually extend instead of retracting when it is lowered. Resulting in very messy meshes.
 
Link to video demonstrating differences in two mirrored meshes as stretching scale is altered:

https://gyazo.com/2b07c7a5b333ed802d32c35a70d56b10

Hi,

This is not a bug, it's completely normal and to be expected when using sequential evaluation for distance constraints, as it is order-dependent. Switching to parallel evaluation will get rid of the biasing and all constraints will deform equally at the cost of slower convergence.

This behavior is documented in the "evaluation mode" section at the bottom of this page:
http://obi.virtualmethodstudio.com/tutor...olver.html

Also, this page contains an in-depth explanation of how Obi works internally, including animations of both sequential and parallel solving:
http://obi.virtualmethodstudio.com/tutor...gence.html

For deeper understanding, you can also look for online resources on Gauss-Seidel and averaged Jacobi, which are the common names of sequential and parallel evaluation respectively. Both of them are used in all iterative physics engines (though most engines only use Gauss-Seidel/sequential, Obi lets you choose).
Reply
#3
Oh! Thank you very much for the explanation!
Reply