Batch It!
This documentation details all of the addon's functionality step by step:
Installation
To install the addon, simply download it, then in Blender's preferences, in the "Add-ons" tab, hit "install". Navigate to the file (either the .zip or the .py) and click "Install add-on".
You can then enable the add-on from the list:
Functionnality details
Batch it! : Launch render.
Preview render list: Show preview list of all file names that will be generated.
Total combinations: Total number of images or animations that will be rendered.
Export path: Images will be saved to this location. All batch renders are placed in a date folder to allow quick iterating without chaning this location.
Repeat: The batch render will be repeated by this amount. This is only useful when using randomization, to generate more random variations.
Progress is written to the console :
On windows, the console can be toggled through the 'Window' menu:
Batch cameras: When enabled, the addon will process any renders for each camera in succession.
+ : add a camera from a list of all of the scene camera's that are not yet added.
- : Remove the currently selected camera from list.
< : If a valid camera is seleccted in the outliner, adds it to the list.
Extras:
Add all cameras: Adds all the cameras of the scene in the list.
Remove all: Clears the list.
Remove invalid: Removes all cameras that may have been moved or deleted from the scene. Invalid cameras will appear greyed out.
Camera randomization: When enabled, will randomize selected settings from the camera:
Randomize resolution: Will randomize the x and y resolution of the render.
Xmin,max, Ymin,max: Range of the randomization.
Randomize focal length: Will randomize the focal length of the camera.
Min, Max focal length: Range of the randomization.
Add random location: Will add a random world location to the camera's position.
Random offset min, max: Range of the random offset.
Add random rotation: Will add a random world rotation to the camera's rotation, in degrees.
Random ro offset min, max: Range of the random offset.
Scene randomization: When enabled, will randomize selected settings from the scene.
Randomize frame: When enabled, will pick a frame to render at random.
This is disabled when rendering animations.
It can be used for example, to render a random pose from a rig, if a different pose has been set for each frame.
Random frame min, max: Random frame range.
Random driver 1 and 2: These numeric values are not bound to anything, but can be randomized and used through drivers.
See How to set a driver below.
Random vector driver: This vector value is not bound to anything, but can be randomized and used through drivers.
See How to set a driver below.
How to set a driver
A driver will connect two properties of your scene, such that editing the "driving" value will update properties that are "driven" by this value.
Before adding a driver, right click on the property that will be driving the value and select "Copy Data Path". In this case, we will be using the Driver 1 value from the addon to randomize the Factor from a Mix Node.
Right-clicking on almost any property in Blender will allow to add a driver through the "Add Driver" option.
In this case it is the "Factor" value from our mix node:
Once the driver is added, the driver edition window opens.
Remove the default variable, as it links to an object, but our driver values are registered in the scene.
Then, add a new input Variable with "Add Input Variable".
Then, select the scene ID Type, and select your scene.
Paste the data path in the "path" field. That's it! our values are linked.
Make sure the expression is "var" and not the default "var + 0.5".
In this case, our Factor value can only be between 0 and 1, so we make sure the range is set correctly in driver 1:
As long as "Random Driver 1" is enabled, our Mix value will be randomized each render!
This applies to almost any property in Blender.
Render Groups: Render groups are groups of collections that can be rendered in batch.
If several render groups are present, all combinations will be rendered, Such as here:
LightingB_GlassesOld
LightingB_GlassesReading
LightingA_GlassesOld
LightingA_GlassesReading
LightingC_GlassesOld
LightingC_GlassesReading
Add Render Group: Add an empty group of collections.
+: Adds a collection from a drop down list of all collections in the scene not yet in the render group.
<: Add currently selected collection from outliner to the group, if not yet in the group.
- : Remove selected collection from the group.
x : Delete render group.
Note: you can add empty collections to render group to create a variation, such as "No glasses".
Advanced Settings: Groups all settings from the addon.
Render mode: Choose between "Still image" and "Animation".
All other render settings such as save format etc. will use the default Blender render settings.
Randomize camera for each render: When this is false, the camera will be randomized only when switching. If true, camera will be randomized for each render.
For example, if using cameras in combinations with render groups:
Cam1_GlassesOld
Cam1_GlassesReading
Cam2_GlassesOld
Cam2_GlassesReading
If False, Cam1_GlassesOld and Cam1_GlassesReading will have the same randomized camera.
If True, the camera will be randomized between those two renders.
Confirm before big render: If true, will show a confirmation window before rendering more images than specified in one go.
Big render threshold: Value above which a confirmation window will be shown.
Repeat format: Sub folder or Prefix.
Sub folder format:
Repeat1/Cam1_Glasses
Repeat2/Cam1_Glasses
Prefix format:
Repeat1_Cam1_Glasses
Repeat2_Cam1_Glasses
Filename style: Full, Compact or Number.
Compact file format will reduce all name to 3 consonants.
Camera_LightingA will become Cmr_Lgh
Ending numbers are conserved such as:
Camera1_Lighting1 will becomre Cmr1_Lgh1
Beware that duplicates are not handled, such as:
Camera_Lighting becomes Cmr_Lgh
Camera_Light becomes Cmr_Lgh as well, and will overwrite the file.
Number padding: when using Number file style, a padding of 4 will name files accordingly: 0000.png, 0001.png, etc.
Remove underscores from objet names: Remove underscores from cameras and collection names to improve file name readability and parsing.
Camera_01_New_Glasses becomes Camera01_NewGlasses
Remove spaces from objet names: Remove spaces from cameras and collection names to improve file name readability and parsing.
Camera 01_New glasses becomes Camera01_Newglasses
Replace . by _ in paths: Blender uses a defaut "." for naming such as Camera.001. This can cause problems when parsing files.
Camera.001_NewGlasses becomes Camera_001_NewGlasses
Write metadata: If true, uses the "Notes" field from Blender's metadata to store render info.
Burn into image: Write metadata to image as pixels in top left corner.
Active camera: Write active camera into metadata.
Active collections: Write active collections into metedata.