Add built-in skinned mesh ragdoll functionality (or make it easier to achieve)

As a Roblox developer, it is currently too hard to use the skinned mesh system and allow for ragdolls at the same time. In my game I use skinned mesh rigs for all of my characters, with most if not all of the rigs containing a single mesh that has a bunch of bones. This works for normal animations, however as described by a reply in this thread, to achieve a ragdoll for a skinned mesh rig you need the mesh split up where each limb is (and even then, it’s described as a hacky solution that doesn’t 100% work as it probably should). This is entirely way too hacky for such a simple thing, especially when you consider a lot of other game engines do not require this much effort just for a character to go limp.

If Roblox is able to address this issue, it would improve my development experience because I would be able to fully utilize the skinned mesh system and add a level of emersion to my game that without this feature I simply cannot reasonably add. Adding this would make it so developers wouldn’t have to go out of their way to split up their meshes (which is something skinned meshes were made mainly so you didn’t have to do!) for something like a death pose.

23 Likes

I have no less than 5 custom characters modelled and ready to go, but the only thing holding me back is their dependency on skinned meshes.

All of these characters would be extremely challenging to break up into individual parts because this is a destructive process I cannot recover from in blender. Once I’ve done the rigging and weight painting, I need to break the mesh into pieces which takes significant time. After I’ve done this, it is essentially impossible for me to modify the weight painting if something doesn’t work right in Roblox.

Further, there’s a lot of manual effort I need to do in Roblox to get the rig imported and working in the animator properly (adjustment of motor hierarchy, getting hybrid motor6D and bone rigging to work properly, wrestling with the avatar importer’s rigid requirements), and almost every time I make a small mistake somewhere that makes me back to go back into blender and recombine everything and throw away all of my weight painting and part splitting and start again.

No matter what I do, I get stuck in a situation where I have to do a lot of manual effort multiple times over, and that is because I need to split these parts so I can support ragdolling (and coloring parts individually because we STILL do not have recolorable surfaceappearance, or surfaceappearance layers).

13 Likes

It would be nice if Roblox had built-in ragdoll functionality for all sorts of rigs tbh.

Unreal Engine has this neat feature that no matter what kind of rig you use,
through simple scripting you can call functions that will cause all joints to suddenly have physics enabled/disabled on them.

It’s even possible to BLEND animations WITH ragdoll physics which is super useful for realistic falling animations where you want your character to try to break or soften their fall.

You can seamlessly enable/disable and interpolate/blend between full ragdoll physics or rigid bones with animations.

Currently to achieve this in Roblox (just ragdolls alone on skinned avatars) is extremely tedious and hacky and requires a complicated setup and scripting.

And it’s a big bummer that Roblox doesn’t have this because I’d love to make something such as a fighting game where you can knock over NPCs into a ragdoll state and then they get back up again.

8 Likes


Everything works on a one script and boolean value

3 Likes

neat. how did you go about doing this if i may ask?

5 Likes

Bump.

This would be very handy!
Right now we’re stuck with very labour-intensive, manual and inferior ways of creating ragdolls. What we settled on for our game, was to use an invisible hitbox that uses ballsockets. Then the skinned mesh gets aligned to that hitbox.

This is however not ideal at all. There’s alignment issues, and it’s very annoying having to maintain essentially 2 copies of the same model. A (semi-)automatic ragdoll functionality would save us so much time…

Please consider this.

3 Likes

Bump.
This would be really cool and useful, especially for realism stuff and other things.

1 Like

Bump. Still needed.

Roblox has been increasingly trying to appeal to older gamers lately.
The lego-looking blocky kid friendly avatars used in many roblox games tend to assert Roblox as a platform for kids.

Adding more abilities to skinned meshes, especially a Ragdoll feature, would definitely make it more appealing to start making more diverse games which can appeal to a way wider audience.

1 Like

I believe skinned R15 rigs have the ability to ragdoll with skinning? But I think this feature request is referring to Custom rigs

R15 rigs ragdoll with joints between their separate (15) parts.
I’m not aware of a ragdoll for skinned meshes R15, or custom. They both use bones so should be the same thing.

I think what we need is a way to have physicsjoints (ballsockedconstraints) between bone attachments.
That would make ragdolls almost trivial to achieve.

Visually the joints are skinned together with no visible seams. The R15 skinning doesn’t use bones, and instead uses internal skinning data.

OP already touched on the R15 rig work-around and how unnecessarily labour intensive/messy/annoying it is aswell as arguable being worse for performance, hence why such a feature (or method to achieve) could be nice on a single rigged meshpart.

1 Like