**Bella CLI**
[Bella for Rhino](../bella_rhino/index.html) |
[Bella for Maya](../bella_maya/index.html) |
[Bella for SketchUp](../bella_sketchup/index.html) |
[Bella GUI](../bella_gui/index.html) |
[Bella CLI](../bella_cli/index.html) |
[Bella Core](../bella/index.html) |
[Tutorials](../../tutorials) |
[Node Definitions](../nodes/index.html) |
[Main site](https://bellarender.com) |
[Discord](https://discord.gg/AaQtpWt5aT)
Overview
===================================================================================================
Bella CLI is a command-line application for automating the rendering of Bella scenes, and may
therefore be used to create a render farm.
![](cli.png)
## Scope
This document pertains specifically to the Bella CLI, and does not cover general Bella concepts,
for which you should refer to the [core Bella](../bella/index.html) and [node definition](../nodes/index.html)
documentation.
Installation
===================================================================================================
To install Bella CLI, download the package appropriate for you operating system (.zip for Windows,
.dmg for MacOS, .tar.gz for linux) and follow these steps:
## Windows
- Unzip the downloaded .zip file on your desktop.
- Double-click on the installer .exe file and follow the directions.
## MacOS
- Double-click the downloaded .dmg to mount it.
- Drag bella_cli.app to the Applications folder.
## linux
- Untar the downloaded .tar.gz file.
- bella_cli is ready to run.
Arguments
===================================================================================================
Following is a listing of currently-supported Bella CLI arguments. You can always print this in the
console by using `bella_cli --help`.
## Listing
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SHELL
C:\Program Files\Diffuse Logic\Bella CLI 23.4.0>bella_cli -h
Bella CLI 23.6.0.0, Copyright (c) 2023, Diffuse Logic
USAGE
bella_cli [-i:path] [-o:path] [-v|-h|-i|-o|-mi|-li|-tp|-vo|-hg|-sc|-bm|-se|-gl|-vk|-vi|-pf|-res|-od|-on|-fbd|-fbn|-rtt|-tta|-tts|-m|-fo|-fm|-ln|-qa]
OPTIONS
version
-v [ --version ]
/v [ /version ]
NOTES: Print application version to the console.
help
-h [ --help ]
/h [ /help ]
/?
NOTES: Print this help text.
input
-i:
Cooperative Rendering
===================================================================================================
The Atlas solver can be used to render on multiple machines. Each rendering process produces a
BSI file, which can be merged with other BSI files using the Bella CLI.
## Setup
1. Let's say we have a file named *cooperative.bsx* that we want to render on multiple machines -- let's first make sure the Beauty Pass is set up to save a BSI file while rendering:
![](save-bsi.png)
2. Next, save the file as *cooperative.bsz* to include its resources, and ensure that we cannot inadvertently modify the file, as it will be needed later in the process.
## Rendering
3. Next, we copy *cooperative.bsz* to our various machines and render it, which produces a *cooperative.bsi* file on each machine.
4. Once finished rendering, we will copy all of our BSI files into a directory and use Bella CLI to merge them. I will name mine *cooperative-0.bsi*, *cooperative-1.bsi*, and *cooperative-2.bsi*:
![](bsi-files.png)
## Merging
5. Now we will use Bella CLI to merge the BSI files into a final *cooperative.bsi* file; we can use a simple batch file like this:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SHELL
@echo off
set PATH=%PATH%;c:/program files/diffuse logic/bella cli 23.4.0
bella_cli.exe --merge --output:cooperative.bsi ^
cooperative-0.bsi ^
cooperative-1.bsi ^
cooperative-2.bsi
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Running this batch file produces the output:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SHELL
D:\cooperative>merge.bat
[INFO] Loading D:\cooperative\cooperative-0.bsi
[INFO] Loading D:\cooperative\cooperative-1.bsi
[INFO] Loading D:\cooperative\cooperative-2.bsi
[INFO] BSIs merged to D:\models\cooperative\cooperative.bsi
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
And we see our output *cooperative.bsi* file has been written in the directory:
![](merged.png)
## Resuming
6. Now, we can open *cooperative.bsz* in Bella GUI and click Render to resume rendering our merged *cooperative.bsi* file:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SHELL
============================ OPEN: cooperative.bsz ============================
[INFO][07:43:55] Open: D:\cooperative\cooperative.bsz
[INFO][07:43:55] File successfully opened in 285.815ms [7653059290190196109].
[INFO][07:45:02] Preparing to render scene [7653059290190196109].
[INFO][07:45:03] Resume BSI: D:\cooperative\cooperative.bsi [60 7653059290190196109]
[INFO][07:45:03] Started: beautyPass [solver: Atlas]
[INFO][07:45:10] Saved PNG: D:\cooperative\cooperative.png [8-bit PNG, sRGB, 1280 x 1280]
[INFO][07:45:15] Saved BSI: D:\cooperative\cooperative.bsi [81 7653059290190196109]
[INFO][07:45:15] Stopped: beautyPass
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
As usual, we are now free to make adjustments to exposure, enable the denoiser, apply different tonemappings, save different versions of our image, and so forth.