Tempest Renderer is an experimental framework developed for research purposes and
used within the iridescent scratches project. This release contains the specific
modifications described in:

Real-Time Rendering of Wave-Optical Effects on Scratched Surfaces.
Z. Velinov*, S. Werner* and M. B. Hullin (* joint first author)
Computer Graphics Forum 37 (2) (Proc. EUROGRAPHICS 2018)

The source code provided in this package is licensed under multiple licenses.
We license the bulk of our source code under the MIT license. The external/
folder contains libraries that are licensed under compatible licenses,
however you should take note of them if you plan on developing derived works.
We provide a set of common graphics research assets with this package and
some of our own. Please refer to the respective folders for any licensing details.

We developed the bulk of the code base on Windows. The CPU-only parts of the
framework can run on Linux without major modification.

External Dependencies:
* None, really - use DISABLE_QT if you don't have Qt installed

For the impatient the whole shader is in shading/deferred-material-pass.tfx

Reproducing some figures in editor:

Dining table scene
* No impostor lights
scratch-editor.exe -E ennis -s sphere -w 720 -h 720 -T 0.171,-0.0069,-0.125 -C 0.3316,0.1454,-0.22125 -L 0.171,1.9931,-0.125 share\test_assets\cooking\mixed.obj
* One impostor lights
scratch-editor.exe -a 178.5:90.5 -A 0.56:0.89 -E ennis -s sphere -p -w 720 -h 720 -T 0.171,-0.0069,-0.125 -C 0.3316,0.1454,-0.22125 -L 0.171,1.9931,-0.125 share\test_assets\cooking\mixed.obj
* Two impostor lights
scratch-editor.exe -a 178.5:90.5,284.5:95.5 -A 0.56:0.89,0.05:0.16 -E ennis -s sphere -p -w 720 -h 720 -T 0.171,-0.0069,-0.125 -C 0.3316,0.1454,-0.22125 -L 0.171,1.9931,-0.125 share\test_assets\cooking\mixed.obj
* Three impost lights
scratch-editor.exe -a 178.5:90.5,284.5:95.5,270:90 -A 0.56:0.89,0.05:0.16,0.56:0.5 -E ennis -s sphere -p -w 720 -h 720 -T 0.171,-0.0069,-0.125 -C 0.3316,0.1454,-0.22125 -L 0.171,1.9931,-0.125 share\test_assets\cooking\mixed.obj

Spoon scene
scratch-editor.exe -s sphere -z 2 -w 1280 -h 720 -p -T -0.03,0.0,0.0 -C 0.02,0.1,-0.002 -L 0.02,0.21,0.1  -l 30 -e -E ennis share\test_assets\cooking\spoon2.obj

Rhyton scene
scratch-editor.exe -s sphere -E doge2-prebake -d 0.2 share\test_assets\rhyton\rhyton.obj