Skip to content

FreeCap23/Spectra

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spectra

About

Spectra is a cross-platform ray tracer written in C++ using libraries such as glm for vector math, Dear ImGui for the GUI and stb_image for exporting the result to a .png file.

Rendered image

This is the most recent image rendered. It shows 32 spheres with randomly generated colors and materials, a ground plane and a mirror plane.

Image rendered with Spectra

GUI Screenshot

Screenshot of the GUI

Features

  • Cross-platform
  • A Graphical User Interface
  • Stochastic Multi-Sampling anti-aliasing
  • Materials
  • Perspective & Orthographic camera

Motivation

I've been interested in raytracing for some time, so I decided to try to write one myself.

Resources I used

Building & Running

To build Spectra you need CMake 3.2+ and a C++ Compiler such as g++ or MSVC. Also make sure to clone recursively.

mkdir build
cmake -S src -B build
cmake --build build
cd build/Release    # This is important. Spectra cannot load the font if it isn't launched from this directory
./Spectra

About

RayTracer written in C++

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published