Batch Camera Render

270 votes
Version: 
1.16
Date Updated: 
11/27/2019
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.

1.16:

  • CoronaSun supported inside Daylight System

1.15:

  • 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: http://usakhelo.github.io/batchcam/batchcam-1.9.20.html

Script's website - http://usakhelo.github.io/batchcam/

Github - https://github.com/usakhelo/batchcam

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: 

Installation:

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.

Usage:

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-2019
AttachmentSize
batchcamerarender_1.15.ms245.66 KB
batchcamerarender_1.16.ms245.73 KB

Comments

Comment viewing options

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

Deadline Priority Setting

Thanks for the script, Sergo. Would it be possible to include Deadline priority setting and preview frame options into the Deadline section of the script?

simplychenable's picture

Deadline Priority Setting

Thanks for the script, Sergo. Would it be possible to include Deadline priority setting and preview frame options into the Deadline section of the script?

Managing Scene States.'s picture

tyPreview integration

tyPreview batch would be fantastic

Managing Scene States.'s picture

tyPreview integration

tyPreview batch would be fantastic

sergo's picture

Find the script in customize window

Hi Kheng,
When you run this script for the first time it silently installs itself to your %localappdata% folder. After that you simply go to Customize->User Interface->Toolbars and find it in the Sergo Pogosyan category.
From there you can add that command to your toolbar, quadmenu or assign a shortcut and it will run normally.

So you don't need to copy this script to your 3ds max folder. Just run it from any location and then find it in the Customize window.

Hope this helps,
Sergo.

Kheng's picture

Script not working at Home

Hi Sergo,

I have this script running perfectly fine in the office but at home I cannot seem to get it to run. When i go run script nothing happens (it does seem to pause for a few seconds with no resukts), no error nothing even if i try assign it to a hotkey or quad menu item. Is there any dependency i need to run it?

I have copied it into my /program files/autodesk/3d studio max 2021/scripts folder

I am running both max 2021 at home and at office

EDIT:
When i assign it to a quad menu item it shows a Tick that it is running but no window is shown. have attached a screenshot.
I have also tried running 1.15 which does not seem to work either

*UPDATE*
So i deleted all the ini files and batchcam and ran the 3dsmax to try reinstall and it just worked without even the script file there! weird. Anyway case closed thankyou

AttachmentSize
batchcam.jpg 4.39 KB
batchcam2.jpg 100.07 KB
locb's picture

Thanks for the answer

Thanks for the answer, knowing about this feature I will use either copies of cameras in one place, tying them to each other or tying the necessary parameters through wire parametrs

sergo's picture

Unfortunately no fix for instanced camera issue right now

Hi locb
Unfortunately that is how the script works right now. I don't see how it can be fixed for camera instances.
If you are interested in technical details this is what's happening: Additional camera presets are store on the special object called CustomAttribute. When you add CustomAttribute to the instance, all the instances basically share the same custom object. That's why you see multiple additional items, but it's actually the same custom attribute that all the instances share.

It's annoying I agree. I will keep that issue in mind and I'll fix it if I find the solution.

locb's picture

Unfortunately, the problem

Unfortunately, the problem was repeated in max 2016, physical camera.
When I create a camera, then make its instance copy 2 times, then when I click add I get 2 copies of the last copied.
But when copying without instance everything works as it should.
https://pastenow.ru/C1HYR (screen of batchrender window)
Maybe it can be fixed?

locb's picture

Exactly. In the 5-camera

Exactly.
In the 5-camera scene, all the instances.
In the script, you can see all of them.
But when I try to make a duplicate of all cameras, instead of 5 duplicates of each camera I get five duplicates of one of them.
In a clean scene I have the same.
An earlier version of the script behaves the same way.
Maybe the reason for my version I will try to remove ENU and maybe this will help.

Comment viewing options

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