| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- #include "Uniforms.glsl"
- #include "Samplers.glsl"
- #include "Transform.glsl"
- #include "ScreenPos.glsl"
- #include "PostProcess.glsl"
- varying vec2 vScreenPos;
- #ifdef COMPILEPS
- uniform float cTonemapExposureBias;
- uniform float cTonemapMaxWhite;
- #endif
- void VS()
- {
- mat4 modelMatrix = iModelMatrix;
- vec3 worldPos = GetWorldPos(modelMatrix);
- gl_Position = GetClipPos(worldPos);
- vScreenPos = GetScreenPosPreDiv(gl_Position);
- }
- void PS()
- {
- #ifdef REINHARDEQ3
- vec3 color = ReinhardEq3Tonemap(max(texture2D(sDiffMap, vScreenPos).rgb * cTonemapExposureBias, 0.0));
- gl_FragColor = vec4(color, 1.0);
- #endif
- #ifdef REINHARDEQ4
- vec3 color = ReinhardEq4Tonemap(max(texture2D(sDiffMap, vScreenPos).rgb * cTonemapExposureBias, 0.0), cTonemapMaxWhite);
- gl_FragColor = vec4(color, 1.0);
- #endif
- #ifdef UNCHARTED2
- vec3 color = Uncharted2Tonemap(max(texture2D(sDiffMap, vScreenPos).rgb * cTonemapExposureBias, 0.0)) /
- Uncharted2Tonemap(vec3(cTonemapMaxWhite, cTonemapMaxWhite, cTonemapMaxWhite));
- gl_FragColor = vec4(color, 1.0);
- #endif
- }
|