Elixir is a cross-platform raytracing renderer written in C++, meant to be used as a standalone program or alongside 3D packages such as Blender and Cauldron as a renderer plugin.
Inspired by previous works such as PBRT and SORT, Elixir is physically based and implements similar features such as different integrators (witted, path tracing), special acceleration structures, and various BXDFs. The project is still very early in its development stages.
Elixir is open-sourced, licensed under the GNU General Public License v3.
Note: Elixir is currently a WIP and is considered unstable. Proceed with caution at your own risk.
Elixir uses CMake to build it's binaries. If you would like to build Elixir yourselves, run the following CMake commands to generate project files and compile with your favourite C++ compiler.
$ cmake -B build -S . -DCMAKE_CONFIGURATION_TYPES:STRING="Debug;Release;" -DCMAKE_BUILD_TYPE=Release
$ cmake --build ./build/
This will generate OS specific project in the /build/
folder, and will build the Elixir binaries into /bin/
.
Elixir currently only supports .obj inputs. A .obj model can be rendered by running Elixir in the command line.
$ elixir model.obj
Some settings such as the number of threads to use can also be configured. These options will be listed by running Elixir with --help.