This is a slightly technical detail kind of post- the kind of geekery you’d be interested in if you’ve heard of revision control systems, GIT, Subversion, etc. It doesn’t seem to have to do a whole lot with 3D graphics, but managing files is always going to be an issue in a project of any size.
Since the tube kickstarter campaign ended our team has swelled to 25, and most of them are not located at Hampshire. (Iincidentally why I haven’t blogged for so long- keeping the project running with an expanded team was a greater than full time job) Even a while ago, it was clear that SVN (aka subversion) was not a great fit for most people, for a bunch of reasons:
- You have to download the entire project (roughly 8 Gigabytes!) the first time you use it. Slow internet connections and bandwidth caps make this impractical for some.
- Not everybody is ‘technical’ – updating and committing is several, potentially error-prone steps, sometimes involving the dreaded command line 🙂
- GUI front ends are platform specific – different docs for different people.
Animators previously used what we called ‘production packages’ : we used blenderaid to pull out dependencies and make a zipped bundle of all the file the animator needed, this was:
- impractical to do updates on rigs/etc. while an animator was working
- hardcoded to anim files (though I could have fixed this)
- needed to ask the animator to send back work in progress for lighting tests.
So we found sparkleshare ! Sparkleshare can be best thought of as a dropbox clone with a git backend. A while ago I looked at it, but it only had a linux client; now that it gained windows and mac clients, we migrated from the production package way to sparkleshare, and away from blenderaid to the blender python api. Now we have the following advantages:
- one click (on my end) to create a package for *any file* in the production tree – with a choice of including or excluding image files, and the possibility of adding more files easily to the same package.
- user on the end has to click twice, and enter two bits of information.
- end user experience after that resembles dropbox. updating rigs means just dropping them into the share, and we can get wip files at any time without having to ask.
Is it perfect? we found some issues (where else) on Windows, where there was no SSH client available (luckily one of our interns- Arindam Mondal) figured out how to use Putty and wrote an extensive Howto , and we also found that Windows XP is not supported. I’m frankly stunned that anyone is still using XP though 😉