A high-performance ray tracing renderer written in C++.
This project implements a ray tracer, a rendering algorithm that simulates the way light interacts with objects to generate realistic images. It leverages C++ for efficient computation and CMake for build automation.
- Written in modern C++
- Supports rendering of scenes with multiple geometric primitives
- Configurable camera, lighting, and material properties
- Modular and extensible design for adding new features
- Cross-platform build support using CMake
- C++ compiler (supporting C++11 or newer)
- CMake (3.10+ recommended)
- feh (command line image viewer)
-
Clone the repository:
git clone https://github.com/ramzanbhutto/Ray-Tracer.git cd Ray-Tracer -
Create a build directory and run CMake:
mkdir build cd build cmake .. make -
Run the ray tracer:
./rayTracer > image.ppm -
It will generate output in ppm format so install feh in you system then run it to preview the output image.
sudo pacman -S feh # for arch linux feh image.ppmConfigure scenes, camera, and rendering options by editing the appropriate source files. Run the executable to generate output images.
Contributions are welcome! Please open issues or pull requests for improvements, bug fixes, or new features.
This project is licensed under the MIT License.