2
$\begingroup$

I am doing some simulations to cover a model with a cloth. I used to do the simulation for 100 subdivisions for the cloth and it worked okay. However, I needed a higher quality simulation and I increased the subdivision number to 200. In fact, I wanted to be able to see more details after the cloth has been draped on the 3D model.

However, after increasing number of subdivisions for the cloth I realized that the cloth gets teared easily when colliding with kind of sharp edges of the 3D models it is being draped on. So I increased the collision_quality parameter value from 2 to 15. Now the cloth is not easily getting teared on those kind of edges anymore, but the simulation quality has been degraded further since the cloth behaves weirdly and folds into itself. The tearing problem also still exists when colliding with sharp edges. Below you can see some of the results after the simulation:

enter image description here

And here you can see a closer view:

enter image description here

And here are the cloth parameters:

bpy.ops.object.mode_set(mode='EDIT')
bpy.ops.mesh.subdivide(number_cuts=100)
bpy.ops.mesh.subdivide(number_cuts=2)
bpy.ops.object.mode_set(mode='OBJECT')

bpy.ops.object.modifier_add(type='CLOTH')

self.cloth.modifiers['Cloth'].settings.structural_stiffness = 5
self.cloth.modifiers['Cloth'].settings.bending_stiffness = 0.05
self.cloth.modifiers['Cloth'].settings.spring_damping = 0.1
self.cloth.modifiers['Cloth'].settings.air_damping = 5.

self.cloth.modifiers['Cloth'].settings.quality = 15
self.cloth.modifiers['Cloth'].settings.mass = .300

self.cloth.modifiers['Cloth'].collision_settings.friction = 100
# collision quality is different from self.cloth quality
self.cloth.modifiers['Cloth'].collision_settings.collision_quality = 15 # This is the only parameter I changed
self.cloth.modifiers['Cloth'].collision_settings.distance_min = 0.005
self.cloth.modifiers['Cloth'].collision_settings.distance_repel = .01

So I wonder, does anyone know how I can resolve the tearing + folding problem and get good-looking results? Are there some parameters that I'm probably unaware of (I'm new to Blender) whose values might be causing these issues?

P.S. I'm using Blender 2.77a

$\endgroup$
  • $\begingroup$ Can anyone help me with this? $\endgroup$ – Amir Aug 29 '16 at 17:25
  • $\begingroup$ Have you tried increasing the number of steps? That can definitely make the difference in physics calculation here. $\endgroup$ – Mark Stanberg Nov 5 '17 at 1:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.