While working on Sneeze Me Away, I have learnt a lot about making a short animated film, and I hope to share some helpful tips and techniques with everyone.
List of entires:
· Making Backburner work with Nuke using tcl - 13th April, 2009
· Automatic unique and sequential job ID's with Backburner and Maxscript - 10th April, 2009
· Helpful ulilities to get your pipeline running smoothly using XP - 8th April, 2009
Making Backburner work with Nuke using tcl - 13th April 2009
A handy technique utilising the commandline renderer of Backburner.
A couple of weeks ago, I wanted to try and find a way to submit a job from Nuke to Backburner to get better usage from my network setup. At the time, details were very sparse, so after a bit of research, I managed to find a way. The following code is a just a framework example, and will need extra adjusting to get it working for your particular setup.
Make a new gizmo in Nuke, and add a tcl button. In the script area, enter in the following code:
set jobName [file tail [value root.name]] set file [path and name of Nuke file] script_save $file exec cmdjob -jobname:$jobName -manager:[manager address] -priority:30 -description:comp -tp_start:[value root.first_frame] -numTasks:[expression int(root.last_frame-root.first_frame+1)] -taskname:1 "[path to Nuke exe]" -x $file %tp1
Make sure to edit the path and file name, using double backslashes, and define any extra variables for the path you may need, for example:
set file S:\\Sequences\\$scene\\$shot\\$jobName
The save line is important, else your clients will just render the file in it's state when it was last saved, and not the latest state. If you have only 1 manager on your network, then cmdjob will find it automatically, so you don't need the "-manager" parameter. Also make sure your path to your Nuke exe is using double backslashes.
Automatic unique and sequential job ID's with Backburner and Maxscript - 10th April 2009
For those of you who run Backburner on a small number of PC's, or even a single PC, here is a simple solution for a "smart" way to name all jobs, and solves the issues of duplicate job names at the same time.
Keep in mind that this tip assumes you are using maxscript to submit your jobs to Backburner. I like to use an ID in the name of my jobs, as it helps keep track of how many renders I have submitted, and I never have to worry about duplicate names! There may be a more elegant way of doing this, but it still works really well for single or even a very small number of users.
First create a text file in an easily accessible part of your network and give it a name like "jobID.txt", for example. Open the file and enter in "0001" (zero, zero, zero, one), save then close.
Now open your maxscript that submits your jobs, and navigate to the section that names the job. Find the line that looks something like:
netJob.name = [some job name string]
Now, anywhere before that line, paste in this code, making sure that your path to your "jobID.txt" file is set correctly:
openIDFile = openFile "S:\\Scripts\\jobID.txt" mode: "r+" jobIDNumber = formattedPrint ((readLine openIDFile as integer) +1) format: "3.4i" seek openIDFile 0 format jobIDNumber to:openIDFile
Then amend your job naming line to something like this (I like to put an underscore in there to keep it neat):
netJob.name = jobIDNumber + "_" + [some job name string]
Now you have a method to give all of your jobs an ID number! Here is a more indepth line by line description:
-- Open the text file, and allow Max to read and write to it. openIDFile = openFile "S:\\Scripts\\jobID.txt" mode: "r+" -- Read the number that is already stored in the file, then add 1 to it to set the new job ID number. -- Then format the new integer properly. jobIDNumber = formattedPrint ((readLine openIDFile as integer) +1) format: "3.4i" -- Positions the file at the beginning, as we want to write over the old number, not append to it. seek openIDFile 0 -- Write the new job ID number into the text file. format jobIDNumber to:openIDFile_________________________________________________________________________________________________
Helpful ulilities to get your pipeline running smoothly using XP - 8th April 2009
Before you begin that fantastic new short animation you have always been wanting to start, you must make sure that you have a few systems in place to ensure that your work goes as smoothly as possible.
Probably one of the most important procedures you will need to implement before you start prodction is how to backup your work. There are many programs that can backup your data in a variety of ways, but to the poor starving animator, nothing beats free! After doing lot's of research, I came to the conclusion that the Backup utility that comes with WinXP does a mighty fine job. This can usually be accessed by going to Start -> Programs -> Accesseries -> System Tools.
The first thing you must decide is where you will be backing up to. Select a nice big partition on one of your network drives, also it's probably wise to invest in a portable hard drive that you can remove to an offsite location. As for the frequency of your backups, I suggest daily backups for "working" files, such as 3D files, 2D files, textures, documents, etc. Then a weekly backup for everything (including renders). It's probably best to run these backups at a time when you won't be working to ensure no problems, I do mine at 10pm each night.
If you have enough space, you can have a seperate backup for each day of the week, which is optimal. But if like me, your space is a little limited, you can make your daily backups run twice a week.
The system I use is as follows:
Daily backup 1 is scheduled to run on Tuesday and Friday.
Daily backup 2 is scheduled to run on Wednesday and Saturday.
Daily backup 3 is scheduled to run on Thursday and Sunday.
Weekly backup is scheduled to run on Monday.
On Tuesday mornings, I bring in my portable hard drive and copy the previous nights backup, then take it home with me that day.
If, like me, you have an internet conenction big enough, and access to enough online space, a monthly backup online is also a good idea. It might takes hours to upload, but you give yourself yet another line of defense if something fails.
If you are fortunate enough to have some extra PC's to render on, you will also be looking for a way to control them, as you don't really want or need a monitor, keyboard and mouse hooked up to everyone of them. While there are several free solutions, I recommend WinXP's Remote Desktop Connection as a simple, yet highly effective method to be able to login to your clients and control them with ease.
Setup your clients with at least 1 login. For simplicities sake, I use the same login name and password on all of my clients. The rest of the setup procedure is best explained in the following link: Setup Remote Desktop Connection in XP.Remote Desktop Connection has been invaluable to me to be able to quickly log in to a client and restart a service, or install a bit of software, etc.
If you have a spare monitor, one good use would be to connect it to one of your clents, and use a program called Synergy to be able to share one keyboard and mouse (typically your work computer's) between multiple computers/monitors. It works across multiple operating systems, and is simply just an awesome program.