An offline ray tracing-based renderer for fun
Aurora, is a learning-oriented rendering system in the style of PBRT. Hence, this project were mostly ported from pbrt-v3 with much customization and adjustment out of personal habits. I plan to develop this project as a long-term project in my personal spare time. Learning by doing!
This project is built with following third parties.
- GLM for fast algebra and math calculation
- stb_image for image I/O
- glog for logging and debuging
- nlohmann_json for parsing json file of the scene
I build this project on Windows platform. Please make sure your system is equipped with the following softwares.
- cmake:at least version 3.5
- Microsoft visual studio 2017 or 2019
Please compile the project for x64 platform.
-
Clone the repo
git clone --recurse-submodules https://github.com/ZeusYang/Aurora.git
-
Use cmake to build the project:
mkdir build cd build cmake .. make
or using cmake-gui is ok.
Please make sure that clone the reposity with --recurse-submodules
option. If you foget to run git clone
with it, just type the command git submodule update --init --recursive
.
After successful compilation, run Aurora.exe --help
in the command line could get the follwoing prompt:
usage: Aurora [<options>] <filename.json...>
Rendering options:
--help Print this help text.
Logging options:
--logdir <dir> Specify directory that log files should be written to.
Default: system temp directory (e.g. $TMPDIR or /tmp).
--logtostderr Print all logging messages to stderr.
--minloglevel <num> Log messages at or above this level (0 -> INFO,
1 -> WARNING, 2 -> ERROR, 3-> FATAL). Default: 0.
--v <verbosity> Set VLOG verbosity.
For example, in order to set the scenes/cornellBox.json
as an input scene file, you should type the command as shown below:
Aurora.exe ./scenes/cornellBox.json
More features and scenes are planned.
Distributed under the MIT License. See LICENSE
for more information.