Skip to content

Repository files navigation

Wgpu PBR

A realtime PBR renderer project for personal learning. Now it's in progress. cover

  • Column major
  • Right hand
  • Y-up

Powered by

  • wgpu: A cross-platform, safe, pure-rust graphics API.
  • winit: Cross-platform window creation and management in Rust.
  • cgmath: Mathmatic library.
  • bevy_ecs: Entity Component System architecture in Rust by bevy engine.
  • egui: An easy-to-use GUI in pure Rust.

Roadmap

  • Transform & Camera & Phong pipeline
  • Directional light shadow mapping
  • Normal mapping
  • Deferred rendering pipeline
  • Microfact directional lighting & point lighting
  • Color management
  • Microfact image based lighting
    • Environment map prefiltering (GGX distribution)
    • Diffuse irradiance spherical harmonics pre-calculation
    • HDRI to cubemap converting
  • Transparent pipeline
    • Transparent pass (separate specular and diffuse)
    • Screenspace refraction effect
  • Multi-camera
  • Simple gizmo system
  • Cascade shadow mapping (CSM)
  • WESL & Shader cache
  • Forward+ pipeline
    • Material pattern
    • Light filtering
  • Clear coat model

Screenshot

reflectance_metallic

  • row 0: Solid | reflectance: 0.0 -> 1.0
  • row 1: Solid | metallic: 0.0 -> 1.0
  • row 2: Transparent | metaliic: 0.0 -> 1.0
  • row 3: Transparent | reflectance: 0.0 -> 1.0

License

LICENSE.md

About

A PBR renderer implementaion in Rust & Wgpu.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages