Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Help  Cloth Jitter
#1
Hello! I've gone through the steps of the Character Cloth Basics video tutorial several times, including starting fresh a few times and I cannot seem to get a good result.

I'm getting a lot of jitter. If I increase the skin radius a bit, it won't jitter as much, but it allows the knees to protrude through. I've tried various settings of the backstop and backstop radius, but I've not been successful yet.

I've remade the rig a few times. I thought maybe stretching was an issue, so I got rid of the polygons in the back, but I still get jitter.

The only way I've found to get the jitter to stop is to go to the Late Fixed Updater and set the Substeps to 1. I realize this isn't the best sim, and am hoping to figure out what the root of the issue is.

How can I get a good sim and eliminate the jitter?

https://youtu.be/3kNxM1Rd_Dw

Thanks!
Reply
#2
(12-07-2022, 08:01 PM)brootas Wrote: Hello! I've gone through the steps of the Character Cloth Basics video tutorial several times, including starting fresh a few times and I cannot seem to get a good result.

I'm getting a lot of jitter. If I increase the skin radius a bit, it won't jitter as much, but it allows the knees to protrude through. I've tried various settings of the backstop and backstop radius, but I've not been successful yet.

I've remade the rig a few times. I thought maybe stretching was an issue, so I got rid of the polygons in the back, but I still get jitter.

The only way I've found to get the jitter to stop is to go to the Late Fixed Updater and set the Substeps to 1. I realize this isn't the best sim, and am hoping to figure out what the root of the issue is.

How can I get a good sim and eliminate the jitter?

https://youtu.be/3kNxM1Rd_Dw

Thanks!

Hi!

That's really unusual, never seen a similar effect. Would it be possible for you to send a test scene/project to support(at)virtualmethodstudio.com so that I can take a closer look?

As a side note, I see you haven't installed the required package dependencies (there's a warning in the ObiSolver component inspector, visible in your video). You should really install these, as for now you're running on a fallback system. See the setup guide:
http://obi.virtualmethodstudio.com/manua...setup.html

kind regards
Reply
#3
(13-07-2022, 11:25 AM)josemendez Wrote: Hi!

That's really unusual, never seen a similar effect. Would it be possible for you to send a test scene/project to support(at)virtualmethodstudio.com so that I can take a closer look?

As a side note, I see you haven't installed the required package dependencies (there's a warning in the ObiSolver component inspector, visible in your video). You should really install these, as for now you're running on a fallback system. See the setup guide:
http://obi.virtualmethodstudio.com/manua...setup.html

kind regards

Okay, thank you for the link.

I went through and added those package dependencies to a new project and started over. I followed the tutorial again with both of these guys. That message isn't there anymore, but the jitter is still happening in this new scene.

https://youtu.be/zeFIOtAqWCQ

I'm working on sending the files over.

Thanks again!
Reply
#4
(13-07-2022, 03:26 PM)brootas Wrote: Okay, thank you for the link.

I went through and added those package dependencies to a new project and started over. I followed the tutorial again with both of these guys. That message isn't there anymore, but the jitter is still happening in this new scene.

https://youtu.be/zeFIOtAqWCQ

I'm working on sending the files over.

Thanks again!

How tall are your characters, in meters (Unity units)? This is a long shot, but the "jitter" looks like particles are moving in a stop-motion fashion. If your characters are *very* small, the default sleep threshold for the solver might be causing particles to freeze in place and wake up constantly, giving rise to this weird effect. Try setting the solver's sleep threshold to zero, see if that has any positive impact.
Reply
#5
Hi again,

Just took a look at your project, disregard my previous message about character size/sleep threshold.The culprit just seems to be a combination of bad settings:

- You're using a LateFixedUpdater, but set the Animator update to normal update on one of the characters. This causes animation and simulation to run out of sync with each other. If you're using a LateFixedUpdater component, set the Animator's update to "Animate Physics"

- You're using 4 substeps and both bending and stretching compliances are set to zero. Since your models are rather lowpoly, this will cause cloth to be extremely rigid, almost cardboard-like. Reduce the amount of substeps (1 is enough, no need to spend more) and increase both the bending/stretching compliance parameters on the cloth. A value of 0.01-0.02 will do fine.

The reason why using more substeps is just wasting performance in this case is that the cloth is very low-poly, and the character animation is only updated once per frame. Using more than 1 substep would cause cloth to update at a frequency four times higher than the animation, which will look weird and won't result in any noticeable quality improvements because the mesh is low-poly anyway.

- Your cloth's max compression is set to 0, this is ok for high-poly cloth but in low-poly meshes it will make cloth look very rigid, since mesh edges cannot reduce their length (become compressed). Increase it to at least 0.5 (which allows edges to compress to 50% of their rest length).

- You're using 1 updater for each solver. This will negate most multithreading benefits, since it forces each cloth to be updated sequentially. Use a single updater for all solvers as suggested in the manual:
http://obi.virtualmethodstudio.com/manua...aters.html

These adjustments should result in much faster simulation, and remove all jittering. Let me know if I can be of further help, kind regards.
Reply
#6
(13-07-2022, 04:04 PM)josemendez Wrote: Hi again,

Just took a look at your project, disregard my previous message about character size/sleep threshold.The culprit just seems to be a combination of bad settings:

- You're using a LateFixedUpdater, but set the Animator update to normal update on one of the characters. This causes animation and simulation to run out of sync with each other. If you're using a LateFixedUpdater component, set the Animator's update to "Animate Physics"

- You're using 4 substeps and both bending and stretching compliances are set to zero. Since your models are rather lowpoly, this will cause cloth to be extremely rigid, almost cardboard-like. Reduce the amount of substeps (1 is enough, no need to spend more) and increase both the bending/stretching compliance parameters on the cloth. A value of 0.01-0.02 will do fine.

The reason why using more substeps is just wasting performance in this case is that the cloth is very low-poly, and the character animation is only updated once per frame. Using more than 1 substep would cause cloth to update at a frequency four times higher than the animation, which will look weird and won't result in any noticeable quality improvements because the mesh is low-poly anyway.

- Your cloth's max compression is set to 0, this is ok for high-poly cloth but in low-poly meshes it will make cloth look very rigid, since mesh edges cannot reduce their length (become compressed). Increase it to at least 0.5 (which allows edges to compress to 50% of their rest length).

- You're using 1 updater for each solver. This will negate most multithreading benefits, since it forces each cloth to be updated sequentially. Use a single updater for all solvers as suggested in the manual:
http://obi.virtualmethodstudio.com/manua...aters.html

These adjustments should result in much faster simulation, and remove all jittering. Let me know if I can be of further help, kind regards.

That was really helpful, thanks!

It's looking better and gives me good direction to keep updating it. 

Much appreciated!
Reply