MiniRT is a minimalist raytracer built as part of the 42 curriculum, designed to introduce students to the fundamentals of ray tracing and rendering. The project implements a simple yet efficient raytracing algorithm, simulating light interactions to generate realistic 3D images.
✅ Basic Rendering – Ray-surface intersection for spheres, planes, and cylinders
✅ Lighting Models – Diffuse, specular, and ambient lighting calculations
✅ Shadows – Cast shadows for more realistic depth perception
✅ Camera & Viewport – Adjustable camera positioning and field of view
✅ Multi-threading – Parallel processing for faster rendering
✅ Textures & Normal Mapping – Adds detail to surfaces
✅ Transparency & Refraction – Light bending effects for glass-like materials
✅ Different Materials – Diffuse & Mirror & Glass & Metalic & Emision
💻 Language: C
🎨 Graphics Library: MLX42
🧮 Math Concepts: Vectors, matrices, raytracing algorithms
🚀 Optimization: Multi-threading for performance boosts
- Clone the repository:
git clone https://github.com/erikgonk/miniRT.git && cd miniRT
- Execute it:
make && ./miniRT scenes/figuras_pov.rt Change the scene if you please and Press SPACE to render it
ENTER – to render
ARROWS – move camera
CONTROL + ARROW UP or DOWN – zoom in and out (with FOV)
CLICK (anythere in the screen) – Editing Mode


