cloth collision not working

hello, all -

to keep things concise, i’ve got a model in need of some pants. so i made said pants and scaled/fit to the model > textured > weight painted the top of the pants to pin them in place (pants are parented to the model) > enabled collision on the model but upon baking the pants they deform properly but still go right through the model.

the tutorials i’ve seen only specify to enable the cloth object’s “cloth” setting and enable collision on the colliding object’s properties to achieve this interaction…

i know there’s probably a conceptual thing i’m missing somewhere as all my settings “make sense” to me but then again i could be completely off… also - is parenting the pants to the model the best way to make them remain relative to the position of the model or is there a better method? (not necessarily any problems with the parenting but just curious).

using v249.2

thanks so much!

Post a stripped down version of your scene. There are many variables when working with cloth that have to be considered.

Oh yes!
I’m looking forward to see a clear visual about where and in wich order Modifiers HAVE TO BE placed and how to have a complete control of sticking-pining-fixing cloth to one or several Meshes…
:wink:

:open_mouth: Almux is on the right track! GO GO GO FFS!

pappy - probably should have just done that in the first place. thanks a lot for taking a look.

almux - only one modifier (cloth) in use. could this be my issue?

hooves - “FFS”?

thanks all for the responses.

sorry - it’s late and i didn’t feel like navigating the attachment manager… link is below

Cloth Scene

thanks again!

Hi

Sorry, i can’t open the blend now because my pc is running simulation in blender.

Make shure you use CFace enabled, objects need to be higher geometry to avoid collision.
Allso u need supper slow motion for good collision detection (every next frame moves object shorter steps than error limit and average edge length). So they can move fast but u need very hi fps then for baking.

U need normals facing inside, maybe double sided.

http://wiki.blender.org/index.php/Doc:Manual/Physics/Soft_Bodies/Reference

I don’t know. I can see any reason the collision should not work. Try importing those objects into a fresh blend and set it up again. It should work.

For what it is worth, this file comes with the collisions turned off for the cloth object. However enabling it does not work. From what I can see everything is set up right.

If it still does not work then there is some other anomaly I don’t know about.

The pants and the body are in different layers.
Only objects that share a layer can “see” another.
BM

Folks,
There are some strange issues with cloth anyway (i have a tremendous post open about that here too: http://blenderartists.org/forum/showthread.php?t=186437)… It can be realy damn tricky. Things happen with everything “on” on the same unique layer.

Yeah. I saw that and tried it on the same layer. But it did not work. But that is probably it though. I was unsure of that. So I did another test to confirm.

The scene is damn buggy I think. Cloth does have some bugs. It will do strange stuff from time to time.

It was hanging also quite a bit. But that could be because of settings.

I’d just start fresh.

I’m hangging around too… Desperately need to collect informations… :o

It might help if u export the wrong layer object as obj file -

  • delete the object on wrong layer -
  • inport obj in correct layer and reset modifiers.

Huh?
Why that?
Select object.
Hit the M_KEY, so the layer panel pops up.
And add/remove (Shift click) layer or move (click) to layer.

He’s talking about freeing up whatever is causing the file to be buggy - I think. I have seen cloth info hang around sometimes after you reset it, or even do strange things.

Usually I can just remove and re-add the cloth modifer. But with this file there seems to be something funky going on.

Your object’s scale isn’t 1 - ctrl + a.

Pants normals face out, not in where is body to collide.

I’m not shure if pant’s need to have collision enabled from soft body - cloth - collision,
but it’s not enabled.

well first of all, this place rules. i’ve had some experiences with other forums where people just want to make themselves feel better or something and just go “oh - it won’t work? well that’s just because you don’t know what you’re doing and never will…” BUT - can’t thank you guys enough for all of the feedback.

in more pertinent news, i had a go at exporting/importing, switching layers, flipping normals, etc… but things just don’t seem to be cooperating so here’s what i’m thinking - something tells me there’s just something conceptual/procedural i’ve just completely overlooked.

I opened a new file and just put a subdivided plane with cloth modifier (all defaults) about 5 units above a sphere with collision turned on (all defaults) and “dropped” the cloth on the sphere and everything worked perfectly. after this i just started changing one small thing at a time and kept re-baking with desired results. i got to where I just put a cylinder in place of the pants but all of a sudden it went crazy and the cloth acted like it was being inflated and everything went haywire. but - it didn’t start happening until i put the cloth cylinder around the body mesh. could there be something on the body i’m overlooking? not necessarily with the collision modifier but somewhere else? the collision on the body is set to default so possibly it’s elsewhere in the body mesh?

anyway - back to the procedure/concept business - i was thinking if i could just get a look at the process(es) you guys follow to put cloth around a mesh it might make me see something i hadn’t considered. just an overview of the steps taken with any non-default settings mentioned or something. nothing too in-depth unless necessary.

also - i don’t think i had mentioned that the body mesh was imported as an obj from makehuman… i didn’t think this would have anything to do with it as it’s never been an issue in the past but just thought i’d throw it out there in case.

thanks a million for the help

Here’s your project fixed so it will work.

  1. I moved the pants to the same layer as the body.
  2. Scaled both pants and body up till the body was a full 5.5 blender units tall.
  3. Applied scale to both pants and body
  4. Removed the subsurf from the body, which then made it visible that the body was “poking” through the pants.
  5. Move the pants lower so the body does not intersect.
  6. Reduced the quality of the cloth to speed up the simulation.

Done.

Basic usage requirements for cloth.

A. If you are using collision, the cloth object and the object it collides with must be scaled to reasonable Blender unit values. The reason for this is that the collision gap is (I believe) calculated in percentages of a Blender unit. In this particular project that put the collision gap to be well OUTSIDE the pants, so of course they couldn’t collide.

B. Yes, the Collision object HAS to be on the same layer as the cloth object.

C. Turn OFF subsurf to make SURE that the cloth is not being penetrated by the collider.

D. Turn cloth settings way down while testing, if your not getting any correct action at low settings, your just going to waste even more time with the high settings.

I’ll get into the details of dealing with cloth in tough animation situations in a tutorial I’m making once 2.5 cloth has settled down some. In the meantime here’s a sample of what can be done in 2.49
http://vimeo.com/9394407

Attachments

pantsCloth (1).blend (356 KB)

Thanks Pappy!

These are precious hints!
Question for point C: Subsurf off ONLY for testing, right? Can be turned on again for final render, OK?

Your next tutorial will be dearly welcomed! I tell ya!

Also: how many different clothes can Blender handdle within a same file? Seams like the rules change when there is more then 1 cloth simulation in a scene…

Pappy -

i can’t thank you enough for getting to the bottom of this! it’s so easy to think of everything in blender as relative when it comes to measurements but i guess the laws of physics/mathematics dictate that for anything to be calculated within an environment there has to be something constant. i appreciate the benefit of the doubt from everyone who thought there was a bug, lol, but it looks like the final score is blender=1, me=0.

anyway, i really appreciate everyone’s suggestions and almost all of this forum will definitely end up in sticky notes around the monitor. invaluable information, indeed.

thanks!

As long as the multiple cloth objects don’t need to interact, you can tame them in different cages.
This is where the layer concept comes handy.

Rendered collision object in layer 1

Reduced collision object (proxy) in layer 2 and 3

Cloth object 1 in layer 2 and 1

Cloth object 2 in layer 3 and 1

Rendered is only layer 1.

That way cloth collision is calculated in hidden private layers with only 2 simple objects affected.