Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Problem with softbody and complex character with submeshes
#1
Hi


I am having trouble rigging my character that has a bunch of submeshes(internal organs in this case). I manage to get other simpler meshes to work properly with softbody but something is breaking when I do it with my complex character.




Going by the "Elastic character" tutorial does not really apply as the elastic character only has one main mesh.




I will provide some screenshots. I have the default ObiSolver component on the "FemaleBody" Object. This is a medical app btw.
Reply
#2
(11-04-2024, 11:09 AM)JohnOrzone Wrote: Hi


I am having trouble rigging my character that has a bunch of submeshes(internal organs in this case). I manage to get other simpler meshes to work properly with softbody but something is breaking when I do it with my complex character.




Going by the "Elastic character" tutorial does not really apply as the elastic character only has one main mesh.




I will provide some screenshots. I have the default ObiSolver component on the "FemaleBody" Object. This is a medical app btw.

Hi John,

You can only generate blueprints out of a single mesh, with one main sub mesh.

A workaround for this is to generate your blueprint out of a version of you model that has just one submesh (it is only used for generating particles and it's not going to be rendered anyway, so no point in having multiple sub meshes), then use multiple ObiSoftbodySkinners to bind all the organs to the resulting blueprint. See: http://obi.virtualmethodstudio.com/manua...inner.html
Reply
#3
Thank you, I understand.

Is it possible to change the scale at runtime? I want to scale down a sphere until it dissapears.
Reply
#4
(18-04-2024, 11:01 AM)JohnOrzone Wrote: Thank you, I understand.

Is it possible to change the scale at runtime? I want to scale down a sphere until it dissapears.

Hi John,

Unlike translation and rotation, scaling does not maintain distances between points. For this reason it can only be used on rigid objects.

You can however change the scale of the ObiSolver component, which will scale the entire simulation space down. This may or may not be enough for your use case, eg. if there's more than one actor managed by the solver they will all be scaled towards the solver's origin.

kind regards,
Reply
#5
Ok thanks for quick reply!

I have some spheres in a bowl and I need to be able to make them one by one become smaller to  eventually dissapear completely. Is there no way of doing this? Scaling everything at once does not work since I have to do them one at a time.

Thanks for all the support!
Reply
#6
(18-04-2024, 01:08 PM)JohnOrzone Wrote: Ok thanks for quick reply!

I have some spheres in a bowl and I need to be able to make them one by one become smaller to  eventually dissapear completely. Is there no way of doing this? Scaling everything at once does not work since I have to do them one at a time.

Thanks for all the support!

No, since changing the size of an object changes the rest distance between its particles. This requires recalculating all constraints which is a really expensive operation (done when you Generate() the blueprint, either in the editor or programmatically). Same applies to ropes, cloth, and all kinds of deformable objects.

kind regards,
Reply