PDA

View Full Version : Need a cloth solution (though I fear there is none)



NigelH
04-21-2005, 08:32 AM
I'm having a problem with cloth dynamics that may well be insurmountable with the current version of LightWave.

I have built a longer, more complex sequence using the character I introduced in this cloth test (http://vbulletin.newtek.com/showthread.php?t=28081&highlight=cloth) thread. Currently at 530 contiguous frames and counting.

The problem now is not so much the excruciatingly long calculation times, but simply the fact that LightWave will only calculate between 100-200 frames before 'unexpectedly quitting' every time. This, of course, means starting over from the beginning - a pointless exercise, since it will NEVER reach the end. If I could pick up and continue from the last frame calculated (as I would with a render), then I would eventually finish. As it stands, unless I can get LightWave to calculate flawlessly and uninterrupted for more than 36 hours (which I've already established it WILL NOT DO), I'm dead in the water.

I've looked into alternate techniques for calculating cloth, and while some are quite ingenious, the degree of accuracy I require demands the high-resloution, slow-calculation, standard procedure. This is a personal project, so fortunately, I don't have a client breathing down my neck for it, but unfortunately, it looks like I'm going to have to shelve this one until Newtek comes up with a system of calculating dynamics that is ready for a production environment. They need look no futher than Syflex or RealFlow for an example of a good workflow (which I'm sure they have) - I just hope they consider this a priority.

nightowl22
04-23-2005, 11:27 AM
I battle cloth dynamics also. I gave up and use Cinema4d and import the result.
I'm actually loyal to lightwave, but the relationship is rocky. I don't like to battle software. Those days are past and gone. If it works I'm happy. If it doesn't, I look elsewhere

meanlebh
04-23-2005, 01:42 PM
I saw your original post a while back and communicated with you a little bit when I was trying to solve a similar problem, I was very impressed with your results back then, but like you said, the calcuation times are much to high for any significantly long scene....Since then I have come up with a few solutions that seem to work alright, maybe not quite production quality, but the calculation times are quick and there is little to no editing required after the calculation. for example, I have a 600 frame scene in which my character walks out of a room wearing a dress, and it calculated the entire scene in about an hour and a half, which I was quite impressed with, and I was not required to do any editing to keep the collision from passing through the cloth.

if you would like, I can maybe try to post some of the settings and a sample scene to see if the technique is something that you could perhaps integrate into your own scenes...

but i too agree that the dynamics engines are far from perfect, it would be nice not to have to use workarounds and proxy objects all the time and be able to achieve produciton quality results.....

NigelH
04-23-2005, 03:10 PM
if you would like, I can maybe try to post some of the settings and a sample scene to see if the technique is something that you could perhaps integrate into your own scenes...


I appreciate the offer, and as you can imagine, at this point I'm ready to try anything. I tried calculating a set number of frames, then saving a transformed version of the dress at the last frame calculated to replace the original and continue with another set number of frames. This involved cloning parts of the skeleton to deform only the fixed parts of the 'save tansformed' dress and setting the rest position of the cloned skeleton at each save point. A HUGE pain in the a** - particularly since motion mixer is also invloved in the process. A pretty good idea, but running cloth dynamics on the 'save transformed' dress takes an order of magnitude longer to calculate than the original subD dress. Over an hour on the first frame before I quit it and gave up.

Long story short - if you've got any ideas, I'm all ears. :-) Any help would be greatly appreciated.

meanlebh
04-24-2005, 09:52 AM
well i can't say as my method is anything special, i am sure that you have probably tried it, but i will try to set up some sort of test scene and post it for you to look at, but it will have to be a little bit later on because i am in the middle of a render right now that has been going on for about 2 days now.....when it is done i will go ahead and see what i can do.

meanlebh
04-24-2005, 07:23 PM
hmmm...alright well i set up a test scene and tried to zip it up and put it on here, but i can't seem to get it to upload, does anyone know the size limitations of attachments? my guess is that it is too big.

meanlebh
04-24-2005, 11:02 PM
alright, here we go, give this one a try, nothing special, but it seems to work alright for me, see what you think about it, let me know if you have any problems with the scene.

NigelH
04-25-2005, 06:51 AM
I'll check it out and get back to you, thanks! I really appreciate it. :-)

NigelH
04-25-2005, 03:01 PM
Thanks again for the sample and the input, meanlebh.

I actually had played with the FX_Metalink option a while back, but since I couldn't exactly remember why I opted out, I figured I'd give it another whack - what the heck :). Here's the results Metalink Comparisons (http://www.nigelanimation.com/Katya/metalink_test.htm)

