Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

Skiboy

Cloth modeling 2

This topic is 6113 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi I have now defined my particles and all the functions to calculate their energy. The next problem is to "make it" dynamic. Usually people use the well known springs, but I have read about using sticks between the particles (Advanced Character Physics _ Thomas Jakobsen). Is this instead of the springs or is it a suppliment for some of the springs or all of the springs. Is sticks just a fancy name for constraints? Any suggestions on which constraints I should use when we keep in mind that this is for real-time? ohh.. so many questions But my paper is growing each day....

Share this post


Link to post
Share on other sites
Advertisement
Guest Anonymous Poster
Sticks is a fancy name for infinitely stiff springs. The stiffer the springs, the less elastic cloth. Lycra would be stretchy and elastic, thick wool cloth would be stiffer. Make each particle connected to sayt, its 8 closest neighbours, or maybe 24 if you want less sharp folds. Then add gravity, collision with something, and wind and air resistance and you''re off. The hardest part in my experience is stability, and good collision response. When I get some time off, I''m going to release the source to my cloth demo, which you can download at: http://hem.passagen.se/harsman/index.html

The source isn''t available right now, but I will upload it sometime soon, when I''ve cleaned it up somewhat. It''s nothing fancy, just explicit integration and collision with a sphere, but it looks pretty good moving.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
I think your demo looks good, especially if you sort out the cloth/cloth collision.

Thanks for the sticks answear!
But, there are still some things I''m wondering about.
Is it like this: The integration controls the springs, which are there to make sure the newtons law of physics are maintained?

I''m thinking about using springs connected to the 8 closest neighbors. Stick constraints to control the stretching. And an Implicit (Backward) Euler method.
Any comments?

What is the big different when connecting to the 24 closest particles/nodes instead of the 8 closest, how does it affect speed?

(The implicit euler method came after reading the article "Comparing Efficiency of Integrating Methods for Cloth Simulation" by P.Volino and N.Magnenat-Thalmann)

Any additional info is welcome. I bet there are several things I still haven''t thought about :|

Share this post


Link to post
Share on other sites
I think your demo looks good, especially if you sort out the cloth/cloth collision.

Thanks for the sticks answear!
But, there are still some things I''m wondering about.
Is it like this: The integration controls the springs, which are there to make sure the newtons law of physics are maintained?

I''m thinking about using springs connected to the 8 closest neighbors. Stick constraints to control the stretching. And an Implicit (Backward) Euler method.
Any comments?

What is the big different when connecting to the 24 closest particles/nodes instead of the 8 closest, how does it affect speed?

(The implicit euler method came after reading the article "Comparing Efficiency of Integrating Methods for Cloth Simulation" by P.Volino and N.Magnenat-Thalmann)

Any additional info is welcome. I bet there are several things I still haven''t thought about :|

Share this post


Link to post
Share on other sites
Yet another question!

What is the different when using Newton''s law?
I see some people are using Newton''s law like this F=ma, other people write M(dobbel derive of X)=F and even some uses the first derive.

I''ve got the feeling this is a trivial question for most people here, but me.

Feel like I have a ton of Lego Bricks, but I just can''t find the right one

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Implicit is a good method, but it might be easier to get going with an explicit method, they''re easier to implement. However, with stiff springs, the explicit methods aren''t stable enough, so they tend rto "explode" the system. Implicit methods, or Jakobsens approach are more stable. As for th 24 closest neighbours, it might be a bit overkill. I use twelve neighbours, but that would be hard if I had to do simulation on arbitrary triangle soup meshes instead of ordered grids. The more neighbours you connect, the more your cloth will resist bending. Think about it, if you only connect the closest grid points the cloth can still bend completely at a single edge. This gives sharper folds with low tesselation which doesn''t look as good. The intel developer site, and darwin3d.com explain this quite well. Still, the more springs, the more time you spend computing the forces, and that is a pretty expensive operation. Now, the reason you use springs is just to model some characteristics of cloth behaviour on a local scale: cloth tends to resist stretching but be more prone to folding. Whether you enforce this by using springs or analyzing triangles directly doesn''t really matter. Most of the high end simulations seem to use forces based on the deformation of the triangles of the mesh, not springs. And as for Newton''s law, if X is position then X'' (the derivate of X) is velocity right? And, of course X'''' is acceleration. Since a=X'''' that means F=ma is equivalent to F=mX''''. If you haven''t already, read David Baraffs siggraph course on physical modelling, it covers most of this really well.

/Joakim

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!