Author : polygoo


Reply
Reply
 
Thread Tools Display Modes
leechdemon's Avatar
Old (#1)
So, I work on one workstation at the office, plus a home desktop and a home laptop. I'm trying to figure out a setup to make working on projects on multiple systems more efficient.

Currently, I've got Relative Paths turns on, and some common textures live in a Content folder inside of my project folder on each machine; those files are used regularly, and stored in the same location (relative to my project folder) on all machines. That helps a lot. Lately I've been transfering projects between machines using Dropbox (love it.), but I find it's not very convenient to work from that system.

I recently upgraded to Max2010, and it looks like changing project folders is very easy to get to now. I was thinking abuot coming up with a system using that as the switcher (lately I'm using the Asset Tracker, but "Retarget Common Root" seems to bug a lot), but when you set a new project folder it creates a ton of extra folders, including moving my Autoback, etc. Is this the best way to go about doing this, anyways? I suppose if I always set the same location to be my Project Folder on each machine, it won't create anything new, since there's already all those folders living there, right?

What does anybody recommend?
Offline , spline, 217 Posts, Join Date Mar 2010, Location Ann Arbor, MI Send a message via AIM to leechdemon  
   Reply With Quote

monster's Avatar
Old (#2)
I was in the same situation recently. I was working on 3 projects and needed to switch between them because of the relative textures.

The best thing to do is to use maxScript to set the project folder and sub folders. When you set the project folder through the interface it creates all the extra folders you don't need. But MaxScript won't do that. I'll post an example script here soon.

It's not hard to figure out the maxScript for changing project folders.
Juan Martinez | Blog | Animator at Verse, Inc
Offline , polycounter, 950 Posts, Join Date Oct 2004, Location Dallas, TX USA Send a message via ICQ to monster Send a message via AIM to monster  
   Reply With Quote

leechdemon's Avatar
Old (#3)
Huh, alright. So Project Folders is the way to go, but using MS to automate-out the extraneous crap. That works.

It may not be hard for YOU to figure out the MaxScript, but I don't have the maxscript tools to create a sphere, let alone path setups, lol. Eager for your example!
Offline , spline, 217 Posts, Join Date Mar 2010, Location Ann Arbor, MI Send a message via AIM to leechdemon  
   Reply With Quote

monster's Avatar
Old (#4)
Here is the script that I run. I have one script saved for each project I'm working on and just use MaxScript | Run Script... command to execute the script. (Or you can drag the text to a toolbar to make a toolbar button.)

I actually use relative autoback folders so that each project has it's own autoback files.

I also had the need to use separate macroscripts for each project. I commented that stuff out at the bottom.

Code:
--SET THE MAX SCENE/PROJECT DIR
projectPath = "C:/myproject/"
pathConfig.setCurrentProjectFolder projectPath

--SET AUTOBACK DIRCTORY FOR THIS PROJECT
pathConfig.SetDir #autoback (projectPath + "/autoback")

--POINT ALL FOLDERS TO THE PROJECT FOLDER, THE DOT MEANS RELATIVE
pathConfig.SetDir #Image "."
pathConfig.SetDir #export "."
pathConfig.SetDir #import "."
pathConfig.SetDir #matlib "."
pathConfig.SetDir #Photometric "."
pathConfig.SetDir #proxies "."
pathConfig.SetDir #animations "."
pathConfig.SetDir #archives "."
pathConfig.SetDir #downloads "."
pathConfig.SetDir #expression "."
pathConfig.SetDir #maxstart "."
pathConfig.SetDir #preview "."
pathConfig.SetDir #renderassets "."
pathConfig.SetDir #renderPresets "."
pathConfig.SetDir #renderoutput "."
pathConfig.SetDir #Scene "."
pathConfig.SetDir #sound "."
pathConfig.SetDir #vpost "."


--OPTIONAL, SKIP THIS STEP IF YOU DON't WANT TO CHANGE THE SCRIPT PATHS
--SET THE SCRIPT DIRECTORIES
/*
SetDir #userScripts (projectPath + "/Scripts/")
SetDir #userMacros (projectPath + "/MacroScripts/")
SetDir #userIcons (projectPath + "/MacroScripts/")
SetDir #userStartupScripts (projectPath + "/StartupScripts/")
*/
Juan Martinez | Blog | Animator at Verse, Inc
Offline , polycounter, 950 Posts, Join Date Oct 2004, Location Dallas, TX USA Send a message via ICQ to monster Send a message via AIM to monster  
   Reply With Quote

leechdemon's Avatar
Old (#5)
So this sets the project folder to C:/myproject (which I can point anyplace I want), sets the Autoback to wherever I want, and points the rest of the folders to "/myproject"? What is it doing different for Autoback than the rest of them? Or is this making C:/myproject/autoback, and then everything else just lives in a pile inside of C:/myproject, rather than individual folders?

You're right though, looks very easy aside from that. Then you'd just have a different path for what it determines the Project Folder to be on each machine? So you pick up a project, hit the "Reset Project Folder", and it changes all the paths to work for that machine versus the old one? Like, on Machine 1 the path is C:/myproject, and on Machine 2 it's F:/Billy's Folder/2011/myproject, and customize the macro on each machine to point to the correct folder?
Offline , spline, 217 Posts, Join Date Mar 2010, Location Ann Arbor, MI Send a message via AIM to leechdemon  
   Reply With Quote

monster's Avatar
Old (#6)
Quote:
Originally Posted by leechdemon View Post
Or is this making C:/myproject/autoback, and then everything else just lives in a pile inside of C:/myproject, rather than individual folders?
That's what it's doing. I like to put the autoback files into a sub-directory and not just the root of the project. Actually the autoback line should be this, in order to make it project relative:

pathConfig.SetDir #autoback "./autoback"

But it'll work either way.

I'm not sure what you mean by "pick up a project, and hit the Reset Project Folder"... If by that you mean customize the script for each computer and run it, then yes, that's all you need to do.

I imagine you can save a few .ms files in Dropbox, and just run the appropriate setup tool:

Machine1_Project1.ms
Machine1_Project2.ms
Machine2_Project1.ms
Machine2_Project2.ms
Juan Martinez | Blog | Animator at Verse, Inc
Offline , polycounter, 950 Posts, Join Date Oct 2004, Location Dallas, TX USA Send a message via ICQ to monster Send a message via AIM to monster  
   Reply With Quote

leechdemon's Avatar
Old (#7)
Yeah, that makes sense. It's always the same 3 computers, so I can just use the correct MS on each machine, that way when I pick up a project, they're all relinked to the correct folders.

Looks sweet, I'll test it out when I'm at the office. Thanks!
Offline , spline, 217 Posts, Join Date Mar 2010, Location Ann Arbor, MI Send a message via AIM to leechdemon  
   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Copyright 1998-2012 A. Risch