- Cleaner build system organization (1 SConscript file per directory instead
of a single huge file)
- Robustness improvements to the KD-tree construction code (now does a better
job at handling degenerate triangles)
- Switched to an epsilon-free KD-tree traversal loop using Havran's T_{AB}^rec
algorithm
- Generalization of the KD-tree construction code (now supports plugging in
arbitrary tree construction heuristics)
- Addition of some utility code (LRU cache, adaptive Gauss-Lobatto
quadrature, etc.)
- Generic dense matrix class that supports arbitrary dimensions
- Pixel traversal within image blocks now uses a space-filling curve
ordering
- Added support for several noise functions from PBRT
- Cleanups of various top-level interfaces (Luminaires, Phase functions,
BSDFs, Participating media, etc.)
- Robustness improvements to the participating media code (faster + now
does a better job at dielectric boundaries)
- Added a basic tonemapping utility (can be invoked via mtsutil)
- primitive clipping is now more paranoid about roundoff errors
- significantly improved the kd-tree benchmark "kdbench"
- fixed a parallelization-related bug in the kd-tree builder
- fixed some remaining floating point issues in the min-max binning code
- completely moved TriMesh over to a more compact SoA representation
- the OpenGL renderer now sends smaller packets of geometry to the GPU, which
helps keep the operating system more responsive (NVidia drivers didn't like
the previous behavior much).
- Switched vectors classes to templates
- Moved most path handling over to boost_filesystem
- Nicer include file structure
- Better documentation for libcore
- Doxygen support
- Vector/Point/etc. data structures are now unitialized by default!
* constant.cpp, src/libhw/vpl.cpp: Support for image environment
sources and spot lights in the real-time preview.
* mitsuba.cpp: Ability to run the 'mitsuba' execubable in arbitrary
locations on OSX while ensuring that it still finds all plugins etc.
* mtsimport: COLLADA importer support for ambient lights and 'polylist' meshes.
* scene.cpp: Create a default camera when none is specified in the XML file.
* constant.cpp, src/libhw/vpl.cpp: Support for rendering constant environment
sources in the real-time preview.
* glwidget.cpp, mainwindow.cpp: Support for Drag & Drop
* glwidget.cpp, mainwindow.cpp: The Mitsuba user interface now also
doubles as an EXR viewer / tonemapper. Drag an EXR file onto the
UI or open it using the File menu, and the image opens in a new
tab. Afterwards, it is possible to export the image as a tonemapped
8-bit PNG image.