Batch Camera Render

Date Updated: 
Author Name: 
Sergo Pogosyan

This script aims to replace standard 3dsmax's Batch Render and imitates Houdini Output Node workflow. Using it you can specify rendering parameters - frame size, frame number, output path - directly to camera object, so every camera in scene 'knows' what it intended to render. Additional functionality is Lighting Assignment - you can specify which light will be turn on or off for selected camera during the rendering.

UPDATE 6 January 2015

Vray Elements fixed for Vray 3 and Vray output saving with VFB color correction

Here are the details:

Other major features are:

  • cancelling of rendering of multiple cameras at once,
  • hierarchical ini files
  • fixes with netrender names and d-n-d of rows

New site for the script is here -

And here's github for the script where you can do pull, push and other things -

UPDATE 15  December 2013

There are several new features I've added since 1.9.81, but I put the list of most visible ones for now. Later I'll add full list of new features.

  • Drag-n-drop of cameras in list
  • Camera list window size can be changed (script restart required)
  • When committing region render it is possible to switch to view render without restarting the render
  • ini files parsing updated - more details later
  • Keyword syntax can be used in Scene State names - thanks to Stefan Runevik for suggestion

UPDATE 23 November 2011

  • Preview button added - renders only current frame without saving anything - no images, no vray maps, no scripts running, no elements.


UPDATE 17 November

  • Ortho mode added to Vray rollout - it turns any camera to orthographic, including Vray Physical camera.


  • Animated Ranges now evaluated correctly - animation of camera target is taken in account.
  • Vray parameters restored after each camera for correct process of undefined properties.

UPDATE 22 June 2011 

Script is under GPL v2 license from now on.

UPDATE 05 July 2011

New Features:

  • Copy/Paste from one camera to one/several cameras - use new buttons at the top of the window.
  • Submit Scripts section - you can assign script files that will run on each render submit. Per Submit script runs once per render submit and Per Camera script runs for each camera before submit. All these scripts run on local machine, not on render server.
  • Last Rendered Location field - here is stored last render file location. Very useful for locating last-time rendered images.
  • I hope many of you use Global Defaults INI file during the each day work. If so, I'm sure you'll find useful new feature - Local Defaults!
    Using this feature you can set default values for the current scene, project or some other group of files. Local default values override the values from Global INI file. They are defined in local INI file. Path of local INI file is set in the Local INI Path field in the Options rollout and it  can contain global keywords (%scenepath%, %projectpath% for example). To save some property value as local defaults press "To Local Defaults" button in property's section. After that all new cameras in current scene will have default values defined in saved section.
    Local INI Path can be saved in Global INI file, so by using relative keywords (%scenepath%, %projectpath%) each scene and project will use their own Local INI file automaticaly.
Additional Info: 


Run this script with Maxscript -> Run Script command from any folder on your hard drive, then go to the *'Customize User Interface' -> 'Toolbars'*, browse to category 'Sergo Pogosyan' and add 'Render scene cameras...' button to the toolbar or to the menu.


When you start this script it iterate over all cameras in scene and list them in the dialog box. To each of these cameras you can assign frame resolution, number of frames to render including nonsequential frames, output file location and lighting setup. All these properties can be changed for one or several selected cameras. Output file location is split to folder path and file name, so you can specify new folder for all selected cameras in scene. 'Lighting assignement' section contains three list: Solo light list contains lights that will be only lights turned on during the rendering, 'Forced On' and 'Forced Off' lights are turned on or off respectively during the rendering. After all these setting will be set up (if some properties is not set value from the Render Setup will be used), check the camera(s) in the list and hit Render button. Check Net Render checkbox to submit network render job.

Supported lights: All bundled 3ds max lights, all Vray Lights
Supported cameras: All bundled 3ds max cameras, Vray PhysicalCamera

Version Requirement: 
3ds max 2008-2014. 32-bit and 64-bit.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
sergo's picture

Thanks for trying it out

Glad to hear that and thanks for trying. I'm not using it that much to test all the cases.

mali's picture

Thank you! :D

Oh man, it works perfectly now, even with backburner. Thank you so much, Sergo :)
I like how it saves both with and without the VFB colour corrections, nice touch.

sergo's picture

Make sure you are trying

Make sure you are using newest version, it should render all the elements. Just make sure you have all needed checkbox on. Check here -

mali's picture

Backburner not saving elements

Fajar, your update seems like it doesn't save the elements if you render via backburner :/ Is there some quick fix to this maybe?

NicolasC's picture

AFAIK you can't duplicate cameras in the list

The only solution I found is to duplicate your camera in the scene ... certainly to put on the wishlist, the ability to duplicate tasks in the batch list ;)


locb's picture

How can i render one camera

How can i render one camera with 2 diffrenet scene state ?

NicolasC's picture

"little" wish


The more I test your Batch Camera Render, the more I'm starting to love it ... because we heavily need a robust batch rendering system, and the one that ships with 3dsmax is, well, a bit crappy to say the least ;)
However, I'd really like 2 additions to BB submitting, if possible:

- being able to submitt to only one BB Server when needed. Would it be tricky to implement an option for that, including a dropdown list to pick one server ?

- being able to submitt to a group of servers. Same suggestion as above, with a dropdown list listing the available servers groups ...

Thanks a lot for your work on this very useful tool :)


NicolasC's picture

oh ok thanks Sergo !

I was pretty sure I was missing something :)


sergo's picture


You can use cam01_%trynum%.tif, cam02_%trynum%.tif path and this keyword will be incremented with each hit of render button.
Be careful - this counter gets reset to 0 on each max session. (if I remember it correctly)

NicolasC's picture

Any way to increment output ?

For example, if you have to render newer versions of the cameras, but in the same output folder. You've already rendered cam01_01.tif, cam02_01.tif ... cam08_01.tif, and just need to render again, but incrementing all (selected) cameras' output to cam01_02.tif, cam02_02.tif ... cam08_02.tif. Maybe am I missing something ?


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.