This package was written in the early days of Flux / Zygote. Both these packages have significantly improved over time. Unfortunately, the current state of this package of has not been updated to reflect those improvements. It also seems that it might be better to gradually transition to defining the adjoints directly using ChainRules. A Ray Tracer written completely in Julia. This allows us to leverage the AD capabilities provided by Zygote to differentiate through the Ray Tracer.