Skip to content

pvalls/ray-tracer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ray-Tracer Engine in c++

Introduction

This is my final project for the Subject Synthetic Image (Ray Tracing for Realistic Image Synthesis) at Universitat Pompeu Fabra (Barcelona).

Following the course me and my partner partially implemented a Ray-Tracer Graphics Engine in c++.

More specifically, we implemented:

  • An intersection shader, a depth shader, a direct illumination shader, and a global illumination shader that takes into account indirect illumination (n bounces indirect illumination).

  • Different phong materials with solid, mirror-like, transmissive and many other behaviours.

  • Light sources which have an area (as opposed to the point light sources)

  • New geometric figures such as spheres, infinite planes, cilinders and Disks using rayobject intersection mathematics.

Environment Setup

To run the code we recommend to open the project file using Microsoft Visual Studio.

Otherwise, you can take the raw code and run it yourself on any other platform.

Acknowledgments

Professor RICARDO MARQUÉS. Collaborator GEMMA ALAIX I GRANELL.

Bibliography

Andrews Glassner, “An Introduction to Ray Tracing”, Academic Press Ltd. London, 1989 (Primera Edició)

Matt Pharr and Greg Humphreys, “Physically Based Rendering: From Theory to Implementation”, Morgan Kaufmann Publishers, 2010 (Segona Edició)

Philip Dutré, Philippe Bekaert, Kavita Bala, “Advanced Global Illumination”, AK Peters, 2006 (Segona Edició)

About

Ray-Tracer Engine in c++

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages