UNPKG

pex-renderer

Version:

Physically Based Renderer for Pex

23 lines (19 loc) 540 B
module.exports = /* glsl */ ` float A = 0.15; float B = 0.50; float C = 0.10; float D = 0.20; float E = 0.02; float F = 0.30; float W = 11.2; vec3 Uncharted2Tonemap(vec3 x) { return ((x * (A * x + C * B) + D * E) / (x * (A * x + B) + D * F)) - E / F; } // Based on Filmic Tonemapping Operators http://filmicgames.com/archives/75 vec3 tonemapUncharted2(vec3 color) { float ExposureBias = 2.0; vec3 curr = Uncharted2Tonemap(ExposureBias * color); vec3 whiteScale = 1.0 / Uncharted2Tonemap(vec3(W)); return curr * whiteScale; } `