Unreal Engine how can we achieve soft Skin Physics in Unreal Engine

darkevilhum

Newbie
Sep 9, 2017
77
78
If you know how, this can be achieved in full purely through a shader which is fed some input during gameplay like collision info and such. I believe someone did exactly that for Unity... found it ( ). This method is probably the most performant method which could be translated over to UE if you were versed in shaders (I'm not).

It basically uses a bunch of data setup for a character like volumes to define "area of effect" and collision. This data is then fed into a material at runtime which uses world* position offset (basically vertex displacement) and possibly even distance fields to simulate soft body physics and collisions.

In Unity it works exactly as seen in those OP videos and functions very performantly too. I was making use of it for a project for a while before I moved to UE which sadly doesn't have anything pre-built or user-made that can achieve the same effect.
 
Last edited:

Velomous

Member
Jan 14, 2024
265
224
If you know how, this can be achieved in full purely through a shader which is fed some input during gameplay like collision info and such. I believe someone did exactly that for Unity... found it ( ). This method is probably the most performant method which could be translated over to UE if you were versed in shaders (I'm not).

It basically uses a bunch of data setup for a character like volumes to define "area of effect" and collision. This data is then fed into a material at runtime which uses world* position offset (basically vertex displacement) and possibly even distance fields to simulate soft body physics and collisions.

In Unity it works exactly as seen in those OP videos and functions very performantly too. I was making use of it for a project for a while before I moved to UE which sadly doesn't have anything pre-built or user-made that can achieve the same effect.
Hmmm, looks like basically the same thing, wonder if it isn't better than the cloth physics approach.
 
  • Like
Reactions: razfaz

darkevilhum

Newbie
Sep 9, 2017
77
78
Hmmm, looks like basically the same thing, wonder if it isn't better than the cloth physics approach.
To be honest, I think the cloth physics approach someone demo'd earlier works very much the same way. I would happily use that in UE if it were not for the glaring limitations of no morphs on the simulated areas of the mesh and no collision between skeletal meshes. This last limitation surprises me, if primitive object collision works, why not with a physics asset of another skeletal mesh? I need to test this.

I don't know about everyone else, but my use case is for character simulation in and out of steamy ;) scenes. This makes both morphs (joint correction + customization + finer control over genitals) and collision between characters (touching soft body areas, genital penetration etc) a must have set of features.

I'm currently considering commissioning a tech artist to put together a shader plugin to achieve this or I may just go the bone route of having multiple bones per "area" of the body which are then simulated/physics enabled via the physics asset.
 
Last edited:

Velomous

Member
Jan 14, 2024
265
224
To be honest, I think the cloth physics approach someone demo'd earlier works very much the same way. I would happily use that in UE if it were not for the glaring limitations of no morphs on the simulated areas of the mesh and no collision between skeletal meshes.
Are we not programmers here? Solving problems like that is what we do.

For instance, if morphs cannot affect the area, we just need to make sure the morphs are applied before the clothing physics is enabled or something along those lines, and if we need to update the cloth paint for that to work then the cloth paint and weight paint are quite similar aren't they? We could potentially translate weight paint to cloth paint after morphs are applied to fix that morph problem.

And the skeletal mesh collision is probably solvable through some collision settings (maybe CCD or per-poly collisions or something, there's probably a way, collisions in ue are quite complex and deep in such a way that implementing basic collision can be quite hard if you don't know what you're doing but the upper limits of how advanced you can get with them are very high).

And if those work but aren't ogod enough for us or don't work at all we'll just find a different way. The unreal engine has some odd shenanigans in regards to how it handles collisions, whether or not it reads collisions can be tied into the strangest things like character movement by default and the collisions might not be getting read because the engine isn't actually checking for collisions because it only checks on certain types of evenets/updates that are not being generated for some reason during the specific testing you're doing, and so on...
 
  • Like
Reactions: razfaz

darkevilhum

Newbie
Sep 9, 2017
77
78
Are we not programmers here? Solving problems like that is what we do.

For instance, if morphs cannot affect the area, we just need to make sure the morphs are applied before the clothing physics is enabled or something along those lines, and if we need to update the cloth paint for that to work then the cloth paint and weight paint are quite similar aren't they? We could potentially translate weight paint to cloth paint after morphs are applied to fix that morph problem.

And the skeletal mesh collision is probably solvable through some collision settings (maybe CCD or per-poly collisions or something, there's probably a way, collisions in ue are quite complex and deep in such a way that implementing basic collision can be quite hard if you don't know what you're doing but the upper limits of how advanced you can get with them are very high).

And if those work but aren't ogod enough for us or don't work at all we'll just find a different way. The unreal engine has some odd shenanigans in regards to how it handles collisions, whether or not it reads collisions can be tied into the strangest things like character movement by default and the collisions might not be getting read because the engine isn't actually checking for collisions because it only checks on certain types of evenets/updates that are not being generated for some reason during the specific testing you're doing, and so on...
A fair point on the collision. Collision would likely be easier issue to resolve. However regarding morphs on cloth, I think this would be use-case dependant.
For example if you just had some morphs applied to the mesh for customization purposes like a weight slider which wouldn't change at runtime. Then perhaps computing those morphs pre-cloth and then applying cloth on top is a viable solution.
However in the case that you need runtime morphing (joint correction/expressions/genital morphing) this wouldn't really work. To be fair, I haven't tested using cloth sim on a skeletal mesh at all as I didn't think it was a viable solution.

I'm personally leaning towards finding a shader based solution at the moment to avoid the extra work involved with most of the other potential solutions.
 

darkevilhum

Newbie
Sep 9, 2017
77
78
Someone may find this useful if they want to start delving into the shader side in UE

Thought I'd share my current physics solution in UE.
After moving from Unity and losing a decent softbody solution, I have currently settled for a constraint based physics asset where certain body parts (like breasts/glutes/thighs etc) have a single or multiple weighted bones which are then given physics bodies and colliders in the Physics Asset.

They have a driving force to bring them back to their origin and are collision enabled. The results of this arn't honestly all that bad as long as your weights and mesh density are decent. See gif. For the breasts here, there is a single bone per breast and a single sphere collider.

You don't have permission to view the spoiler content. Log in or register now.
 
Last edited:
  • Like
Reactions: 7eDo1 and Velomous

Velomous

Member
Jan 14, 2024
265
224
What about the ?

I noticed there was a mesh deformer setting on my skeletal mesh, and investigated that, it looks good but I'm not sure about it's limitations.

Also found this, could be used to make softbody via material vertex displacement

 

darkevilhum

Newbie
Sep 9, 2017
77
78
What about the ?

I noticed there was a mesh deformer setting on my skeletal mesh, and investigated that, it looks good but I'm not sure about it's limitations.

Also found this, could be used to make softbody via material vertex displacement

The machine learning deformer looked pretty cool in their demo earlier this year. I believe it's purely for joint correction morphing though right, did it have any other applications?
 

plain123

New Member
Jan 2, 2019
10
192
As you guys already discussed, it may be best if you try and play with the cloth physics approach for yourselves. It was just a quick test on my side and i had no time to play with it since. There may be something I'm missing in my setup. For example I remember there was a dropdown menu with "before/during/after physics" somewhere along the line, but I'm away from PC rn and can't test it. Also I don't consider myself a developer since I don't have a lot of experience and am still learning the basics of UE. So, consider the no morphs and skeletal mesh collisions statement with a giant grain of salt. Better test it yourselves.

About the Fluoresce demo I referenced earlier ( )
I bought it the other day (packaged) and with some console commands I discovered the ass jiggle is a combination of physics and corrective morphs and the breasts have no corrective morphs. For me, the effect is realistic enough for locomotion and I will probably go this route for non-interactive animations.
 

Velomous

Member
Jan 14, 2024
265
224
The machine learning deformer looked pretty cool in their demo earlier this year. I believe it's purely for joint correction morphing though right, did it have any other applications?

It can be used to make muscles flex and skin stretch naturally, it's pretty crazy, if it can do that I don't see why it couldn't also do jiggle, I'm not sure if it can do collisions though.


As you guys already discussed, it may be best if you try and play with the cloth physics approach for yourselves. It was just a quick test on my side and i had no time to play with it since. There may be something I'm missing in my setup. For example I remember there was a dropdown menu with "before/during/after physics" somewhere along the line, but I'm away from PC rn and can't test it. Also I don't consider myself a developer since I don't have a lot of experience and am still learning the basics of UE. So, consider the no morphs and skeletal mesh collisions statement with a giant grain of salt. Better test it yourselves.
I was actually playing around yesterday with making a pawn using a skeletal mesh as the root and noticed that I could not get gravity or physics or collisiosn working properly for it, I realized for the character blueprint people typically use the same is actually also more or less true (the collisions tend to work if you do it the normal way, but physics wouldn't), after digging a bit i found out the reason, if in your physics asset a bone is set to 'kinematic' instead of 'simulated' it will not react to physics at all, and although collisions can be detected still, any sort of reaction to those collisions would have to be handled through IK and procedural animation.

So you simply have to set all bones in your active physics asset to simulation mode instead of kinematic, and now your mesh is a ragdoll; but this might have been related to why you were having collision issues.

basically for character blueprint, physics are tied to the capsule and not the mesh in order to work around this issue. This is almost certianly why in naughty sandbox the models are in a state of constant ragdoll (otherwise they wouldn't be able to have reliable physics and probably not reliable collisions either)

Enabling per-poly collision also seems to always break physics no matter what you do (to be honest i'm not sure if the collisions themselves work when it's enabled either)

But if you want both properly simulated physics for your mesh AND proper animations the only way I've found is physical animation.
 

darkevilhum

Newbie
Sep 9, 2017
77
78

It can be used to make muscles flex and skin stretch naturally, it's pretty crazy, if it can do that I don't see why it couldn't also do jiggle, I'm not sure if it can do collisions though.




I was actually playing around yesterday with making a pawn using a skeletal mesh as the root and noticed that I could not get gravity or physics or collisiosn working properly for it, I realized for the character blueprint people typically use the same is actually also more or less true (the collisions tend to work if you do it the normal way, but physics wouldn't), after digging a bit i found out the reason, if in your physics asset a bone is set to 'kinematic' instead of 'simulated' it will not react to physics at all, and although collisions can be detected still, any sort of reaction to those collisions would have to be handled through IK and procedural animation.

So you simply have to set all bones in your active physics asset to simulation mode instead of kinematic, and now your mesh is a ragdoll; but this might have been related to why you were having collision issues.

basically for character blueprint, physics are tied to the capsule and not the mesh in order to work around this issue. This is almost certianly why in naughty sandbox the models are in a state of constant ragdoll (otherwise they wouldn't be able to have reliable physics and probably not reliable collisions either)

Enabling per-poly collision also seems to always break physics no matter what you do (to be honest i'm not sure if the collisions themselves work when it's enabled either)

But if you want both properly simulated physics for your mesh AND proper animations the only way I've found is physical animation.
Oh that's a nice bit of information! I happen to want a fully physical simulation for my project. I did this in Unity with a custom active ragdoll setup. I'm doing this in UE5 at the moment using physical animation which you mentioned. So all of my characters are already fully physically simulated and setup to follow animation fairly tightly. If that's why cloth collisions fail, then it's certainly a possible solution.

So I guess that would result in the following setup:
Your characters need to use physical animation, meaning they are basically always ragdolled but then setup to follow animation using the Physical Animation system and constraints in the physical asset. They would need fairly accurate sphere/capsule collision setup in the physical asset as well.
You could then use the cloth solution to paint on certain areas of a skeletal mesh to give it that soft body result.
Presumably at this point, you're skeletal mesh itself and others that are also physically animated will have functioning collision interactions with the cloth 'soft body' areas.
The only caveat here being that morphs wouldn't work on the areas that are cloth painted.
 

Velomous

Member
Jan 14, 2024
265
224
Oh that's a nice bit of information! I happen to want a fully physical simulation for my project. I did this in Unity with a custom active ragdoll setup. I'm doing this in UE5 at the moment using physical animation which you mentioned. So all of my characters are already fully physically simulated and setup to follow animation fairly tightly. If that's why cloth collisions fail, then it's certainly a possible solution.

So I guess that would result in the following setup:
Your characters need to use physical animation, meaning they are basically always ragdolled but then setup to follow animation using the Physical Animation system and constraints in the physical asset. They would need fairly accurate sphere/capsule collision setup in the physical asset as well.
You could then use the cloth solution to paint on certain areas of a skeletal mesh to give it that soft body result.
Presumably at this point, you're skeletal mesh itself and others that are also physically animated will have functioning collision interactions with the cloth 'soft body' areas.
The only caveat here being that morphs wouldn't work on the areas that are cloth painted.
I have worked it out, I basically did what the naughty sandbox dev did, but I did it better.

output.gif

And unlike certain devs I'm not afraid to share my discoveries, in the name of porn! (Or rather I'm just not afraid of the competition, in fact the whole reason i'm here trying to make my own game is that the competition has managed to leave me consistently disappointed and I've had just about enough of it)


  1. Make a pawn, create a skeletal mesh component for ur model, sset the skeletal mesh component as root (this isn't a hard requirement it's just how i'm doing it)
  2. Create a physics asset to set constraints for the ragdoll, this also gives you control over collisions. Make sure all bones are set to 'simulate' and not 'kinematic', if they are set to kinematic you get no physics, you can abuse this by for instance setting the pelvis to kinematic to disable gravity for the model (if you're using character blueprint instead of pawn blueprint u will have to put kinematic on pelvis to keep the model within the capsule), or setting everything to kinematic to completely disable ragdoll and physics but keep collisions working.
  3. In your skeletal mesh component, go to the physics asset override setting and configure it to use the physics asset you've modified. Congrats, you now have a working ragdoll with working physics, but the problem is it's a ragdoll, it just collapses, so we solve that next.
  4. Improve your physics asset by configuring the self collision properly (in the physics asset if you click on a colider, every collider it can collide with turns blue, every collider it cannot collide with turns gray. you can set the collider to collide with everything, then disable collision between it and colliders it shouldn't collide with (usually the colliders immediately next to it should have collision disabled, e.g. hand and forearm shouldn't collide, thigh and pelvis shouldn't collide, and so on)
  5. Set up a physical animation profile in your physics assset, select all the bones except any jigglebones ur using (e.g. boob butt jigle bones and thigh twist, things like that, don't select those) and assign them to the physical animation profile, then for all these bones as a starting point configure the physical animation profile like this:
    24-06-0.png
    Then try to simulate, and what should happen is that your model now instead of ragdolling is mostly rigid, sticking to the preview animation, but it still falls over and is affected by physics.
  6. Apply the physical animation profile in your blueprint. 24-06-1.png And congratulations, now you have a model that is affected by physics, completely rigid and sticks to the animation, 1 remaining problem is it won't stay uprgith and falls over unless the pose is realistically stable enough to keep it standing.
  7. To solve that final problem, the simplest solition is to force the skeletal mesh to maintain it's upright rotation. 24-06-2.png
    Note: You probably will want to use get transform on the mesh and drag it's Z to the rotation of the Z above, so only X and Y rotation are disabled, otherwise your character cannot turn around. X and Y rotation for a character is somethign that you almost never want to change anyways so this is actually a surprisingly good solution despite how simple it is. The reason I hardcoded the Z was simply that i didn't need my character to be able to turn.

And now you're basically done, your model will now be affected by physics and will try to maintain it's animation pose and natural orientation the pose expects, but it reacts properly to physics, it creates an effect extremely similar to cascadeur's autophysics. The last step then is to just tweak everything until you're satisfied. But do note that the higher orientation strength is set, the less the model is affected by physics, meaning that if you set it evrey high it'll be like your model is in low gravity, but it's very useful since you can tweak it on a per bone basis so you can have full control over how rigid or loose parts of the model are, after about 10 minutes of tweaking the gif up top is how it looks on my end. Granted you may notice i did mess up the ragdoll constraints a lil bit, but it's a pretty good result imo.

This video is a good watch too, it teaches you basically everything I just said you gotta do, and shows some examples of practical uses of this feature in other games.

 
Last edited:

razfaz

Member
Mar 24, 2021
171
195
Hmmm, looks like basically the same thing, wonder if it isn't better than the cloth physics approach.
Yap, Houdini seems to be a very good tool for very detailed bodyphysics and cloth Tasks.

Softbody:
Cloth:

Unreal-Plugin:



Velomous : That's the Spirit we need! Thank You. Very cool, stuff and easy to use for general softbody purposes, but I guess not so good for very detailed simulations.
 
Last edited:
  • Like
Reactions: Velomous

darkevilhum

Newbie
Sep 9, 2017
77
78
I have worked it out, I basically did what the naughty sandbox dev did, but I did it better.

View attachment 3692863

And unlike certain devs I'm not afraid to share my discoveries, in the name of porn! (Or rather I'm just not afraid of the competition, in fact the whole reason i'm here trying to make my own game is that the competition has managed to leave me consistently disappointed and I've had just about enough of it)


  1. Make a pawn, create a skeletal mesh component for ur model, sset the skeletal mesh component as root (this isn't a hard requirement it's just how i'm doing it)
  2. Create a physics asset to set constraints for the ragdoll, this also gives you control over collisions. Make sure all bones are set to 'simulate' and not 'kinematic', if they are set to kinematic you get no physics, you can abuse this by for instance setting the pelvis to kinematic to disable gravity for the model (if you're using character blueprint instead of pawn blueprint u will have to put kinematic on pelvis to keep the model within the capsule), or setting everything to kinematic to completely disable ragdoll and physics but keep collisions working.
  3. In your skeletal mesh component, go to the physics asset override setting and configure it to use the physics asset you've modified. Congrats, you now have a working ragdoll with working physics, but the problem is it's a ragdoll, it just collapses, so we solve that next.
  4. Improve your physics asset by configuring the self collision properly (in the physics asset if you click on a colider, every collider it can collide with turns blue, every collider it cannot collide with turns gray. you can set the collider to collide with everything, then disable collision between it and colliders it shouldn't collide with (usually the colliders immediately next to it should have collision disabled, e.g. hand and forearm shouldn't collide, thigh and pelvis shouldn't collide, and so on)
  5. Set up a physical animation profile in your physics assset, select all the bones except any jigglebones ur using (e.g. boob butt jigle bones and thigh twist, things like that, don't select those) and assign them to the physical animation profile, then for all these bones as a starting point configure the physical animation profile like this:
    View attachment 3692652
    Then try to simulate, and what should happen is that your model now instead of ragdolling is mostly rigid, sticking to the preview animation, but it still falls over and is affected by physics.
  6. Apply the physical animation profile in your blueprint. View attachment 3692661 And congratulations, now you have a model that is affected by physics, completely rigid and sticks to the animation, 1 remaining problem is it won't stay uprgith and falls over unless the pose is realistically stable enough to keep it standing.
  7. To solve that final problem, the simplest solition is to force the skeletal mesh to maintain it's upright rotation. View attachment 3692665

And now you're basically done, your model will now be affected by physics and will try to maintain it's animation pose and natural orientation the pose expects, but it reacts properly to physics, it creates an effect extremely similar to cascadeur's autophysics. The last step then is to just tweak everything until you're satisfied. But do note that the higher orientation strength is set, the less the model is affected by physics, meaning that if you set it evrey high it'll be like your model is in low gravity, but it's very useful since you can tweak it on a per bone basis so you can have full control over how rigid or loose parts of the model are, after about 10 minutes of tweaking the gif up top is how it looks on my end. Granted you may notice i did mess up the ragdoll constraints a lil bit, but it's a pretty good result imo.

This video is a good watch too, it teaches you basically everything I just said you gotta do, and shows some examples of practical uses of this feature in other games.

Nice, that's a good intro on how to get a physical animation setup working. Though do note that the actual "soft body" effects that the Naughty Sandbox guy used are a combination of this and.... (I did some digging on his discord and figured out mostly what he used).

I'll just list off all of the features he has applied to a female character:
- Physical Animation (as described above by Velomous) with a stable physics asset/colliders/constraints
- A shader for the finer "impressions" or "soft body" visuals when being touched by say a VR controller.
From his discord: ss+(2024-06-01+at+01.14.01).png ss+(2024-06-01+at+01.14.57) (1).png
I believe he used this as a starting point for his shader:
- Based on the OPs videos, it's safe to say the Naughty Sandbox dev also pushed his shader a bit further to include some sort of sine wave/ripples OR vastly improved his skeleton/weight paints to better deform/jiggle.

I'm currently working on putting together a similar shader which I'll be happy to share if I can get it working.
I think my biggest issue is figuring out how to UV Seam Stitch, I'm not really a shader expert or anything so I'm just winging it atm. I think I can create the desired effect but it just won't work on complex characters with multiple materials due to UV seams. I do know it's possible to "Stitch" them together in a shader but I have no idea how to do so.

Testing some purely shader based wobble
wobble1.gif wobble2.gif


Looks a bit choppy because I'm using a sphere trace in the tick event to update a render target just so I could test it out. With some improvements this would easily resemble the "finer touch" for say VR controllers etc. Note the problem in the center of the back where the seams are. No idea what to do about that. I've tried a few different projection methods but they don't work. Had to use the UVs for mapping which results in seams :/
pokey3.gif pokey4.gif

It all looks a bit mishmash but if we can tidy these up, fix the problems and then combine them, you'll basically have what was seen in the OPs videos. Any shader experts out there want to teach us how to UV Seam Stitch in a shader?
I'm also using a marketplace plugin called "Runtime Vertex Paint & Detection" to actually grab the UV coordinates of the hit location which are then passed onto the material/shader. I don't know of a better way to figure out "where to deform" the mesh but I know there are better ways, I'm just not versed in shaders enough to know what those are and how to implement them.
 
Last edited:

razfaz

Member
Mar 24, 2021
171
195
And another Houdini thing related to DAZ
 
Last edited:

darkevilhum

Newbie
Sep 9, 2017
77
78
Smoothed out the shader a tad. Easier to see the goal. Can also see the seam issue again. Don't ask me how that sphere is detecting the mesh/skin haha, I'm sure my math was fine but it's janky af.


BUM3.gif

BUM2.gif
 
  • Like
Reactions: 7eDo1 and Velomous

Velomous

Member
Jan 14, 2024
265
224
Nice, that's a good intro on how to get a physical animation setup working. Though do note that the actual "soft body" effects that the Naughty Sandbox guy used are a combination of this and.... (I did some digging on his discord and figured out mostly what he used).

I'll just list off all of the features he has applied to a female character:
- Physical Animation (as described above by Velomous) with a stable physics asset/colliders/constraints
- A shader for the finer "impressions" or "soft body" visuals when being touched by say a VR controller.
From his discord: View attachment 3693703 View attachment 3693704
I believe he used this as a starting point for his shader:
- Based on the OPs videos, it's safe to say the Naughty Sandbox dev also pushed his shader a bit further to include some sort of sine wave/ripples OR vastly improved his skeleton/weight paints to better deform/jiggle.
He's using tessellation, that was disabled in UE5, nanite is the supposed replacement, but nanite does not work on skeletal meshes so that's a bit of a bummer.

I'm very interested to see hwat comes of your shader softbody though, you're off to a really promising start. How did you do the shader jiggle? It looks extremely promising.


Smoothed out the shader a tad. Easier to see the goal. Can also see the seam issue again. Don't ask me how that sphere is detecting the mesh/skin haha, I'm sure my math was fine but it's janky af.
Ur using distance fields for that? I can see it's the beginning of a solution, even if the math is clearly a lil off hehe.
 
  • Like
Reactions: razfaz

darkevilhum

Newbie
Sep 9, 2017
77
78
He's using tessellation, that was disabled in UE5, nanite is the supposed replacement, but nanite does not work on skeletal meshes so that's a bit of a bummer.

I'm very interested to see hwat comes of your shader softbody though, you're off to a really promising start. How did you do the shader jiggle? It looks extremely promising.



Ur using distance fields for that? I can see it's the beginning of a solution, even if the math is clearly a lil off hehe.
Yeah, one of the requirements for this to look half decent will be a moderately high poly mesh as we have no tessellation. Thats why it looks a bit edgy in some places on my mesh.
I used that displacement reddit post as reference to get my shader started. I believe UE 5.4 has nanite support for skeletal meshes right?
The jiggle I did after watching this video: it's just a test really but the material looks like this

As for the actual soft body/collision bit, it's a bit more complicated but it's basically just trace > hit mesh > grab UVs > use UVs to draw a brush/mask/texture to the Render Target > Meshes material samples the render target to write to the World Position Offset.
I did think distance fields would be great but after researching them a bit more, it turns out they don't work with skeletal meshes, typical lol.
 
  • Haha
Reactions: Velomous

Velomous

Member
Jan 14, 2024
265
224
Yeah, one of the requirements for this to look half decent will be a moderately high poly mesh as we have no tessellation. Thats why it looks a bit edgy in some places on my mesh.
I used that displacement reddit post as reference to get my shader started. I believe UE 5.4 has nanite support for skeletal meshes right?
The jiggle I did after watching this video: it's just a test really but the material looks like this

As for the actual soft body/collision bit, it's a bit more complicated but it's basically just trace > hit mesh > grab UVs > use UVs to draw a brush/mask/texture to the Render Target > Meshes material samples the render target to write to the World Position Offset.
I did think distance fields would be great but after researching them a bit more, it turns out they don't work with skeletal meshes, typical lol.
I'm using 5.4 and it does not have nanite support for skeletal meshes, I in fact knew about nanite not working for skeletal meshes because there wasn't an option for it on skeletal meshes. I just looked it up though, and it looks like 5.5 will however have nanite on skeletal meshes, finally, just one more release to go! I wonder if that'll fix up distance fields too.
 

razfaz

Member
Mar 24, 2021
171
195
I'm using 5.4 and it does not have nanite support for skeletal meshes, I in fact knew about nanite not working for skeletal meshes because there wasn't an option for it on skeletal meshes. I just looked it up though, and it looks like 5.5 will however have nanite on skeletal meshes, finally, just one more release to go! I wonder if that'll fix up distance fields too.
Yup, you can only use Nanite on a Rig with Static Meshes (High-Poly Mech Stuff, Armor Suits etc. for example) in 5.4 sadly.
But, Nanite on a dynamic SkelMesh Rig in 5.5 will be a game changer and the real fun.

1717271253147.png

If you are familar with Git and building Win64 Apps from Sauce then connect your GitHub Acc with Epic and build/compile the latest main-UE-Dev branch (5.5) and test it out today.

Get the [ue5-main] branch (Git Cmd or Git Desktop) which is the 5.5 dev branch and bake it.

1717282501885.png

After successful compiling and creating Your test Project add the following line to your Config/DefaultEngine.ini

[/Script/Engine.RendererSettings]
r.Nanite.AllowSkinnedMeshes=1

Then You will have access to the Nanite SkelMesh Settings:

1717320233885.png
For the Pr0n... eh Science and have mucho fun!
 
Last edited: