Skip to content

dolovnyak/rt_indi

Repository files navigation

rt_indi

MacOS - Build

RT is a rendering project of school 21(Ecole 42).

Implements:

  • Lighting models: Phong, Pathtracing.
  • Intersection methods:
    • Raytracing (sphere, cone, cylinder, plane).
    • Raymarching (torus, hyperboloid, parallelogram, mudelbulb fractal).
  • GPU acceleration via OpenCL.
  • Supersample anti-aliasing
  • Post processing effects: gauss blure, anaglyph, monochrome, ordered dithering
  • Textures.
  • Pathtracing effects: specularity, transparency, refraction, glow.

Build and run on MacOS

make
./RT 'path_to_map' 'path_to_texture'  

# Examples of maps and textures are stored in a folder 'json'.

Controls

ESC - Close the program.
W/A/S/D - Movement in space.
Hold the right mouse button and move it - Movement in space.
UP/DOWN/RIGHT/LEFT - Camera rotation.
Hold the left mouse button and move it - Camera rotation.
Mouse wheel scroll - zoom into / zoom out.
Z/X/C/V/ - effects on / off.
2-4 - fsaa on(mouse event off it).
L - path trace on / off (mouse event off it).
0 - screen shot.
ESC - quit programm.

Screenshots of scenes:

Scene with all objects (Phong shading via Raytrace and Raymarching algorithm)

Image alt

beautiful scene (Path trace algorithm via Raytrace algorithm)

Image alt

4_speheres_1 scene (Path trace algorithm via Raytrace algorithm)

Image alt

4_speheres_2 scene (Path trace algorithm via Raytrace algorithm)

Image alt

Glass scene (Path trace algorithm via Raytrace algorithm)

Image alt

Stained glass scene (Path trace algorithm via Raytrace algorithm)

Image alt

Student hostel scene (Path trace algorithm via Raytrace algorithm)

Image alt

Mandelbulb scene (Phong shading via Raymarching algorithm)

Image alt

Authors

IlyaSviridov - https://github.com/IlyaSviridov
dolovnyak - https://github.com/dolovnyak
godflight - https://github.com/GodFlight
pgilly