Giter Club home page Giter Club logo

bakinglab's Introduction

The Baking Lab

This project is a D3D11 demo application that implements various techniques for storing pre-computed lighting in 2D lightmaps, including using a set of Spherical Gaussians to approximate incoming radiance. The demo is a companion to a series of articles on my blog, which you can find here: https://mynameismjp.wordpress.com/2016/10/09/new-blog-series-lightmap-baking-and-spherical-gaussians/. The SG techniques implemented in the demo were originally presented in our presentation from the Physically Based Shading course at SIGGRAPH 2015.

The demo implements the following techniques for storing pre-computed lightmap data:

  • Scaled Irradiance
  • Half-Life 2 Basis
  • L1 and L2 Spherical Harmonics
  • L1 and L2 H-basis
  • 5, 6, 9, and 12-lobe variants of Spherical Gaussians

All baking modes bake progressively with real-time feedback, using an Embree-backed path tracer to compute radiance samples. The app can also toggle a ground-truth rendering mode that uses the same path tracer to compute per-pixel radiance towards the viewer.

Build Instructions

The repository contains Visual Studio 2015 and 2013 project files that are ready to build on Windows. All external dependencies are included in the repository, so there's no need to download additional libraries. Running the demo requires Windows 7 or higher, as well as a GPU that supports Feature Level 11_0.

Using the Demo App

To move the camera, press the W/S/A/D/Q/E keys. The camera can also be rotated by right-clicking on the window and dragging the mouse. Everything else is controlled through the in-app settings UI. For more information on the features of the demo app, see this blog post.

bakinglab's People

Contributors

therealmjp avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.