Skip to content
A Fully Differentiable Ray Tracer
Branch: master
Clone or download

README.md

RayTracer.jl

A Ray Tracer written completely in Julia. This allows us to leverage the AD capablities provided by Zygote to differentiate through the Ray Tracer.

INSTALLATION

The package is currently not registered. So open up a Julia 1.1+ repl and enter the pkg mode.

] add https://github.com/avik-pal/RayTracer.jl

For GPU Support

] add https://github.com/avik-pal/RayTracer.jl#ap/gpu

USAGE EXAMPLES

For usage examples look into the examples directory. Also the documentation has some getting started examples.

CURRENT ROADMAP

These are not listed in any particular order

  • Add more types of common objects - Disc, Plane, Box
  • Add support for rendering arbitrary mesh (a proof of concept version is present in master but is very slow)
  • GPU Support using CuArrays (partially supported in ap/gpu branch)
  • Inverse Rendering Examples
  • Application in Machine Learning Models through Flux
You can’t perform that action at this time.