Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Elastic Deformation Question
#1
Hi! Sonrojado

I want to simulate human soft tissues through the ObiSoftbody toolkit.
I have two questions, both of which do not consider plastic deformation, but only elastic deformation:
① How to modify the elastic deformation effect of the soft body. For example, the elasticity of fat is different from that of muscle. I modified the Shape Matching Constraints in the test, but the effect does not seem to meet expectations.
② I want to simulate the elasticity value of each soft tissue, so I am considering obtaining the deformation of each particle through the API for calculation. Is my idea correct?

Thank you for your attention, I really want to know how to do my work, thank you. Gran sonrisa
Reply
#2
(25-06-2024, 07:32 AM)wenhao_zheng Wrote: ① How to modify the elastic deformation effect of the soft body. For example, the elasticity of fat is different from that of muscle. I modified the Shape Matching Constraints in the test, but the effect does not seem to meet expectations.

Hi!

Use the soft body's deformation resistance setting. At 1, the softbody will be as rigid as the solver's settings allow it to be: the larger your budget for simulation - more substeps, more iterations - the higher the rigidness it will achieve. As you reduce deformation resistance, the softbody becomes softer.

Note that the resolution of your blueprint and the simulation settings (ObiFixedUpdater substeps and Solver iterations) have an influence on the maximum rigidness of softbodies.

(25-06-2024, 07:32 AM)wenhao_zheng Wrote: ② I want to simulate the elasticity value of each soft tissue, so I am considering obtaining the deformation of each particle through the API for calculation. Is my idea correct?

Elasticity is not the same thing as deformation, I'm unsure of what you want to do. If you want to read back the amount of deformation, this is done by reading each constraint in the softbody. Constraints contain a 3x3 deformation matrix that encodes deformation in their neighborhood. See the DeformationGradient sample scene for an example of this.

If you want to set the elasticity (that is, how much the softbody is allowed to deform), this is also done per-constraint. See:
http://obi.virtualmethodstudio.com/manua...aints.html

kind regards,
Reply
#3
(25-06-2024, 08:16 AM)josemendez Wrote: Hi!

Use the soft body's deformation resistance setting. At 1, the softbody will be as rigid as the solver's settings allow it to be: the larger your budget for simulation - more substeps, more iterations - the higher the rigidness it will achieve. As you reduce deformation resistance, the softbody becomes softer.

Note that the resolution of your blueprint and the simulation settings (ObiFixedUpdater substeps and Solver iterations) have an influence on the maximum rigidness of softbodies.


Elasticity is not the same thing as deformation, I'm unsure of what you want to do. If you want to read back the amount of deformation, this is done by reading each constraint in the softbody. Constraints contain a 3x3 deformation matrix that encodes deformation in their neighborhood. See the DeformationGradient sample scene for an example of this.

If you want to set the elasticity (that is, how much the softbody is allowed to deform), this is also done per-constraint. See:
http://obi.virtualmethodstudio.com/manua...aints.html

kind regards,

Thank you very much, I understand better than before. I will try your suggestions further!
Reply