Since I'm going for a light, silky fabric, ideally I want the fine details, wrinkles and smooth form-hugging quality of the hi-poly/clothFX versioin.i have no idea what went wrong with the 'hi-poly/metalink' version, but I guess that's why I rejected it in the first place. The 'lo-poly/clothFX' proxy calculates really fast (23sec/frame), but the clean-up over the length of the animation could end up taking as long as the hi-poly simulation - and not look as good.

Still, I have yet to determine if the lo-poly proxy simulation will reach the end without LightWave crashing. I'll let it run overnight to find out.

Overall, I'm still not sure what I'll end up doing, but Im determined not to give up.

Thanks again.

meanlebh
04-25-2005, 05:00 PM
Yeah, i see what you mean in your comparisons, the high poly version does look a lot better than the low poly one, i guess i just opted to give up some of the detail for speed of calculations, but i can see why you would want the details in yours because it does look so good.....one suggestion is that it looks to me that in your examples, when you attached the high poly dress through metalink, it seems to be shrinking, i had this problem once with mine as well, i found out it was because i made the polygon size in cloth dynamics smaller than 100 percent, it looked fine on the original calculations, but when i attached the high poly version to it, it looked all scrunched up like yours does......

oen other thing that i have noticed is that the viscosity setting in the dynamics panel makes a huge difference in calc times, i have it set to zero in my settings, i am not sure what you are setting it at in yours, but maybe adjusting this could possibly help to lessen your calculation times....

other than this i am not sure i can really offer any other suggestions, but i hope you are able to come up with some sort of solution at some point soon.

good luck

-Brian

NigelH
04-25-2005, 06:41 PM
Hmmm... I'll check on the polygon size to see if it makes a difference, thanks. I never would have thought of that, and I'm sure there's no reference to that problem in the docs - that's what makes this forum so valuable. :)

I'll also try the viscosity settings (though I'm pretty sure I fiddled with pretty much everything over a long period of time to get to the point I'm currently at).

My last resort, really is just brute force. I've calculated and saved frames 0>150 (well, -15>150 actually), then I'll try to do 130> 250, 230>350, and so on overlapping the break points. The overlap allows time to cover the 'popping' of the cloth at the start of each calculation session so that it will settle down and be almost identical at, say, frame 145>150, 245>250, etc. I'll render the dress as a separate pass and be able to blend from one sequence to another in After Effects. This way, I can stay with my high quality simulations. Sure, the calculation time will increase significantly since I'll be duplicating several 20-30 frame sections, but as I said before, since it's a personal project, calculation time is not a huge issue. It's an issue, just not a deal breaker. If I can calculate several segments overnight over the course of a week, or two - I can live with that.

My own, uneducated theory is that since LightWave doesn't write anything to disk during this entire operation, there's only so much data that it can hold in even my 4.5Gb of ram. When that limit is crossed, it quits. Not providing some way to free up resources to work through large amounts of data is a bone-headed oversight on NewTek's part.

Wade
04-28-2005, 10:47 AM
http://www.spaudio.com/LW_stuff/Tutorial/c10/indexe.htm

NigelH
04-28-2005, 10:54 AM
http://www.spaudio.com/LW_stuff/Tutorial/c10/indexe.htm

Yeah, I remember that tutorial from a few years ago. Doesn't really help out with my current situation, though. Thanks anyway. :)

3D girl
05-10-2005, 08:40 PM
Hi!
This is actually my frist attempt at the discussion group.

I have a human model with clothing that I am trying to set up a collision interaction so that the cloth moves with the charatcer.
When I set up the collision and calculate it....the leg still goes right through the cloth.
I can't find instructions that work in the "on line" book.
I'm sure someone out there knows what I'm doing wrong. help :)
Thanks
3D girl

Celshader
05-10-2005, 10:13 PM
My two cents on this matter...

Use a low-poly cage for the general ClothFX motion. If possible, knock out as many polys on the collision object as you can -- if the dress never touches the head, remove the head. If it never touches the arms or feet, remove the arms and feet. The fewer polys on the collision object, the faster the calculations.

---

For fine wrinkles, consider this technique:

Parent the high-res child object to the cage; apply FX_MetaLink so that it inherits the parent's MDD deformations. Apply FX_MetaLink_Morph to the high-res child object so that you can layer additional deformations (bones, morphs, any displacement plug-in) on top of the MetaLink deformation. Now, animate wrinkle-endomorphs on the child object for fine, detailed wrinkles.

