sunverwerth / ray

Toy path tracer in c++

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ray

Example image

Ray is a CPU path tracer written in c++

Used libraries

Features

  • Multithreaded rendering
  • Explicit area light sampling
  • Depth of field
  • Cosine weighted hemisphere sampling
  • Russian roulette path termination
  • Interactive controls
  • Objects
    • Cubes
    • Spheres
    • Planes
    • Quads
    • Triangle meshes (.obj and Quake2 BSP)
    • RGBE Environment maps
  • Material system
    • base color
    • emissive color
    • roughness
    • opacity
    • metallicity
    • index of refraction

Controls

  • Click and drag to pan camera
  • Arrow keys to move camera
  • Scroll wheel to adjust aperture size
  • Click to set focal plane
  • +/- to adjust exposure

More examples

Example image

Example image

Example image

About

Toy path tracer in c++

License:MIT License


Languages

Language:C 64.0%Language:C++ 35.8%Language:Makefile 0.2%