Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Help  Pause Cloth simulation on just the unfixed particles of a skinned mesh?
#1
Pregunta 
I'm attempting to "pause" the simulation of just the unfixed particles on an Obi cloth that's skinned. The entire mesh is one cloth, and I've used optimize to get rid of the unused particles. 

Turning off the solver pauses the simulation, but it also prevents the mesh from being updated via the skinned mesh renderer. 
If I set the inverse masses of the unfixed particles to zero, they just revert to their original positions. 

I would like to be able to pause the simulation of the particles and have them remain in their current positions, but also be able to move the mesh via the joints in that mesh. 

Has anyone tried this before? I'd appreciate any and all help on this.
Reply
#2
(19-12-2018, 05:24 PM)rjGhost Wrote: I'm attempting to "pause" the simulation of just the unfixed particles on an Obi cloth that's skinned. The entire mesh is one cloth, and I've used optimize to get rid of the unused particles. 

Turning off the solver pauses the simulation, but it also prevents the mesh from being updated via the skinned mesh renderer. 
If I set the inverse masses of the unfixed particles to zero, they just revert to their original positions. 

I would like to be able to pause the simulation of the particles and have them remain in their current positions, but also be able to move the mesh via the joints in that mesh. 

Has anyone tried this before? I'd appreciate any and all help on this.

Disabling the ObiCloth component should do what you want.
Reply
#3
(19-12-2018, 05:47 PM)josemendez Wrote: Disabling the ObiCloth component should do what you want.

Thanks for the quick reply!
Unfortunately this also causes the particles to return to their original position.
Reply
#4
(19-12-2018, 05:50 PM)rjGhost Wrote: Thanks for the quick reply!
Unfortunately this also causes the particles to return to their original position.

Oh, ok. So you want to "freeze" the deformation caused by the cloth, then allow bones to deform it further, right?

If that's so, you're out of luck. Skinning does not affect unfixed particles themselves  -nor mesh vertices, which are driven by the particles- but their "anchor" positions. This means there's no way for unfixed particles to be deformed by the bones, it is a fundamental consequence of how skinning works.

You could get the deformed mesh right after pausing the simulation, procedurally bind it to the skeleton and take it from there, but this is something you have to do yourself and chances are it won't works very well (it depends on how you perform the binding).
Reply
#5
(19-12-2018, 06:17 PM)josemendez Wrote: Oh, ok. So you want to "freeze" the deformation caused by the cloth, then allow bones to deform it further, right?

If that's so, you're out of luck. Skinning does not affect unfixed particles themselves  -nor mesh vertices, which are driven by the particles- but their "anchor" positions. This means there's no way for unfixed particles to be deformed by the bones, it is a fundamental consequence of how skinning works.

You could get the deformed mesh right after pausing the simulation, procedurally bind it to the skeleton and take it from there, but this is something you have to do yourself and chances are it won't works very well (it depends on how you perform the binding).

Ahh I see, thanks for the info. That makes sense.

What would be the best way to get the deformed mesh after simulation? I can take it from there once I have the mesh.
Reply
#6
(19-12-2018, 07:01 PM)rjGhost Wrote: Ahh I see, thanks for the info. That makes sense.

What would be the best way to get the deformed mesh after simulation? I can take it from there once I have the mesh.

Hi,

you can access it like this:

Code:
obiClothComponent.clothMesh
Reply
#7
(20-12-2018, 11:43 AM)josemendez Wrote: Hi,

you can access it like this:

Code:
obiClothComponent.clothMesh

Perfect, thanks!
Reply
#8
(20-12-2018, 03:59 PM)rjGhost Wrote: Perfect, thanks!

Got so close to getting this working, unfortunately when attempting to bind the cloned mesh to the previous mesh's bone weights the vertices are just different enough to place the mesh erratically along the rig. Just shelving the idea for now, I appreciate all the help!
Reply