Version Control with 3ds Max

As I am new with 3ds Max, I have found the practice of making several copies of a scene with increments to the file name mentioned. This coming from my development background puts up warning flags and brings the question up to is there a common Version Control system that is used?

For development I use TFS, Git and Mercurial, and would think to use these for the 3ds Max, Photoshop, etc… but what is used by you? and do you have any integration to them for these visual content creation tools?

3ds Max since version 9 (I think…it might be earlier) has supported any source control system that supports Microsofts VSSCC plugin specification. I’ve used Max and Perforce together for many years using that system.

If you’re using Perforce (which you’re not) you can get P4GT- otherwise, it should be pretty easy to write your own little toolset. Or you can go Jeff’s route, which though I haven’t tried myself, I tend to prefer custom solutions over built-in Max stuff where possible.

We ended up writing our own support for 3dsmax and Perforce communication. This has a couple of advantages over using the Max built-in Asset Tracking and P4GT.

  • Ability to change annoying default behaviour of some nag-boxes
  • Run automerge on data types which can be trivially automerged
  • Ability to add any custom relations trivially (textures, texture metadata files, all types of files that are exported from Max etc)
  • Etc…

All Perforce communication is in a C# library (with proper error handling etc), so the same functionality is available also on Maya and any other software we want to support etc…

SamiV.

Great to hear and now know. I will be looking in to these as I setup version control with my projects.

On another note, is there a preferred version control package, or is this more controlled by the development house?

From what I can tell, people seem to love perforce.

I’ve never heard anyone complain about it.

I won’t complain about it, but I would love to see more studios move towards DCVS. As we develop more and more living and live content on projects that never end and don’t branch clearly, the traditional perforce branching system isn’t nearly as flexible and lightweight as something a DCVS can provide. At least recently they’ve added shelving, but if they can’t adopt DCVS benefits they’re going to lose out at some point.

I have been a fan of the DCVS model for source control, and see that as really the only way to have a good version control model for graphic content. The only downside I can see with it is the merge for graphic content. What finding an efficient merge system for changes that would be checked in for the graphic resources just doesn’t seem to exist yet. As for code the merge process is getting easier.

For the integration model that I am working on with visuals/graphics content we create where I work, we going on an aggressive locking model so that if the file is being worked on it locks the version on the server while the user is making changes on their local system and will only unlocked on the server when it has been checked in.

Thanks for the input, it is giving me more ideas for the tools integration I am designing and implementing.

Putting together DVCS and gaming (animation, artists, coders…) is what we’re trying to do with Plastic SCM.
Regular DVCS can’t deal with big files, exclusive locking and so on, and that’s what we’re working on.
So, yes, I strongly believe DVCS will get even bigger in this area :slight_smile:

I love perforce – and you get can get a two person license for free I’m pretty sure. I’m not exactly positive on the restrictions of it :slight_smile:

P4GT is good (loved using it for Max 2010) – but there are a few caveats:

  1. Perforce does not match updates to releases of Photoshop or Max. So if you decide to move forward on newer versions of those apps, p4gt may not follow for some time.
  2. P4GT is not consistent between versions. It acts and behaves slightly differently. Although most prominently with Photoshop. Most annoying for photoshop was that they moved its location for the user to access to a totally different part of the UI.
  3. P4GT is not batch scripting friendly – some of its customizable features, such as ignoring certain types of warnings, or never checking in, or sync and reopen the file doesn’t appear to be available to script. Instead you have to open max the first time set up how you want it – close/reopen an then run the batch. But for the avg user it provides a lot of features without having to open P4V/P4W.

Perforce recently added Max2012 support to p4gt –

I think Merc is good if you are on your own and don’t have to worry about working on the same thing as others. I’ve only used it on my Mac, but its a bit weird for me how you don’t have to ‘check out’ any of the files.

I haven’t heard anyone using DVCS before – but as long as work is backed up and ‘diffable’ for code and commented for binary/graphic stuff – I am warm and fuzzy on the inside.

Nice thread . I like the suggestions of the members. This thread contain nice information. Thanks for sharing it with me.