Skip to content

A gradient domain renderer where I am experiment with a new shift mapping technique

License

Notifications You must be signed in to change notification settings

shiroyasha263/Gradient-Domain-Rendering

Repository files navigation

Gradient Domain Renderer

Physically based gradient domain renderer with various other algorithms implemented alongside it. This is built over PBRT v-4 Report of my work

Features

  1. Gradient Domain Rendering, with path reconnection

    • Gradient Domain Rendering - 128 spp - Cornell Box
    • Gradient Domain Rendering - 128 spp - Teapot
  2. Stochastic Lightcuts, with VPL generation for indirect lighting

    • Stochastic Lightcuts - 128 spp - Cornell Box - 620s
    • Stochastic Lightcuts - 128 spp - Staircase - 1000s
  3. Gradient Domain Rendering with Stochastic Lightcuts Shiftmapping

    • GDRSLC - 64 spp - Cornell Box - 620s
    • GDRSLC - 64 spp - Staircase - 820s

Building the code

As before, pbrt uses git submodules for a number of third-party libraries that it depends on. Therefore, be sure to use the --recursive flag when cloning the repository:

$ git clone --recursive https://github.com/mmp/pbrt-v4.git

If you accidentally clone pbrt without using --recursive (or to update the pbrt source tree after a new submodule has been added, run the following command to also fetch the dependencies:

$ git submodule update --init --recursive

pbrt uses cmake for its build system. Note that a release build is the default; provide -DCMAKE_BUILD_TYPE=Debug to cmake for a debug build.

pbrt should build on any system that has C++ compiler with support for C++17; we have verified that it builds on Ubuntu 20.04, MacOS 10.14, and Windows 10. We welcome PRs that fix any issues that prevent it from building on other systems.

About

A gradient domain renderer where I am experiment with a new shift mapping technique

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages