Cloth Simulation Rig behaves like jelly/jello in 2.8 and behaves gently in 2.79 #73057

Closed
opened 2020-01-12 06:58:38 +01:00 by Elison G. Bradley · 10 comments

System Information
Operating system: Windows 10
Graphics card: Nvidia GTX 1080

Blender Version
Broken: 2.80 (sub 75), branch: master, commit date: 2019-07-29 14:47, hash: f6cb5f5449
2.81 (sub 16), branch: master, commit date: 2019-12-04 11:32, hash: f1aa4d18d4

Worked: 2.79, d7cecc2ba3

Short description of error
Using a tutorial blend file for Hair rigging which utilizes cloth simulation, the cloth simulation behaves as expected in 2.79; however when that same blend file is opened in 2.8 the simulation breaks and behaves like jello/jelly when a much smoother, gentle behavior was expected/desired.

Edit: I have determined that object scale seems to play a huge role in the observed behavior of physics objects (Rigid Body, Cloth Sim, etc). In a scene at 1x scale (relative to Blender cube) most physics don't work as expected, being very unstable/bouncy/jiggly. However in a clean test scene at 8x scale, physics was much more "damped" smooth, and the parameters seem to actually have an affect when changed. Applying scale at 8x did not result in 1x behavior. Adjusting mass has no effect.

Exact steps for others to reproduce the error
Load the attached blend file in 2.79, play the animation/timeline and manipulate the "head"/root bone of the setup'd rig, particular with r+z and then rotate it along the z axis left to right and back and observes its behavior. Then, open the same blend file in 2.8 and repeat, observe that the behavior is now different.
physics_rig_test1.blend

**System Information** Operating system: Windows 10 Graphics card: Nvidia GTX 1080 **Blender Version** Broken: 2.80 (sub 75), branch: master, commit date: 2019-07-29 14:47, hash: f6cb5f54494e 2.81 (sub 16), branch: master, commit date: 2019-12-04 11:32, hash: f1aa4d18d49d Worked: 2.79, d7cecc2ba3f6 **Short description of error** Using a tutorial blend file for Hair rigging which utilizes cloth simulation, the cloth simulation behaves as expected in 2.79; however when that same blend file is opened in 2.8 the simulation breaks and behaves like jello/jelly when a much smoother, gentle behavior was expected/desired. Edit: I have determined that object scale seems to play a huge role in the observed behavior of physics objects (Rigid Body, Cloth Sim, etc). In a scene at 1x scale (relative to Blender cube) most physics don't work as expected, being very unstable/bouncy/jiggly. However in a clean test scene at 8x scale, physics was much more "damped" smooth, and the parameters seem to actually have an affect when changed. Applying scale at 8x did not result in 1x behavior. Adjusting mass has no effect. **Exact steps for others to reproduce the error** Load the attached blend file in 2.79, play the animation/timeline and manipulate the "head"/root bone of the setup'd rig, particular with r+z and then rotate it along the z axis left to right and back and observes its behavior. Then, open the same blend file in 2.8 and repeat, observe that the behavior is now different. [physics_rig_test1.blend](https://archive.blender.org/developer/F8271942/physics_rig_test1.blend)

Added subscriber: @ElisonRSalazar

Added subscriber: @ElisonRSalazar
Elison G. Bradley changed title from Cloth Simulation behaves like jelly/jello in 2.8 and behaves gently in 2.79 to Cloth Simulation Rig behaves like jelly/jello in 2.8 and behaves gently in 2.79 2020-01-12 06:58:59 +01:00
Member

Added subscribers: @ZedDB, @JacquesLucke

Added subscribers: @ZedDB, @JacquesLucke
Member

I can confirm that the simulation is a bit different in 2.79 vs latest master. I a simple keyframe animation to make the simulation more reproducable.

Notice how the object slows down much more quickly in 2.79.
2020-02-18 16-41-18.mp4

physics_rig_test1_keyframed.blend

I'm not sure if that qualifies as a bug. @ZedDB, can this be related to your work on cloth?

I can confirm that the simulation is a bit different in 2.79 vs latest master. I a simple keyframe animation to make the simulation more reproducable. Notice how the object slows down much more quickly in 2.79. [2020-02-18 16-41-18.mp4](https://archive.blender.org/developer/F8347744/2020-02-18_16-41-18.mp4) [physics_rig_test1_keyframed.blend](https://archive.blender.org/developer/F8347748/physics_rig_test1_keyframed.blend) I'm not sure if that qualifies as a bug. @ZedDB, can this be related to your work on cloth?

In #73057#875351, @JacquesLucke wrote:
I can confirm that the simulation is a bit different in 2.79 vs latest master. I a simple keyframe animation to make the simulation more reproducable.

Notice how the object slows down much more quickly in 2.79.

I'm not sure if that qualifies as a bug. @ZedDB, can this be related to your work on cloth?

When I'm home I can provide additional videos to reproduce the issue I am describing; but basically as you can see the issue I'm reporting involves the excessive bounciness/wobble/wobbliness of the cloth sim in 2.8+ vs 2.79 where there is virtually zero bounce/wobble. It's noticeable just how different the level of bounciness/wobbliness is, in the 2.8 example in your video you can see that the sim never settles, it just bounces forever and has the behavior reminiscent of jello/jelly/gelatin.

I'm trying to adapt this tutorial blend file for a hair rig in my own project and the result is a rig that bounces so much that it has no similarity to what I am trying to achieve (hair).

> In #73057#875351, @JacquesLucke wrote: > I can confirm that the simulation is a bit different in 2.79 vs latest master. I a simple keyframe animation to make the simulation more reproducable. > > Notice how the object slows down much more quickly in 2.79. > > I'm not sure if that qualifies as a bug. @ZedDB, can this be related to your work on cloth? When I'm home I can provide additional videos to reproduce the issue I am describing; but basically as you can see the issue I'm reporting involves the excessive bounciness/wobble/wobbliness of the cloth sim in 2.8+ vs 2.79 where there is virtually zero bounce/wobble. It's noticeable just how different the level of bounciness/wobbliness is, in the 2.8 example in your video you can see that the sim never settles, it just bounces forever and has the behavior reminiscent of jello/jelly/gelatin. I'm trying to adapt this tutorial blend file for a hair rig in my own project and the result is a rig that bounces so much that it has no similarity to what I am trying to achieve (hair).

Added subscriber: @LucaRood-3

Added subscriber: @LucaRood-3

This is because velocity dampening was removed during the big cloth cleanup/rewrite.

@LucaRood-3 I'm guessing that it might have been removed because the newer cloth code was more stable?
(So adding it back in would be fine for cases like this I guess...)

This is because velocity dampening was removed during the big cloth cleanup/rewrite. @LucaRood-3 I'm guessing that it might have been removed because the newer cloth code was more stable? (So adding it back in would be fine for cases like this I guess...)
Sebastian Parborg self-assigned this 2020-02-18 17:56:55 +01:00

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'
Member

Changed status from 'Confirmed' to: 'Archived'

Changed status from 'Confirmed' to: 'Archived'
Member

This is not a bug. The cloth simulator changed significantly in the 2.80 release, and we cannot support the behaviour that existed in 2.79.

Velocity damping was a horrible hack, and should never have been there in the first place. And it wasn't even very useful, considering how sensitive that setting was.

The cloth simulator in 2.8x has a completely rethought physical model, and one cannot expect it to behave the same way with the same settings. I have tried to keep the simulations as consistent as possible, by remapping necessary values in the versioning code, but manual intervention is still often necessary.

I would strongly discourage anyone from following a 2.79 cloth tutorial in 2.8x, as many settings behave differently, others have been removed, and many new settings were added.

All that being said, no significant functionality has been lost. One can still achieve comparable results by tweaking the settings that do exist in 2.8x.
The setting most similar to the old velocity damping is "Air Viscosity", so tweaking that is a good start. Also keep in mind that the old velocity damping "feature" would interfere with the behaviour of other settings, causing them to behave improperly, so when upgrading to 2.8x without the velocity damping, other settings might need to be changed as well, as they now actually behave as intended.

In the video below, I approximated the 2.79 behaviour in 2.82 by setting the Air Viscosity to 8, Vertex Mass to 0.1, and Pin Stiffness to 0.1 (the mass change is to compensate for the change in dampening behaviour, and the pin stiffness change is to compensate for the lowered mass).

#73057.mp4

Lastly, we do not currently completely support edge-only cloth simulations, as we are lacking proper bending springs for them. Actually, implementing the hair bending springs for generic cloth sims could be a nice task for someone looking to get started with physics development in Blender ;)

This is not a bug. The cloth simulator changed significantly in the 2.80 release, and we cannot support the behaviour that existed in 2.79. Velocity damping was a horrible hack, and should never have been there in the first place. And it wasn't even very useful, considering how sensitive that setting was. The cloth simulator in 2.8x has a completely rethought physical model, and one cannot expect it to behave the same way with the same settings. I have tried to keep the simulations as consistent as possible, by remapping necessary values in the versioning code, but manual intervention is still often necessary. I would strongly discourage anyone from following a 2.79 cloth tutorial in 2.8x, as many settings behave differently, others have been removed, and many new settings were added. All that being said, no significant functionality has been lost. One can still achieve comparable results by tweaking the settings that do exist in 2.8x. The setting most similar to the old velocity damping is "Air Viscosity", so tweaking that is a good start. Also keep in mind that the old velocity damping "feature" would interfere with the behaviour of other settings, causing them to behave improperly, so when upgrading to 2.8x without the velocity damping, other settings might need to be changed as well, as they now actually behave as intended. In the video below, I approximated the 2.79 behaviour in 2.82 by setting the Air Viscosity to 8, Vertex Mass to 0.1, and Pin Stiffness to 0.1 (the mass change is to compensate for the change in dampening behaviour, and the pin stiffness change is to compensate for the lowered mass). [#73057.mp4](https://archive.blender.org/developer/F8362955/T73057.mp4) Lastly, we do not currently completely support edge-only cloth simulations, as we are lacking proper bending springs for them. Actually, implementing the hair bending springs for generic cloth sims could be a nice task for someone looking to get started with physics development in Blender ;)

Thanks for the explanation and showing which settings to use instead.

After hacking the old velocity damping in again and testing it out, I agree with your assertion.
I don't think it should be brought back.

Thanks for the explanation and showing which settings to use instead. After hacking the old velocity damping in again and testing it out, I agree with your assertion. I don't think it should be brought back.
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser Project (Legacy)
Interest
Asset System
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#73057
No description provided.