Thursday, February 12, 2009

Brad Friedman's Blog

While searching for a way to have the auto-complation in WingIDE I came across this wonderfull blog of Brad Friedman. I've red his entry about his asset management system which he calls "GlobalStorage" where at the end of this entry I was almost going to cry in bliss :)

I was working for an animation studio last year. Which has around 20 artists in total. I was the only Technical Director dealing with everything considered technical. I had a lot of problems with the file structure we were using (actually we didn't have one).

Even with this little group of artists, the file names and paths gets confused without using a management for the files. So I couldn't find the latest versions, files were named like final_anim.mb or final_RealFinal_anim.mb. Being the villain and dictating didn't solve anyting.

I've tried to organize by creating directories with meaningful names for every phase of the job, and I've adjusted the workspace.mel so maya can understand the structure. Again it didn't solve anything. I needed a little time to write a proper asset management or at least something that manages the files. New jobs were comming constantly, I didn't have time. The pressure was increasing, following the files was getting harder and harder. So I was crushed under that pressure on my shoulders and I resigned from my job last year ( there were other things too).

When I started working for my current job, I asked them how are they managing their files, they explained that they were using a very simple system for XSI to set the file name and path. They had a little Java script which manages the creation of project folders and adding shots to the lists.

I've re-written the code from scratch with C# and MEL. I've made the code much more flexible than before. So in Maya when an artists wants to save his/her file, he uses my save as script (oySaveAs). It is a simple form that users must fill the fileds. There are fileds for project name, scene name, shot number, shot type, revision and version numbers, user name initials, so the scripts decides the file name and path. The fields are filled automatically after the first usage. So if you are doing an animation for a job named JEMBEY, for the scene SEVGILILER_GUNU and shot 012, the file path and name becomes :

M:/JOBS/JEMBEY/MAYA/SEVGILILER_GUNU/ANIMATIONS/SH012/SH012_ANIMATION_r00_v001_oy.mb

or if you are doing a model of a character named KIZ than the file path and name becames:

M:/JOBS/JEMBEY/MAYA/SEVGILILER_GUNU/MODELS/KIZ/KIZ_MODEL_r00_v011_oy.mb

of course, it is not a complete asset management system, or at least it is managing from one side, by just putting the files in a correct place with a correct name.

Brad's system is something huge really huge when compared to my little tiny scripts. He is using Subversion as the base system and he has written a lot of code over it with Python to get the nice features of his management system. Go and read his entry about GlobalStorage.

1 comment:

GuildWars2Items said...

It takes strength to be truthful when a lie would be more convenient D3 Gold, it takes strength to be polite to someone when that person has been rude to you Buy D3 Gold, it takes strength to persist in the face of obstacles, when it would be much easier to simply give up Cheap D3 Gold.

The past is gone and static. Nothing we can do will change it.scarlet blade gold, the future is before us and dynamic. Everything we do will affect it rs gold, You laugh at mescarlet blade gold for being different , but I laugh at you for being the same.