About ubiquaque

ubiquaque is a work in progress. See below for a list of the current features:

Design

  • Runs on Linux (32/64-bit), MacOS X (x86/x86_64/PPC) and Microsoft Windows (32/64-bit).
  • Written in portable C++ with optional SSE2 optimizations when compiled for the i386 and x86_64 platforms.
  • Extensible modular architecture inspired by PBRT.
  • Supports the COLLADA asset exchange format.
  • Comes with a suite of numerical testcases, which compare rendered output against analytic results.
  • Supports interactive walkthroughs using real-time coherent ray tracing.

Parallelization & Cluster support

  • Fully parallelized for multi-core operation.
  • Built on a scalable parallel computation layer, which transparently distributes work over a cluster without the need for a shared filesystem.
  • For convenience when working from home, ubiquaque can also SSH into a cluster, remotely launch itself and communicate through the encrypted link.
  • Supports clusters based on the PBS job submission system.

Integrators

Other features

  • O(n log n) SAH kd-tree compiler with primitive clipping support, uses Havran's fast traversal algorithm.
  • Highly optimized SSE2 intersection code for triangle meshes. Other analytic shapes such as spheres and cylinders are also supported.
  • High dynamic-range (OpenEXR) support for textures and generated images
  • Supports homogeneous and heterogeneous participating media
  • Supports arbitrary image reconstruction filters such as Mitchell-Netravali, Catmull-Rom, Gaussian, Lanczos-Sinc, etc.
  • Spectral rendering, black body radiation & dispersion
  • HDR Image based lighting
  • Other light sources: area and point lights, collimated beam source.
  • Fully deterministic Quasi-Monte Carlo sampling
  • Adaptive/error-estimating sampling
  • Depth of field

Materials

  • BSDFs: Lambertian, Perfect Mirror, Phong, Dielectric, Anisotropic Ward, Microfacet BRDF, Rough Glass
  • Implements Jensen's dipole approximation to subsurface scattering

ubiquaque [lat: everywhere] is a physically based renderer written in portable C++. It implements unbiased as well as biased rendering techniques and contains heavy optimizations targeted towards current processor architectures.