Jobs

Job is a scenario consisting of one or more tasks which render the same scene using custom settings. This allows you, for instance, define a turntable animation: each task represents a single frame with specific camera position, rendering the same object from various angles.

Tasks may contains scripts that can make more complex customizations, like changing textures and so on.

Job File Format

Each job file is a plain xml file having the following structure:

<boxshot-job version="1" name="some job" scene="/path/to/scene.boxshot">
    <task name="task 1" width="..." height="..." 
          draft="..." renderer="..." output="/path/to/folder/file.png">
        <camera rotation-h="..." rotation-v="..." 
                center-x="..." center-y="..." center-z="..." 
                distance="..." aspect="..." fov="..."/>
        <script>
        <![CDATA[
                scene.root.children[0].visible = false;
        ]]>
        </script>
    </task>
    <task .....>
        ...
    </task>
</boxshot-job>

The root tag “boxshot-job” defines job file version, its name and a path to the scene. You can leave the scene attribute empty if you generate the whole scene using scripts.

The children “task” tags define rendering tasks. Each task has name, width, height, draft and output fields that are pretty straightforward. You may provide just width or height, or even none of them if you’d like to use default values from the scene. One more attribute is “renderer”, which defines a rendering engine to use for the task. Use “renderer.builtin.raytracer” here, as it is the only one currently supported.

Each task node may have a child node “camera” which controls camera’s parameters. The attribute names are self-descriptive, just put the right values there.

Finally, you can add a “script” node with CDATA block where you may provide some scripting commands to customize the scene. Please note that Boxshot reloads the scene after each task that has script commands, so the changes are not preserved between tasks.

Job files need to have “boxshotJob” extension. Then you may run them by double-clicking, pass as a parameter to Boxshot executable or drag them to the application icon in OS X dock. Boxshot will show the Job Manager window where you can start the job.