GSoC 2020: Soft Body Sim - Discussion and Suggestions

At the moment it is not. But that will definitely be possible by the end of the summer. There are two things I still need to do to make that happen: goal positions to articulate the character movement, and self collisions (assuming you want both the body and arm to deform).

3 Likes

This is amazing work! Canā€™t wait to try it. I have a question, is that possible to simulate Mooney-Rivlin material based on the parameter get from real experiment (with the compressible term) ? I will be very happy if it is possible!

It should have no problem handling Mooney-Rivlin.

Great ! Canā€™t wait to build a test version, please let me know once you have it !! I have tried c4484057, it gives me some error when i try to build it in Visual studio.

Could you p.m. the error?

Yes Sure. All i did was downloading the latest commits c4484057 and buit it in windows.

image

Ah, I think its a c++ version error. I like to use initializer lists for array and vector inits. Iā€™ll have to look into that later.

Ok, Great ! Thank you very much indeed.

Blenderā€™s source code (the internal code anyways) recently moved to C++ 2017. 22 June 2020

It might be a good idea to read through the task: https://developer.blender.org/T76783

Is that mean if i use VS 2017 to build, the error will be fixed?

Visual Studio version is not the same as C++ version, but newer VS probably defaults to newer C++. I think itā€™s configurable per-projectā€¦ but I donā€™t use Windows much.

Okay, thatā€™s good to know that Blender has moved to C++17. Mengzhe, are you able to compile with the C++17? There should be a dropdown menu that allows you to set that.

It works, i have successfully built it. Many thanks :smiley:

Thanks for the work @mattoverby
Question: Will be possible to have the ā€œplasticā€ option from the original blender softbody in this new implementation? The feature that keeps the deformation along the simulation?

Hey @EvertonSchneider . Iā€™ve seen that your main OS is Ubuntu and since you already have a build working, I want to ask you how you built this branch. Iā€™m on Linux Mint and Iā€™ve downloaded the branch and built it like a normal version of Blender, but Iā€™m not quite sure if Iā€™m getting the new solver made by Matt. The soft body interface looks the same as the existing one. Do I have to make some configuration first before building Blender?

Iā€™m using the blender wiki default instructions to build blender on Ubuntu.
Itā€™s ok, it seems that you are on right way. The UI is the same as the old for me tooā€¦ but under the hood itā€™s the new implementation. Just test and start using and you see the differences, try the suzzane falling into a collision plane and you will see.

1 Like

I do not plan on handling plasticity defo. Once the interface is more reliable there may be an easy way to fake it in the future by resetting the rest shape between frames. Thatā€™s not really plasticity, but it may be sufficient.

I have not changed the interface at all. At the moment the interface variables are ignored. I plan to add some UI support very soon.

I appreciate people testing out the code. Iā€™m happy there are a lot of people are excited to try it out. Iā€™ve only recently started tagging ā€œstableā€ versions, but I may accidently commit unfinished code here and there. This is very much a rapid-development branch, so please bear with me if there are instabilities or bugs.

Iā€™m trying to play more with the SOC-2020-SOFT-BODY and I see some strange behavior related to mass and friction (I know that it will be tweakable laterā€¦) Not sure if I can ā€œreportā€ here what Iā€™m finding. Iā€™m doing just some random tests by nowā€¦

The first ā€œTā€ and the ā€œEā€ are ok for meā€¦ but the ā€œSā€ and the last ā€œTā€ are a bit weird

2 Likes

Thanks for posting a video, youā€™re 100% correct that there are issues with both mass and friction.

  • Right now, there is no friction, so thatā€™s why things are sliding around.
  • When it comes to mass, this is an issue with the mass being distributed to the lattice. Iā€™ve mentioned it a few times in my weekly updates, but at the moment the mass of the embedded object is not accurately transferred to the lattice, and thatā€™s what weā€™re seeing here. Itā€™s probably why the S flips over and hangs as if there is something heavy attached to the top of it. This will be improved in the future by both a) a better lattice generation and b) better mass computation.

One thing to double check, are goal positions turned off? I think they are on by default (which pins EVERY vertex in the sim), but depending on the stiffness of the goal position springs they might not be obvious. This would also cause very goofy looking motion.

2 Likes

Thanks for the clarification, I will assume that in my tests.

Iā€™m sorry for thatā€¦ I will re-read your reports, I already did it but I forget about itā€¦

I always disable the ā€œgoalā€ option, itā€™s off in this test.
Thanks for the clarification! This make sense for me now, I will keep testing and see what I can do with it in this stage. Itā€™s already very fun to play with.