This project is an Epitech school project made with the collaboration of 4 second year students:
The Raytracer project is, well... A raytracer !
It aims to be as modular as possible to allow easy addition / upgrade of different features that composes it.
You can take a look at the newcomers documentation we wrote which explains why we took certain decisions and how to add your own models, lights, materials, ...
The raytracer also features a fully scipted scene manager using libconfig++ file format and C++ library.
You can find the documentation under the doc folder located at the root of the repository.
This project uses a modified version of Google's coding style and is verified by using the tool cpplint. Thus it must be installed beforehand if you want to check if your code complies with the coding style.
A .clang-format is present to format all .cpp and .hpp files to our specified coding style. It is possible to auto-format all files by using the format Makefile rule.
The following rules are ommited when checking the style with the linter Makefile rule:
legal/copyright| We're students we don't need no copyright notice on our code...build/c++17| We use C++20build/c++11| Same reasonruntime/references| This disables forced const referencesbuild/include_subdir| Straight up annoying
Warning
TODO