2 releases
Uses old Rust 2015
0.1.2 | Dec 23, 2018 |
---|---|
0.1.1 | Dec 23, 2018 |
0.1.0 |
|
#9 in #path-tracing
Used in jal
105KB
186 lines
Agni
Agni is a pathtraceing renderer written in Rust. It is based on the excellent PBRT book.
References
-
pbrt-rs by Jan Walters
This is another implementation of the book in Rust, that's much further along.
-
Physically Based Rendering 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.
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.
Dependencies
~25–750KB
~14K SLoC