Batch Camera Render

271 votes
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.


  • Corona and Vray Sun inside Daylight System fixed (thanks to busseynova for reporting)


  • CoronaSun supported inside Daylight System


  • Don't Save Render Elements Checkbox (Thanks to antomor)
  • Limited support for camera objects in xref scene files (Only root objects in first level xrefs. Cameras in nested xrefs not supported)

1.13 Bugfix:

  • Deadline submission should work now

1.12 New Feature:

  • Deadline support.
    Very basic imlementation, it allows you to submit your jobs on a deadline server. Enter deadline repository address and check "Use Deadline" checkbox. Other checkbox doesn't matter in this case ("Net render", "Show Submit Dialog").
    Probably it requires Deadline 3ds max Submitter installed. I didn't have a chance to check it on a clean machine.

1.11 Features and fixes:

  • State sets support added
  • "projectname" keyword added which resolves to project's folder name
  • other fixes and improvements

1.10.3b Fixes:

  • Crash when vray ir/lcache maps are set to auto-save
  • Region render was not set properly during the rendering

This is major update of the script, so it may not be as stable as before. Backup scenes or cameras at least before running this version. More information can be found here - 1.10b Multiple presets for each camera

Previous updates:

1.10.2b Fixes:

  • Problems with render elements paths
  • Copy/paste of render region settings
  • Properly convert render region values when change resolution

New features:

  • Multiple presets for each camera
  • New keyword %presetname% to support multiple presets
  • Distributed rendering checkbox added to vray common settings
  • Bugfix - Net render not starting after cancelling during local rendering.
  • Improved performance with scenes with lots of cameras
  • Added support of Vray RT as a production renderer
  • Added support of using MFRender script to render scenes through BatchCamera script.
  • Bugfix - Error was popping up sometimes during drag-n-drop
  • Bugfix - Render elements didn't render in certain conditions
  • Bugfix - Pre-render/post-render scripts didn't work on network rendering
  • Bugfix - Select All and Toggle All buttons didn't work properly

Here are some details:

Script's website -

Github -

2015 Updates

  • Region render parameter can be specified for each camera
  • Set Viewport button sets viewport camera and resolution and aspect as well
  • It is possible now to specify backburner servers and server groups for silent rendering submit (code editing required)
  • Vray Elements fixed for Vray 3 and Vray output saving with VFB color correction
  • Cancelling of rendering of multiple cameras at once,
  • Hierarchical ini files

2013 Updates

  • 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
  • Keyword syntax can be used in Scene State names - thanks to Stefan Runevik for suggestion

2011 Updates

  • Preview button added - renders only current frame without saving anything - no images, no vray maps, no scripts running, no elements.
  • Ortho mode added to Vray rollout - it turns any camera to orthographic, including Vray Physical camera.
  • 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.
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-202x
batchcamerarender_1.16.ms245.73 KB
batchcamerarender_1.17.ms245.88 KB


Comment viewing options

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

Wow that was fast. Thanks

Wow that was fast. Thanks for being awesome!

I'd be happy to take a look at the bugfix - pm sent!

sergo's picture

In current version enabling

In current version enabling Render Elements checkbox causes saving separate files in any case. I've made some tests with exr and with vrimg, and in my case both files contain extra channels, along with the separate files unless you've unchecked Render Elements checkbox.
Your message helped to find some bugs, also I've changed file type of the render elements to main file type. I've added new checkbox to enable/disable saving separate channel files with vray, so now you can render just vray raw file with extra channels.
I would like to send you this bugfix release for testing, before posting it here, could you give me your email?

ANDDNA's picture

Fantastic script! This saved

Fantastic script! This saved my a$$ since the max 2010 / backburner file incrementing bug has yet to be fixed. I know there's a workaround but it didn't work for me...

Here's something I've found with regard to rendering V-Ray raw images.

When I render using the standard Render Setup>V-Ray tab and check the 'raw image file' box I can browse and specify where the .exr will be saved, and any elements I have selected on the Render Elements tab will be saved WITHIN that one .exr file - not a bunch of different element files.

I have not been able to reproduce this with your script - the settings are a little confusing, or maybe I'm just not setting things up correctly, or both.

I read above that I need to uncheck 'Save File' under Main Output if I want the V-Ray raw .exr file only.

>> I set the path for output using the '...' button in the field below 'Filename'. Then if I don't check 'Enable Elements' the .exr file doesn't store any extra elements. Checking 'Enable Elements' and setting a path within that section creates a separate .exr file for each render element. I want just one output file.

Am I doing something wrong here?  Does .vrimg work properly in this regard?


sergo's picture

Thank you oompa_l! I've

Thank you oompa_l!

I've uploaded new version with vray elements fixed. Script works well under x64 bit Windows and with max 2009 and 2010.

I don't use render elements much, just made some tests. So you need to make some tests before using script in production. Try it and let me know how it works.

my scripts and tips/tricks:

oompa_l's picture

sergo, your script is a HUGE

sergo, your script is a HUGE lifesaver. thank you a hundred times over.

is there anything I need to be aware of using it with 2009 x64? I noticed that ppl were having trouble with it, but then you specify that this version is is it ok?

i need all the render elements working with my vray, is there anything I need to know about using this setup?

sergo's picture

Hi piftas! Scene states is

Hi piftas!

Scene states is a 3ds max's feature, not script's. You have to read 3ds max's manual to understands how it works. In two words - scene state lets you remember named states of scene, state of materials, objects hide/unhide state and so on. In Batch Camera Render  you can assign certain scene state to each rendered camera.
So using BatchCameraScript with predefined scene state you can specify which object will be rendered.

my scripts and tips/tricks:

pifitas's picture

Hi again sergo I tried to

Hi again sergo

I tried to use scene states, but I didn't understand how it works, also searched on your web page, but nothing :( can you explain more about this feature please?

Maybe you're right when you said FORCE TO HIDE / UNHIDE objects will make script bit slow, so what about FORCE TO RENDER / DON'T RENDER certain objets, instead of hiding them?

Thank you!

sergo's picture

What you think about scene

What you think about scene states as a method to hide/unhide objects for different cameras?

I've never tried but I think hide/unhide objects will make script little bit slow... Don't know, have to try...

my scripts and tips/tricks:

pifitas's picture

Thanks for keyword tips

Thanks for keyword tips Sergey, I've never used them

And what about FORCE TO HIDE / UNHIDE OBJETS Feature?

I would like to suggest votation for VR and VRL maps


gfa2's picture

+1 for Save and Load

+1 for Save and Load Irradiance and Lightcache maps. Awesome script!

Comment viewing options

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