miniRT is a small ray tracing program that renders simple 3D scenes using analytic geometry. The project focuses on implementing the core concepts of ray tracing, including intersections, lighting, and shading, without relying on external graphics libraries.
- Ray-sphere, ray-plane, and ray-cylinder intersections
- Phong reflection model (diffuse and specular shading)
- Point light source support
- Simple camera and viewport configuration
- BMP image export
- Minimal, dependency-free C implementation
- Command-line scene description file parsing
make
./miniRT <scene_file.rt>-
The program expects a
.rtfile describing the scene. -
Example:
./miniRT scenes/example.rt
Analytic-miniRT/
│
├── src/ # Source code files
├── include/ # Header files
├── scenes/ # Sample scene description files
├── Makefile
└── README.md
- C99 compiler (tested on gcc and clang)
- MiniLibX (for window and image display)
February 1, 2023 – March 15, 2023
