A Monte Carlo Path Tracer.
Ray Tracing in One Weekend - The Book Series
See Render Results Here: Gallery
- fmt: A modern formatting library.
- stb: stb single-file public domain libraries for C/C++.
- tinyxml2: TinyXML2 is a simple, small, efficient, C++ XML parser that can be easily integrated into other programs.
- tinyobjloader: Tiny but powerful single file wavefront obj loader
- eigen: Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms.
- All Direction/Normal Vectors Are Unit Vectors. No Need To Normalize Them Before Using But Need To Normalize Them After Creating.
Clone The Repository With Submodules.
git clone --recurse-submodules -j8 https://github.com/AliceRemake/PathTracer
mkdir build && cd build
cmake .. -G"MinGW Makefiles" -DCMAKE_BUILD_TYPE="Release"
mingw32-make -j30
If Your Visual Studio Installed With CMake Component, Just Open The Project In Visual Studio.
mkdir build && cd build
cmake ..
After Generate, Double-Click The Solution File With Extension .sln
And Build The Target ALL_BUILD