No description
Find a file
2026-05-20 16:56:58 +01:00
crates/ptex-filter Finished work on the shared side. Now moving to host code. May god have mercy on my soul 2026-05-19 19:58:21 +01:00
data Very big change, preparing for gpu integration 2025-12-20 00:11:31 +00:00
kernels Fixing issues caused by migrating from shared to host code. Lanczos filter is unseemly now, but options have to be handled host side 2026-02-20 22:37:50 +00:00
shared This commit is way too large. So, added Upload trait back again, but only for Textures, which are the most complex types. Fixing Medium and PixelSensor creation on host side. Can´t really find a satisfying way of keeping construction and creation separate, so for now, regrettably, putting them in the same place. Added some types to parameter parsing. Continuing fixup caused by creation of GVec and GBox 2026-05-20 16:16:57 +01:00
src Fixing some import errors 2026-05-20 16:56:58 +01:00
.gitignore Continuing work on handling Options. Lesson learned, actually handle them 2026-05-13 23:32:58 +01:00
build.rs Finally fixed import errors due to refactoring, gotta get a better IDE 2026-01-19 23:52:12 +00:00
Cargo.toml Finished work on the shared side. Now moving to host code. May god have mercy on my soul 2026-05-19 19:58:21 +01:00
README.md Continuing with the cleanup 2026-02-15 14:48:50 +00:00
rust-toolchain.toml Big slog, separating GPU and CPU safe structs and constructors 2025-12-21 02:17:28 +00:00

PBRusT

Description

A Rust implementation of the physically based renderer described in the tremendous book Physically Based Rendering: From Theory to Implementation by Matt Pharr, Wenzel Jakob, and Greg Humphreys. This project aims to explore modern Rust features, and create a performant and stable rendering engine.

This implementation is currently under development and serves as a learning exercise for both advanced rendering techniques and Rust programming.

Getting Started

This project requires the Rust nightly toolchain

To install the nightly toolchain:

rustup toolchain install nightly
rustup default nightly

To get a local copy up and running:

  1. Clone the repository:

    git clone <repository>
    cd pbrt
    
  2. Build the project:

    cargo build
    
  3. Run test:

    cargo test
    

Dependencies

This project relies on the following external crates:

Help

Good luck.

command to run if program contains helper info

Authors

Version History

License

This project is licensed under the [NAME HERE] License - see the LICENSE.md file for details

Acknowledgments