Features

Stable Features

Rendering

  • Fully spectral rendering pipeline (31 equidistant channels in the 400-700nm range, configurable at compile-time)
  • Distribution ray tracing
  • Backward path tracing with or without next event estimation (explicit direct lighting)
  • Forward path tracing (light tracing) with or without next event estimation
  • Progressive, interactive rendering (show me)
  • Multiple sampling frameworks available, configurable at compile-time:
    • Pure Monte Carlo sampling (unbiased)
    • Fully deterministic, low discrepancy sampling (consistent)
  • Multiple importance sampling
  • Camera motion blur with arbitrarily many transforms
  • Render layers
  • Ability to use arbitrarily large textures in constant memory budget (user-settable at runtime)
  • Fully automatic, transparent color space conversions at runtime
  • Fully automatic, transparent gamma / inverse-gamma correction of textures and output frames
  • Highly scalable multithreaded rendering

Modeling

  • Pinhole camera
  • Thin-lens camera (depth of field)
  • Perfectly diffuse, perfectly specular, Ashikhmin-Shirley and Kelemen BRDF
  • Perfectly specular BTDF with Fresnel reflection (show me)
  • Perfectly diffuse EDF
  • Support for CIE XYZ, linear RGB, sRGB and spectral color spaces
  • Mesh lights (any geometry can emit light)
  • Image-based lighting, with importance sampling of latitude-longitude maps
  • Support for geometry instancing (with per-instance materials)
  • Support for non-physical surface shaders, and for mixing them with BSDF and EDF-based rendering
  • Possibility to add cameras, BSDF, EDF, lights, shaders without touching the core

Input/Output

  • Supported image formats: PNG, OpenEXR.
  • Supported geometry formats: Wavefront OBJ, Alembic

Infrastructure

  • XML project and settings files, validated at runtime via XML Schema, using industrial-strength Apache Xerces-C parser & validator
  • Clean, modern, portable C++ code with extreme emphasis on correctness, speed and readability
  • 950+ unit tests, using a modern C++ unit testing framework (show me)
  • Fully automatic, highly stable and cycle-accurate unit benchmarking framework with automatic historization and visualization of performance history
  • CMake-based build system
  • Fully cross-platform, available on 32-bit and 64-bit variants of Mac OS X, Windows, Linux...

Applications

  • Command-line interface with optional coloring (show me)
  • Qt-based GUI application for interactive rendering and scene composition (show me)
  • Experimental Blender-to-appleseed translator (Blenderseed)
  • Maya-to-appleseed translator (Mayaseed)

Experimental Features

  • Support for geometry that doesn't fit in memory
  • Fast voxel-based ambient occlusion
  • Fast voxel-based volumetric smoke shader