Indigo Renderer Manual
Indigo is a stand-alone application. Indigo renders one image at a time, reading the scene description from an xml file, and writing the resulting
image as a PNG file in the 'renders' directory.
Indigo can be used in conjunction with a 3d-modelling package such as 3dsMax by using one of the exporters being coded by various people.
The process in this case is
- model scene in the 3d modelling package.
- Use exporter script to export .3ds models and scene xml file to some directory.
- Start indigo, specifying the path to the scene file to render.
Alternatively, the scene file can be hand-edited.
Scene File Format
Scene file format
Specifying the scene to render
By default, the 'scenefilepath' setting in the file 'inifile.txt' defines the scene that will be loaded,
e.g. the line
means that the file 'scene.xml' will be loaded.
The scene path can also be passed as an argument to indigo, e.g. if you are starting indigo from the windows shell, you can
enter something like
As a consequence of the unbiased nature of Indigo, the render will gradually converge over time to the correct solution.
The longer you leave the render, the less noise will remain in the image. Indigo can be left to render a given scene
for an arbitrary amount of time, and will never terminate by itself. Simply close Indigo when you are satisfied with the render
(or you don't want to wait any longer). NOTE: you might want to save a copy of the output render before you close Indigo,
in case you kill it half way through saving the image.
Indigo supports distributed rendering over a TCP/IP network. One Indigo process is started as a network master. Mutiple
Indigo processes (usually on other boxes) are then started as network slaves. The network slaves work on their own local
version of the render, and periodically upload their buffer to the network master, where they are combined into the
master render and saved to disk in the 'renders' directory as per usual.
The steps to run a network render are as follows:
Choose a scene to render, eg. somescene.xml.
Start the network master process like this:
indigo.exe somescene.xml -n m
The -n m switch tells the process to run as a network master
On another box, start a network slave process like this:
indigo.exe somescene.xml -n s -h lust:7777
The -n s switch runs indigo in network slave mode.
The -h lust:7777 switch tells the slave to connect to the network master running on the host 'lust' on port 7777 (the indigo port)
You should of course substitute the host name running the network master for 'lust'.
Synchronising the scene file
In the above network rendering example, the file 'somescene.xml' needs to be present on all boxes, so that all the slaves and
the master can load it. This can cause problems if the scene is changed on one box but not others. One way to ensure
that all Indigo processes are working on the same scene is to place the scene in a windows share. Then the master would
be started like this, and analogously for the slaves.
indigo.exe \\lust\sceneshare\somescene.xml -n m
Indigo was created by Nicholas Chapman. Contact: email@example.com