All Projects → wahn → Rs_pbrt

wahn / Rs_pbrt

Licence: other
Rust crate to implement a counterpart to the PBRT book's (3rd edition) C++ code. See also https://www.rs-pbrt.org/about ...

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Rs pbrt

Rpt
A physically-based path tracer
Stars: ✭ 296 (-52.18%)
Mutual labels:  graphics, rendering, physically-based-rendering
Yocto Gl
Yocto/GL: Tiny C++ Libraries for Data-Driven Physically-based Graphics
Stars: ✭ 1,391 (+124.72%)
Mutual labels:  graphics, rendering, physically-based-rendering
Vxr
General purpose engine written in C++ with emphasis on materials rendering (PBR, clear coat, anisotropy, iridescence)
Stars: ✭ 181 (-70.76%)
Mutual labels:  graphics, rendering, physically-based-rendering
Game Programmer Study Notes
⚓ 我的游戏程序员生涯的读书笔记合辑。你可以把它看作一个加强版的Blog。涉及图形学、实时渲染、编程实践、GPU编程、设计模式、软件工程等内容。Keep Reading , Keep Writing , Keep Coding.
Stars: ✭ 6,050 (+877.38%)
Mutual labels:  graphics, rendering
Im3d
Immediate mode rendering and 3d gizmos.
Stars: ✭ 561 (-9.37%)
Mutual labels:  graphics, rendering
Liblava
🌋 A modern and easy-to-use library for the Vulkan API
Stars: ✭ 275 (-55.57%)
Mutual labels:  graphics, rendering
pbrtbook
pbrt 中文整合翻译 基于物理的渲染:从理论到实现 Physically Based Rendering: From Theory To Implementation
Stars: ✭ 221 (-64.3%)
Mutual labels:  rendering, physically-based-rendering
3dtilesrendererjs
Renderer for 3D Tiles in Javascript using three.js
Stars: ✭ 333 (-46.2%)
Mutual labels:  graphics, rendering
Enterprisepbrshadingmodel
Stars: ✭ 299 (-51.7%)
Mutual labels:  graphics, rendering
Overload
3D Game engine with editor
Stars: ✭ 335 (-45.88%)
Mutual labels:  graphics, physically-based-rendering
Touchdesigner shared
TouchDesigner toxes and small projects
Stars: ✭ 385 (-37.8%)
Mutual labels:  graphics, rendering
Ascii art
Real-Time ASCII Art Rendering Library
Stars: ✭ 599 (-3.23%)
Mutual labels:  graphics, rendering
Edxray
A physically based renderer which implements many state of the art techniques in light transport simulation, material modeling, sampling and reconstruction.
Stars: ✭ 270 (-56.38%)
Mutual labels:  graphics, rendering
ElkEngine
Simple graphics engine used as submodule in many of my projects
Stars: ✭ 54 (-91.28%)
Mutual labels:  rendering, physically-based-rendering
Tinyraytracer
A brief computer graphics / rendering course
Stars: ✭ 3,971 (+541.52%)
Mutual labels:  graphics, rendering
Mtlpp
C++ Metal wrapper
Stars: ✭ 425 (-31.34%)
Mutual labels:  graphics, rendering
Softwarerenderer
Software rendering engine with PBR. Built from scratch on C++.
Stars: ✭ 323 (-47.82%)
Mutual labels:  graphics, physically-based-rendering
Gpu Gems Book Source Code
💿 CD Content ( Source Code ) Collection of Book <GPU Gems > 1~ 3 | 《GPU精粹》 1~ 3 随书CD(源代码)珍藏
Stars: ✭ 567 (-8.4%)
Mutual labels:  graphics, rendering
f3d
Fast and minimalist 3D viewer.
Stars: ✭ 791 (+27.79%)
Mutual labels:  rendering, physically-based-rendering
cadise
A developing physically-based hobby renderer written in C++.
Stars: ✭ 30 (-95.15%)
Mutual labels:  rendering, physically-based-rendering

rs_pbrt

Build Status Documentation Status

Rust crate to implement a counterpart to the PBRT book's (3rd edition) C++ code:

http://www.pbrt.org

Current Rust documentation:

https://www.janwalter.org/doc/rust/pbrt/index.html

Usage

> cargo build --release --no-default-features
> ./target/release/rs_pbrt --help
pbrt 0.8.3
Parse a PBRT scene file (extension .pbrt) and render it

USAGE:
    rs_pbrt [OPTIONS] <path>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -t, --nthreads <nthreads>    use specified number of threads for rendering [default: 0]

ARGS:
    <path>    The path to the file to read

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.

Ganesha Statue

The scene can be found within the repository (assets/scenes/ganesha.tar.gz).

Subsurface Scattering (SSS)

SSS Dragon

sss_dragon_pbrt.tar.gz

Stochastic Progressive Photon Mapping (SPPM)

SPPM Caustic Glass

caustic_glass.tar.gz

Ecosystem (Cover image for the first edition of the PBRT book)

Ecosystem

pbrt_ecosys.tar.gz

Landscape (Cover image for the third edition of the PBRT book)

Landscape

Hair

The hair scattering model in action:

Curly and straight hair rendered by Rust version of PBRT

Japanes Classroom by NovaZeeke

Classroom room rendered by rs_pbrt

classroom_pbrt.tar.gz

The White Room by Jay-Artist

The White Room rendered by rs_pbrt

living-room-2_pbrt.tar.gz

Country Kitchen by Jay-Artist

Kitchen rendered by rs_pbrt

kitchen_pbrt.tar.gz

The Wooden Staircase by Wig42

Staircase rendered by rs_pbrt

staircase_pbrt.tar.gz

Conference Room by Anat Grynberg and Greg Ward

Conference room rendered by rs_pbrt

conference_room_pbrt.tar.gz

Theater by Charles Ehrlich and Greg Ward

Theater rendered by rs_pbrt

Theater rendered by rs_pbrt

theater_pbrt.tar.gz

For more info look at the Wiki page or the release notes.

Here you find another Rust implementation:

https://bitbucket.org/abusch/rustracer

License

Licensed under either of

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].