-
Notifications
You must be signed in to change notification settings - Fork 2
Version 2
Here is an overview of RenderToolbox3, version 2.
Version 2 was released on 20 June 2014. Existing recipe scripts should still work with version 2, possibly with minor changes. It fixes various bugs and adds some miscellaneous features. It changes the folder structure for recipe input and output files (for the better!).
Version 2 also adds a major new feature, the Recipe API.
Version 2.1 was released on 1 August 2014. It contains several small fixes and no major changes.
The Recipe API is a new set of functions that facilitate working with recipes. They organize all recipe data in a single struct. They allow the recipe struct and resource file to be packed up in a zip archive and unpacked later, even on a new machine. They also automatically keep track of progress and errors in recipe log.
The Recipe API is optional, so existing examples should still work.
See more about the Recipe API.
Version 2 changes the way recipes organize input resources and output data files. This applies to existing recipes as well as new recipes that use the Recipe API.
Previously, RenderToolbox3 had separate configuration for three different folders: tempFolder
, outputData
and outputImage
. Having these three configured separately made it hard to use relative paths inside generated scene files, making the scene files bound to the machine they were created on. There also was no good place for recipes to put input resources, like spectrum files and texture images.
In version 2, each recipe uses a single workingFolder
. resources
, scenes
, renderings
, images
, and temp
folders are created automatically inside the workingFolder
. This allows recipes to work with a consistent set of folders for inputs and outputs, all relative to the workingFolder
.
See more about the Input and Output Files.
Version 2 also adds several miscellaneous features.
Recipes can turn on and off progress indicators that renderers print in the command window, using the new isCaptureCommandResults
hint.
When hints.isCaptureCommandResults
is false, renderers like PBRT and Mitsuba will be able to print progress indicators to the Matlab Command Window, as they render. This can be useful during long rendering jobs. However, this prevents RenderToolbox3 from saving the renderer outputs in rendered data files.
When hints.isCaptureCommandResults
is true, RenderToolbox3 captures renderer outputs and saves it inside data files, just like it has in the past.
RenderToolbox3 now reads Collada author information tags and displays the author info during batch processing. It also automatically appends the author info to the native scene descriptions produced by renderers. This should be useful for debugging and documentation.
Recent versions of Blender export spatial transformations in Collada files using all-in-one 4x4 transform matrices. Previously, Blender exported separate transformations for translation, rotation, and scale. RenderTooolbox3 Version 2 now supports the 4x4 transformations.
Note that the 4x4 transformations broke some example mappings files, which expected to modify translation, rotation, and scale separately. See DiceTransformations for more.
Version 2 also fixes various bugs.
We executed all of the RenderToolbox3 example recipes and compared the output to Reference Renderings generated from version 1.1. The comparisons were generally close.
For future reference, here is a summary figure for the comparisons, generated using the CompareAllExampleScenes()
utility. We consider correlations and pixel errors of these magnitudes to be "good".