[Closed] Confused by Net Render Syntax
That’s fantastic, Monkey! That fixed everything. The script works almost perfectly now. The only thing now is that I can’t get it to render anything but frames 1-100. I tried setting rendtimetype to 2 in the net render code you gave me, to no avail. Am I putting it in the wrong place? Or better yet, is there a way to just pull the current selection from the Render Scene Dialogue?
First you need to add to your netrender code job.fromFrame and job.toFrame. These control the start and end frame of the job being submitted/altered. If you want to pull from the render dialog you would use:
job.fromFrame = rendStart
job.toFrame = rendEnd
However, you will probably need to close the render scene dialog if it is open, because changes from the dialog aren’t updated to maxscript calls until its closed or you call renderSceneDialog.commit() (NOTE: not everything in the dialog can be updated using the commit command). So some code to help there add this before your render loop:
dialogOpen = renderSceneDialog.isOpen()
if dialogOpen == true do
(
dialogOpen = true
renderSceneDialog.close()
)
Then add this after your render loop:
if dialogOpen == true do
(
renderSceneDialog.open()
)
The first set of code creates a dialogOpen variable and sets its value to true if the render scene dialog is open and false if it is closed. If dialogOpen is true then we set the variable to true and close the dialog. Now you would run your render loop. Then after the jobs are submitted we open the dialog back up if it was open before.
Hope that does it,
-Eric
Monkey, I can’t thank you enough for all your help with this. The app is still a little rickety, but I’m the only on who has to use it anyway. You have no idea how much time this is going to save me.
I really hate to ask for anything at this point, but the PNGs still aren’t rendering as 8-bit, even with the code you gave me to set the type to 24. Is there a specific place the code needs to go?
also, I can’t seem to alter the Nth frame settings, or import them from the Render Scene Dialogue.
edit: Oh, right. Job.nthFrame. Because it’s not like we’ve used job. for every other thing we’ve worked on
Glad I could help Mathew, its good to know that I can save some other people some time. I have spent quite a bit of time investigating net render solutions.
For the most part now I have been using 3dsmaxcmd.exe to submit my jobs, because it offers some options that aren’t available from the net render interface. Stuff like Output format parameters (only limited formats supported), single frame rendering, split scanlines, plus most of the other things I need. For proper submission management I use a combination of the net render interface (to check existing jobs, etc) and then 3dsmaxcmd.exe to submit new jobs. So far it has been working really well.
-Eric
Thanks for the advise. I might have to go in the direction later.
I’ve used Deadline and RPManager before for a couple of years. They work great, but I’ve always wanted a one click render button. Something smart that can process all the Max files for a project, figure out if it has changed, update character rigs with new animation, and submit everything to the farm.
All from one click
Maybe I’m dreaming, but I got files rendering now. Thanks for the help
Dreaming if you want it to magically happen without doing any work. You may look at Paul Neale’s BatchItMax script. You should be able to use the net render or 3dsmaxcmd.exe method with it. You will have to figure out the animation loading, and the “if it has changed” from someone else, since I don’t do that in day to day work. My guess is you won’t get a totally automated system, ie you may need to move files to a folder rather than having it know that something has changed, but it all should be possible.
Coll, did you ever get the png settings working? If not was everything else working as you need?
-Eric