keryell / path_tracer

Experimental ray tracing with C++20 and SYCL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RAY TRACER

Clone the reposity with:

git clone https://gitenterprise.xilinx.com/kranipet/Ray_Tracer.git

Compiling with CMake

Create a build directory inside the cloned repo and jump into it. From there, run:

cmake .. -DCMAKE_MODULE_PATH=.../triSYCL/cmake

Build the project with:

cmake --build .

This creates the executable . Now you can run the SYCL version of Ray Tracer with::

time RT_SYCL/sycl-rt >! result.ppm

This results in the image result.ppm produced by the Ray Tracer.

img

The following are the references that were tremendously useful in writing this project:

  1. Ray Tracing in One Weekend - Peter Shirley

    Ray Tracing: The Next Week - Peter Shirley

  2. Ray-tracing in a Weekend with SYCL - Part 1

    Ray-tracing in a Weekend with SYCL - Part 2

  3. CppCon 2018: Mateusz Pusz “Effective replacement of dynamic polymorphism with std::variant”

  4. Runtime Polymorphism with std::variant and std::visit - Bartek

  5. http://geomalgorithms.com/a06-_intersect-2.html

About

Experimental ray tracing with C++20 and SYCL

License:Apache License 2.0


Languages

Language:C++ 72.7%Language:CMake 27.3%