Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
issues setting up FBVS / skeletal softbody
#1
hi, I'm trying to set up the common use case of an animated character with softbody physics layered on top.

I tried copying the setup from the FBVS sample scene, but the simulation doesn't seem connected to the character's skeleton at all, and just falls to the ground.

How does the FBVS establish a one-way constraint from the softbody particles? Does the solver just detect that there are skeletal particles in the blueprint? Are there restrictions on how the skeleton hierarchy must be set up? I've reviewed the manual in depth but it doesn't have many details.

here's a video that shows the various issues i'm hitting, as well as the scene and blueprint setup. warning slightly NSFW: link

(i did use a skin map to mask out parts of the character, but disabled it to record the video so i could show more clearly what's going on)

I hope I can get it working; excited about the potential!
Reply
#2
(21-08-2026, 08:16 PM)corabelfunk Wrote: How does the FBVS establish a one-way constraint from the softbody particles? Does the solver just detect that there are skeletal particles in the blueprint? Are there restrictions on how the skeleton hierarchy must be set up? I've reviewed the manual in depth but it doesn't have many details.

Hi!

Shape matching constraints link the softbody particles to the skeletal particles, just like softbody particles are attached among themselves. Then the position of skeletal particles is driven by animation.

It's hard to diagnose the problem from the video alone. Would it be possible for you to share your model/blueprint by sending to support(at)virtualmethodstudio.com so we can take a closer look? thanks!
Reply
#3
(24-08-2026, 08:16 AM)josemendez Wrote: Hi!

Shape matching constraints link the softbody particles to the skeletal particles, just like softbody particles are attached among themselves. Then the position of skeletal particles is driven by animation.

It's hard to diagnose the problem from the video alone. Would it be possible for you to share your model/blueprint by sending to support(at)virtualmethodstudio.com so we can take a closer look? thanks!
thanks! sent an email with an attachment.
Reply
#4
Hi!

There's a warning popping up in your console as soon as play mode is entered:

Quote:Did not find any bone matching the root bone defined in the softbody blueprint.
UnityEngine.Debug:LogWarning (object)
Obi.ObiSoftbodySkinner:BindBoneParticles () (at Assets/Obi/Scripts/Softbody/Rendering/ObiSoftbodySkinner.cs:239) 

This means the bone you used as root when generating the blueprint and the one actually set as your skeleton's root in the SkinnedMeshRenderer aren't the same. When this happens, Obi will try to find the root bone by iterating trough all bones in skinnedMeshRenderer.bones and comparing their name to the blueprint root bone's name. In your case, the transform set as root bone in the SkinnedMeshRenderer isn't even a bone, so it doesn't appear in skinnedMeshRenderer.bones either: Obi can't find the root bone directly or by name and as a result, bone particles cannot be bound to the actual bone transforms.

Now, even if you correct this by setting the SkinnedMeshRenderer's root bone to the same bone used in the blueprint, the bone particles won't be attached to the surface (skin) particles because your blueprint has no volume (muscle) particles: it's only bones and skin with no muscle in between. The way FBVS works is that skin particles get bound to muscle/fat particles, and muscle/fat particles get bound to bone. You need all 3 types of particles for a FBVS setup as explained in the manual:

Quote:Hence, a FBVS is a 3-layer model of a real body: bone particles approximate the skeleton, volume particles approximate the body's fat & muscles, and surface particles approximate skin.

What to do:
- Correct your character's rig by using a proper root bone.
- Make sure to set volume sampling to "voxels" in the blueprint and re-generate it.

kind regards,
Reply
#5
thanks!



Fixing the skinned mesh renderer's root bone and adding all 3 types of particles resolved part of the issue. However, i'm still having problems with the skeleton hierarchy.



first, i had some issues with some "control" bones (stuff like transforms for IK pole position and transforms for parenting accessories etc) being interpreted as part of the skeleton. but i made a copy of the rig in a separate prefab and deleted some extra bones and that helped. 



basically my character's rig is set up with multiple root bones. the root bone ("rig.deform.cora") isn't actually part of the skeleton, just a parent object. this leads to Obi generating 3 invisible limbs of skeleton particles stretching down the middle of the character, which leads to horrible artifacts in the animations. if i try to manually select and remove those particles, the artifacts get even worse (maybe because it breaks the particle hierarchy, so chunks of the softbody get detached from the animation?)



sooo is there anything i can do about this other than remaking my character's rig and retargeting all the animations? 



what are the requirements for a rig to properly generate a particle skeleton?

[Image: AaFTM6S.png]
[Image: 5Bifjk3.png]
Reply