Obi Official Forum
Bug / Crash distance constraint, stretching scale bug - Printable Version

+- Obi Official Forum (https://obi.virtualmethodstudio.com/forum)
+-- Forum: Obi Users Category (https://obi.virtualmethodstudio.com/forum/forum-1.html)
+--- Forum: Obi Cloth (https://obi.virtualmethodstudio.com/forum/forum-2.html)
+--- Thread: Bug / Crash distance constraint, stretching scale bug (/thread-2893.html)



distance constraint, stretching scale bug - Hakazaba - 27-04-2021

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


RE: distance constraint, stretching scale bug - josemendez - 27-04-2021

(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/tutorials/obisolver.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/tutorials/convergence.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).


RE: distance constraint, stretching scale bug - Hakazaba - 28-04-2021

Oh! Thank you very much for the explanation!