Cloth!

ClothCube.jpgIn my mind there is a grand trinity of powerful 3D functions that all 3D programs should possess: Hair, Fluids, and Cloth. In Blender, cloth simulation was possible only through either animated displacement maps or softbodies, until now.

Todd Koeckeritz (zaz) and Daniel Genrich (genscher) have developed cloth simulation for Blender. The wiki contains current releases for Windows and Linux, and there is already a Window’s build by paprmh that includes the latest cloth release. Zaz was kind enough to answer a few questions I had about the cloth project:

Are you and Genscher the only ones working on this?

Genscher and I are the only people who have written code so far for the cloth modifier/simulator… Matt Ebb is reviewing our User Interface and I’m awaiting comments from him which will cause changes. Ton will be taking his time to review our implementation and how well it fits into the code. There are probably a few other blender developers affected by this as well.

Is your cloth definitely going to be in the next Blender release?

When the question is asked with those words, the only answer I can give is “No.” By this I mean that I can’t definitively say that the cloth simulator/modifier will make it into the next blender release. There are some issues Genscher and I need to resolve with our implementation and the code must be blessed by Ton and others first. Genscher and I expect that we’ll resolve the remaining issues soon and it sounds like we’ll make it in, but I’d rather have it slip to a future release and be done right than rush it out the door.

How do you think your cloth matches up with others, for example, Syflex?

I haven’t looked at any commercial packages at all. I run linux, I don’t own Maya or any of the other blender commercial competitors, so its hard to even look at these if I wanted too. While I wouldn’t mind looking at other cloth packages, doing so is a two edged sword. The obvious benefit from looking at other packages is to see what their feature set is, how the user interacts with it and how well they perform (speed and quality). The most obvious shortfall of doing this is very nearly the same as you can paint yourself into a corner feature wise, put on blinders UI wise, etc. In smaller projects like this, especially non-profit projects, I prefer to go where the project takes me and once there or close to the goal, look back at the competition.

What was your reasoning behind using Provot’s cloth algorithm?

Provot was chosen when we started the project because I had the code written already from two years ago when I was working on cloth as a python module. So, we’ve started with that. However, the few semi-unique characteristics of the Provot paper referenced in the wiki page are being replaced now with a similar process from another paper. So, in some ways Provot is gone, or will be in the next release. However, the nice feature described by Provot in section 5 of his paper, deals with eliminating the super-elastic/rubbery effect that some cloth simulators exhibit. That was my reason for choosing the paper two+ years ago.

Will you continue to develop the cloth separate from Blender so even after the next version of Blender is released (with or without cloth), users can still go to the wiki and put cloth in Blender?

Well, if we don’t make the next release, while we’re working on it outside of bf-blender’s main CVS code base, I’d expect to continue to release patches periodically until its finally integrated into the main bf-blender code base. I do hope that Genscher and I will continue to have time to improve the cloth implementation though. There are a lot of ideas we have and others have had that won’t make it into the initial release.

Any final thoughts?

Users need to understand that the currently released patch is definitely not finished. It was released mainly for Ton and Bjornmose to begin their review of the code. Currently the collision response is pretty bad and that’s the main task Genscher and I have ahead of us, making that meet user expectations. If users are expecting something that works great out of the box, they should wait a week or two or maybe a bit longer. If users want to see where we’re headed and don’t mind beating their heads against a few walls, they should try out the binaries and/or patches available.

So go out there and try it. I found the papers that were linked to in the wiki a great read. For those of you that are interested in the science behind 3D cloth simulation, definitely take a look. And as all great projects should have a name I’m going to throw one out there for this project: “Zencloth” (zaz + gen = Zen). Has a nice ring to it doesn’t it?


It looks like you're using an ad blocker. I really need the income to keep this site running, so please enable advertisements on BlenderNation, or leave me a small donation. Everything helps!

Thanks!
  • moh taia

    its a great work there. as i said before we will soon have our free baby maya thanks to zaz and gen for making dreams come true.

  • Garland-Waide Bradford

    Great work Dudes

  • http://www.konrad-haenel.de konrad8ha

    I just can’t keep up with all those new features in Blender. This project grows faster than my set of skills.

    Ahh, the power of open-source *sigh*

  • kijja

    How about “Hair”.Any body develope this part of Blender.

    Is it difficult to developing?

  • bart

    @kjjja: check out these articles:

    Fur Library
    Videotutorial: Hair

    Cheers,

    Bart

  • lguillaume

    Hello, I have a compilation made with msvc 7 and on a ati card when bakin or play back cloth works ok, but with my NVidia card, when baking or play back(when clothes are not baked) the view 3D becomes empty, can anyone can test my compilation : address : http://blender.org/forum/viewtopic.php?t=8561

    The strange thing is with Genscher compilation certainly made under mingw or cygwin, I don’t have the problem.

  • http://niel.seyanim.com madman

    Whatever
    Cloth are awesome!
    Now my model’s can’t walk naked .XD

  • http://www.osysi.net Bmud

    It will be great when this project gets a little bit further. Implimenting the same functions to hair makes for really neat effects. For example, check out cinema4D’s hair demonstration videos. Most hair animations for now, until dynamics are added on, I expect will be done with a sort of “motion cage”.

    ingredients:
    one “hair cage” mesh.
    softbody applied to the cage.
    multiple control objects parented to points of the cage.
    curves to control hair particles
    hooks? to control the curves with the control objects

    I’d have to actually TRY IT but that’s what I theorize.

  • http://www.osysi.net Bmud

    duh! similarly, when the cloth simulation comes out, we could attach control points to some invisible cloth to animate larger clumps of hair. :D yeaahhh.. I’m totally going to experiment with it now!

  • etr9j

    That’s actually a really good idea!

  • mediaJolt

    Any chance a Mac build will be available?

  • http://niel.seyanim.com madman

    The compilations for the diferent’s OS only be “makeable?” (sorry) with the source. Maybe take a little moment for the others compilation’s.

    P.s.
    by the way bart change the url of the link compilation (delete the part of PHPSESSID… ;-) )

  • bart

    link updated.

    oh, and I removed the ‘sux’ comment from your previous comment. I’ll allow no flaming here.

    Cheers,

    Bart

  • Gehri

    Hi everyone,
    I am new to Blender, but think that it is a wonderful and still developing program. With the addition of this cloth/collisions programming, Blender just gets that much better! The reference paper mentioned, reminded me of a presentation that I was able to see at Siggraph 2005, given by Professors Hyeong-Seok Ko, Kwang-Jin Choi, and Robert Bridson. I had a link to it from Quicktime. Did anyone else see it?
    Anyway, thanks guys for more great programming!

  • Lazareus

    I downloaded the linux binary from the wiki pages. I’m so impressed.
    It’s even easy to use!
    (to the extent that you have Blender’s UI figured out anyway :0 )
    The sample blend file is a great example too. After running one time through each of the scenes, I was able to construct my own cloth demo in just a few minutes. A tip of the top hat to everyone involved!
    Just by the by, in shaded mode (on my ATI 9800 card) any object w/ the cloth modifier applied (either cloth or collision object) shows up w/ really strange “color grids” on all the faces. Still quite usable, and in textured mode all is normal. Just thought I’d mention it, it’s as likely to be an ATI quirk as an issue w/ the build, right?

  • http://www.blendernation.com Eugene (etr9j)

    Hey Lazareus,

    You might want to try more recent builds with the cloth modifier patch like the one here: http://www.blender3d.org/forum/viewtopic.php?t=8497

    I’m not entirely sure, but there might have been cloth updates not on posted cloth wiki. I heard they were still tweaking collision, and maybe the color grids are one of the issues. I’ve used the windows builds with cloth and never saw these grids before.

  • http://patriarchproduction.blogspot.com Mikhail P. Schalk

    Does anyone know what happened to this project?

  • http://www.blendernation.com Eugene

    @Mikhail P. Schalk
    From what I’ve been seeing it’s still in the works, though going a bit slow since the devs have had other things going on. But it’s still slated to be patched into Blender, though I’m not sure if it will make it into the next Blender release.

  • Pingback: Create an Animated Flag | Blender Simulations | Blender Guru