/42cursus_miniRT

This project is about programming a basic raytracer in C.

Primary LanguageC

🎥 miniRT 🎥

CURSUS: 2019/2020 - AUTHOR: fmanetti - GRADE: 100 - FINISHED: 10/10/2020

This project is an introduction to the beautiful world of Raytracing. Once completed you will be able to render simple Computer-Generated-Images and you will never be afraid of implementing mathematical formulas again.

image

Introduction

The goal of your program is to generate images using the Raytracing protocol. Those computer-generated images will each represent a scene,as seen from a specific angle and position, defined by simple geometric objects, and each with its own lighting system.

For more detailed information, look at the subject of this project.

Disclaimer

At 42 school when we program in C we are subject to a set of rules called the norm, so if the code is not 100% optimized this is the reason. This project was coded following norminette v2.

Description

Examples

Red Sphere

Two Pyramids

Sphere RGB

Indiana Jones Temple

Usage

Requirements

The function is written in C language and thus needs the gcc compiler and some standard C libraries to run.

Instructions

To compile, choose the OS and run:

$ make

To launch use the executable miniRT and choose a scene from the scenes directory:

$ ./miniRT scenes/[C4O3H6/FM/indiana/pyramids/RGB/sphere].rt

To customizise a scene go to the macOS|linux/scenes directory and modify values.

Sources

Scratchapixel