Awesome
rs_pbrt
<!-- [![](https://tokei.rs/b1/github/wahn/rs_pbrt?category=code)](https://github.com/wahn/rs_pbrt) --> <!-- [![](https://img.shields.io/github/release-date/wahn/rs_pbrt.svg)](https://github.com/wahn/rs_pbrt/releases) --> <!-- [![](https://img.shields.io/github/issues-raw/wahn/rs_pbrt.svg)](https://github.com/wahn/rs_pbrt/issues) --> <!-- [![Build Status](https://travis-ci.com/wahn/rs_pbrt.svg?branch=master)](https://travis-ci.com/wahn/rs_pbrt) -->You can find more information about rs_pbrt
at https://www.rs-pbrt.org/about ...
Rust crate to implement a counterpart to the PBRT book's (3rd edition) C++ code:
Current Rust (development) documentation:
https://www.janwalter.org/doc/rust/rs_pbrt/index.html or https://www.rs-pbrt.org/doc/crates/rs_pbrt/index.html
Usage
> cargo build --release --no-default-features
> ./target/release/rs_pbrt --help
rs_pbrt version 0.9.12 (unknown) [Detected 28 cores]
Physically based rendering (PBR) with Rust
Usage: rs_pbrt [OPTIONS] --path <PATH>
Options:
--cropx0 <CROPX0> Specify an image crop window <x0 x1 y0 y1> [default: 0.0]
--cropx1 <CROPX1> Specify an image crop window <x0 x1 y0 y1> [default: 1.0]
--cropy0 <CROPY0> Specify an image crop window <x0 x1 y0 y1> [default: 0.0]
--cropy1 <CROPY1> Specify an image crop window <x0 x1 y0 y1> [default: 1.0]
-i, --integrator <INTEGRATOR> ao, directlighting, whitted, path, bdpt, mlt, sppm, volpath
-t, --nthreads <NTHREADS> use specified number of threads for rendering [default: 0]
-s, --samples <SAMPLES> pixel samples [default: 0]
-p, --path <PATH> The path to the file to read
-h, --help Print help information
-V, --version Print version information
Test Scenes
Some images of the test scenes are shown below, but you can find more test scenes on GitLab.
Ganesha Statue
Very detailed scan of a small statue with over 4.3 million triangles, illuminated by a few area light sources.
The scene can be found within the GitLab repository
(pbrt_ganesha.tar.gz
).
Subsurface Scattering (SSS)
The scene can be found within the GitLab repository
(sss_dragon.tar.gz
).
Stochastic Progressive Photon Mapping (SPPM)
The scene can be found within the GitLab repository
(caustic_glass.tar.gz
).
Ecosystem (Cover image for the first edition of the PBRT book)
The scene can be found within the GitLab repository
(pbrt_ecosys.tar.gz
).
Landscape (Cover image for the third edition of the PBRT book)
Hair
The hair scattering model in action:
The scene can be found within the GitLab repository
(pbrt_hair.tar.gz
).
Japanes Classroom by NovaZeeke
The scene can be found within the GitLab repository
(bitterli_classroom.tar.gz
).
The White Room by Jay-Artist
The scene can be found within the GitLab repository
(bitterli_living-room-2.tar.gz
).
Country Kitchen by Jay-Artist
The scene can be found within the GitLab repository
(bitterli_kitchen.tar.gz
).
The Wooden Staircase by Wig42
The scene can be found within the GitLab repository
(bitterli_staircase.tar.gz
).
Conference Room by Anat Grynberg and Greg Ward
The scene can be found within the GitLab repository
(radiance_conference_room
folder).
Theater by Charles Ehrlich and Greg Ward
The scene can be found within the GitLab repository
(radiance_theater
folder).
For more information check out the rs-pbrt
web page.
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.