View Full Version : Fluid cache re-copies itself with scene name change.
03 March 2008, 01:01 AM
We've been using fluids for various explosion and gun blast effects in our pipeline, but were having some serious problems that we can't seem to correct.
One of our scenes has 28 fluid containers with a cache file for each one, the cache files are around 25GB total. These cache files are stored on a network so our renderfarm can access them. Everytime the scene is saved with a new or incremented name, maya copies the cache files in the data folder with the new scene name as a prefix and updates the cache nodes in the scene. This takes around 15 minutes and brings the network to a halt, and takes up massive amounts of disk space. This happens whether "copy locally" is checked or not. I've tried to reference the fluids, but it still copies the cache files and renames them even though the referenced fluid file is not really being saved.
On top of that, even if you don't change the scene name, and you save over an existing file, it copies the cache files anyways, but doesn't change the name, so this also takes forever.
I don't see why you would ever want this to happen. You should be able to create a fluid cache and use it in any scene and have the cache node use one file, every time. Is that not the freakin point of a cache file?
03 March 2008, 11:06 AM
Exactly! It gets really irritating when you've to wait forever for the file to save while it recopies all the cache files. I hope someone explains a workaround.
03 March 2008, 11:59 PM
mmmm . . I once passed by a sililar situation using Maya 7.0 . ... But I remember setting up the project properly and doing that "copy locally" thing solved it.
I've just opened Maya 2008, set up a new project .. . and tried it locally . ..
 Throw heavy a fluid container
 Cached it (now it's writing to the temp forlder).
 saved the file (now it's copying what it wrote from the temp folder into current project data folder, so it's taking some time).
 Unchecked "copy locally" . .and saved again (no copying is done . . so it'a saved in no time)
 closed the file
 Checked to make sure Maya deleted the cache it wrote into my temp folder (when I used Maya 7 I used to delete them by hand)
 Opened Maya again, and opened the file . ..(no copying to/from temp, so it opened in no time).
 saved the file in different names . .. (quick . .and no unnecessary cache duplicates are made).
It's kind of logical to have such workflow when one is creating/manipulating fluid behaviour. This way the file being manipulated can be saved with it's cache at some point, one can further experiment as desired (using the temp-cahe copy), and just closing without saving if stuff aren't going well.
You didn't mention how your renderfarm is handling this, is the cahe working on a local machine without making any copies?
03 March 2008, 06:47 PM
I don't really know whats going on with these cache files. We have the project set up correctly, it's on a network drive, that's the way it has to be for our render farm, so whether or not it works locally doesn't concern me at this point. For certain cache files in the scene it appends the file name mulitple times to the cache file name, but doesn't copy, so what's entered in the cache file location box is scenename_scenename_scenename.mcfp. Sometimes the scene name is repeated five or six times. I can point it to the correct file and it reads it fine, but as soon as i save it copies it to a different name again, until it decides to go all crazy with the name again.
The copy locally funtion appears to be working, but since "locally" for us is on a network drive I think it's causing it to act funky. I was hoping duncan or someone who is famililar with the nuances of the fluid cache could offer some help.
03 March 2008, 12:02 AM
Just out of curiosity, I created a project on my local hard drive, copied over my fluid caches, reconnected them, and saved the scene with a new name and it duplicated the cache files, and appended the scene name to the new cache file. This is with "copy locally turned off." I suppose this is the intended behavior, and all is well with a small fluid cache, but very annoying with large cache files. There should at least be an option to disable the cache duplication on file save.
04 April 2008, 02:59 PM
check my thread.
in my test, if ur scene name contains no "_", then everyting will be fine whether the copylocally attr is on or off. But hey, we can't live without "_"
my workaround is save my cache as OFpF (One file per frame). this way u won't have copylocally attr on the cache node, and the save is instant, the tradeoff is u can't use the append to cache and truncate cache menu according to the doc. according to Duncan, even if u r using NTFS filesystem, a single file cache size can not extend over 2g, it's a limitation in maya 8.5, i haven't checked the 2008 help. in my scene, i have a 60x80x60 container, and 200 frame animation, so i have no choice but to use OFpF cache or segmented cache ( has to be created by mel, i didn't try this)
edit: holysh*t , it seems the bug had been there since maya 5.0
check this thread:
11 November 2008, 06:20 PM
I'm running into the same problem. The pipeline at the studio auto names with "_" in the file names, and working local (for final) isn't really an option because of the renderfarm.
My sim is all cached out on disk, but during the sim our network went down. I cached out OFPF, so the frames that did sim are there. Seems no matter what I do the cache files refuse to link back up. I even saved a new scene local, no namespaces or "_", deleted the cache, and tried again....but no luck. I just get this:
// Error: Not able to access cache information for fluid 'fluidShape1'.
I'm sure I could get the studio TD's involved but be nice if there was just a freeking workaround. Duncan? Anyone?
PS. I have tried to open the file in Linux, Mac, and PC at the studio, and the problem seems across the board.
11 November 2008, 06:20 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.