---

If you have not yet done so, consider updating to LightWave 8.3 for MetaLink_Morph work. 8.0 got really touchy whenever I used MetaLink_Morph. 8.2 was much better, but still occasionally crashed. 8.3 seems to have fixed the rest of the crash-problems I had with MetaLink_Morph.

$0.02

NigelH
05-12-2005, 07:59 AM
I have to admit, 8.3 does seem to address some stability issues with ClothFX, though I have encountered some weirdness already. Still, it appears to be a huge improvement over 8.2 - seems quite a bit faster too, but that might just be wishful thinking on my part.

I didn't really expect NT to present us with a system for pausing, saving and resuming simulations with this release (though it would have been nice :) ) - but just the fact that i no longer have to set my alarm to be able to manually stop and save a simulation before LW has a chance to crash and lose everything has made the upgrade worth my while. Heck, even the hub hasn't caused me any problems yet (knock wood).

I still have to deal with a horrendous workaround for stitching the segments of a long cloth simulation together into one piece - but without a crashing LW working against me, it's beginning to look like I can finish this project after all.

RussDude87
05-12-2005, 08:54 AM
3D girl;
I'd be willing to take a look at your scene if you want to send it to me via email... I've had some luck with stuff like this.

NigelH;
I know what your talking about, I have the same problems with Hard Body Dyn. sometimes. It would be nice if you could just pick up calculating from say a saved point in the motion of the object, but I can see why it would be dificult to program that in.

Russ

NigelH
05-12-2005, 09:47 AM
I know what your talking about, I have the same problems with Hard Body Dyn. sometimes. It would be nice if you could just pick up calculating from say a saved point in the motion of the object, but I can see why it would be dificult to program that in.

Difficult? - Yes.
Impossible? - No.
Worth the effort? - Yes.

Only then can LightWave's dynamics be considered a serious production-level tool.

spec24
05-12-2005, 11:00 AM
NigelH - animation and model look great! I hope you can sort out your clothFX woes :) Question though, her breast movement looks great. did you animate them by hand or did you use dynamics on those as well???

NigelH
05-16-2005, 05:46 PM
Thanks, spec24. :)

The cloth problems are being (very) slowly worked out. LW 8.3's relative stability help out quite a lot.

The breasts were animated with WhirleyPoints from Worley's Taft collection. I suppose I could have used LW's soft body dynamics, but I've had WhirleyPoints for quite a while and it's so quick and easy to set up. Set it once and forget about it. Just what a plug-in should be. :)

gerardstrada
05-18-2005, 02:17 AM
NigelH, have you tried this technique?

http://vbulletin.newtek.com/showthread.php?s=&threadid=24699

Provides a calculation virtually in real time and Colin Cohen has automated it in a plugin.
Maybe work for you in this case :)




Gerardo

NigelH
05-18-2005, 11:18 PM
NigelH, have you tried this technique?

http://vbulletin.newtek.com/showthread.php?s=&threadid=24699

Provides a calculation virtually in real time and Colin Cohen has automated it in a plugin.
Maybe work for you in this case :)

Thanks for the info. I had checked out this technique a while ago, but since it's basically a variation on the 'low-poly cage and FX_Metalink' process, I've already ruled it out. The results are too 'jelly-like' and definitely NOT sexy (an important consideration in this particular case). And then, of course, there's the FX_Metalink problem that I mentioned earlier in this thread.

I'm confident I will finish this in one form or another. It's just more difficult (but not impossible, as I had feared) than it should or needs to be. Thanks for everyone's support. :)

gerardstrada
05-19-2005, 12:25 AM
Thanks for the info. I had checked out this technique a while ago, but since it's basically a variation on the 'low-poly cage and FX_Metalink' process, I've already ruled it out. The results are too 'jelly-like' and definitely NOT sexy (an important consideration in this particular case).



Maybe bu not necessarily, consider this:
You can use the same version of your object (or a version not so low-poly) to make the polychain, even this way you maintain the fine details but calculation will be quicker.
The "jelly look" might be avoided intercalating the Point_Selection_Set (more space between this points selection), maintaining the same constraints may offers more flexibility and silky look, you can also let certain areas without pointsets to force folds where you want :)




And then, of course, there's the FX_Metalink problem that I mentioned earlier in this thread.


I guess if you use the same object version for polychain, you won't have these problems with FXMetaLink (also you can try MD_MetaPlug instead)



Gerardo