# Agni Agni is a pathtraceing renderer written in Rust. It is based on the excellent PBRT book. ## References * [pbrt-rs](https://github.com/wahn/rs_pbrt) by Jan Walters This is another implementation of the book in Rust, that's much further along. * [Physically Based Rendering](http://www.pbr-book.org/) by Greg Humphreys and Matt Pharr The book I'll be basing this renderer on. Originally written in C++, I will be reimplementing it in Rust ## FAQ ### Why PBR? I've previously worked through the Raytracing in a weekend books and would like to write something more comprehensive. This seems like a great exercise to learn how pathtracers work, and try and build functionality around one. ### Why Rust? I chose Rust because it seems like a really well thought out language. I enjoy the dependency management and strictness of it. I've done smaller projects previously in Rust but would like to set a larger project here so that I can learn more about it, specifically with regards to lots of data and threading. My hope is that, as I work, I can provide functionality that can be useful outside this project itself. ### Why Agni? Agni is the [Hindu Deity of fire](https://en.wikipedia.org/wiki/Agni). He is often also associated with the sun in the sky and represents energy as a whole. That seems very fitting with the nature of a render system. Also it was not used yet on crates.io which is a big plus. ### What if this Crate is abandoned? I realize crates get abandoned all the time. If that happens, please reach out to me and we can talk about reassigning it.