Rust crate to parse PBRT v3 scenes files

Rust crate to parse PBRT's Rust version

pbrt_rs

Rust crate to parse PBRT v3 scenes files. A big part of the code was extracted from the excellent PBRT's Rust version. This parser is tested and integrated inside rustlight to check its correctness and usability.

Kitchen scene rendered inside rustlight with GPT and weighted reconstruction (256 spp).

Running examples

This crate provided a useful example to test this library.

Obj Exporter

Basic export of a PBRT scene into OBJ format. This is one example of how to export a PBRT scene:

This command generates .obj and .mtl files. The .mtl needs tweaking so you get the same material look inside your rendering system.

Viewer

Only show the depth from the sensor perspective. For now, only the perspective camera is supported. Use simple BVH and multi-threaded rendering. This is one example of how to render a PBRT scene:

Known issues

  • Does not support all PBRT primitives (shapes, bsdf, sensors)
  • Pest parsing failed in some cases (under investigation)

I am waiting to resolve these issues above before publishing this crate officially.

Information - Updated Dec 30, 2021

Stars: 8
Forks: 0
Issues: 0

Rust bindings to bgfx, a cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering...

Rust bindings to wrapper for Rust exists, the code here takes a different approach and generate high-level bindings from the BGFX API examples an how...

Rust bindings to bgfx, a cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering...

A mid-level 2D graphics library for rust

rgx is a 2D graphics library built on top of Vulkan/

A mid-level 2D graphics library for rust

Blue Engine is a general-purpose, easy-to-use, fast, extendable, secure, and portable graphics engine written in...

Blue Engine is a general-purpose, easy-to-use, fast, extendable, secure, and portable graphics engine written in rust

Blue Engine is a general-purpose, easy-to-use, fast, extendable, secure, and portable graphics engine written in...

Safe Rust bindings to the Skia Graphics Library

Safe Rust bindings to the

Safe Rust bindings to the Skia Graphics Library

A vector graphics renderer using OpenGL with a Rust & C API

A Rust example can be found in examples/quickstart

A vector graphics renderer using OpenGL with a Rust & C API

This is a Chip 8 emulator written in rust using piston for input and graphics

Chip 8 is a very simple system and is a good entrypoint to learning about emulator design

This is a Chip 8 emulator written in rust using piston for input and graphics

An experimental no-alloc Rust GUI toolkit built on top of embedded-graphics

is to provide a cross-platform, no_std, non-allocating, composable UI framework

An experimental no-alloc Rust GUI toolkit built on top of embedded-graphics

Vulkano Vulkan Graphics API for Rust

Vulkano is a Rust wrapper around Wgpu-rs or the Vulkan graphics GPU API

Vulkano Vulkan Graphics API for Rust

DAXAD is a rewrite of my older "CPP-2D-Game-Engine", in rust using wgpu as the graphics...

DAXAD is a rewrite of my older "CPP-2D-Game-Engine", in rust using wgpu as the graphics api

DAXAD is a rewrite of my older "CPP-2D-Game-Engine", in rust using wgpu as the graphics...

My implementation for chess in rust, implemented both the logic and graphics

This is a WIP graphics engine build in Rust and really meant for reference and learning

My implementation for chess in rust, implemented both the logic and graphics

Unsafe Rust bindings for the Metal 3D Graphics API

The examples directory highlights different ways of using the Metal graphics API for rendering

Unsafe Rust bindings for the Metal 3D Graphics API

This is a NES (Nintendo Entertainment System) emulator written in Rust using SDL2 for graphics...

This is a NES (Nintendo Entertainment System) emulator written in Rust using SDL2 for graphics and input

This is a NES (Nintendo Entertainment System) emulator written in Rust using SDL2 for graphics...
Facebook Instagram Twitter GitHub Dribbble
Privacy