HDR enabled.

This commit is contained in:
Lubos Lenco 2016-04-22 16:52:38 +02:00
parent 7d5bcbbb55
commit 9debab116c
5 changed files with 20 additions and 20 deletions

View file

@ -11,7 +11,7 @@ in vec2 texCoord;
void main() {
vec4 col = texture(tex, texCoord);
float brightness = dot(col.rgb, vec3(0.2126, 0.7152, 0.0722));
if (brightness > 0.99) {
if (brightness > 1.3) {
gl_FragColor.rgb = vec3(col.rgb);
return;
}

View file

@ -16,15 +16,15 @@ void main() {
vec3 col = texture(tex, texCoord).rgb;
vec3 col2 = texture(tex2, texCoord).rgb;
// // Additive blending
// Additive blending
col += col2;
// // Tone mapping
// Tone mapping
// vec3 result = vec3(1.0) - exp(-col * exposure);
// // Gamma correction
// Gamma correction
// result = pow(result, vec3(1.0 / gamma));
// gl_FragColor = vec4(result, 1.0f);
// gl_FragColor.rgb = result;
gl_FragColor.rgb = col;
}

View file

@ -175,19 +175,19 @@ void main() {
// col.rgb = applyFog(col.rgb, dist);
// Lens flare
vec4 lndc = VP * vec4(light, 1.0);
lndc.xy /= lndc.w;
// vec4 lndc = VP * vec4(light, 1.0);
// lndc.xy /= lndc.w;
float lightDistance = distance(eye, light);
vec2 lss = lndc.xy * 0.5 + 0.5;
float lssdepth = linearize(texture(gbuffer0, lss).a, 0.1, 1000.0);
// float lightDistance = distance(eye, light);
// vec2 lss = lndc.xy * 0.5 + 0.5;
// float lssdepth = linearize(texture(gbuffer0, lss).a, 0.1, 1000.0);
if (lssdepth >= lightDistance) {
vec2 lensuv = (texCoord - 0.5) * 2.0;
lensuv.x *= aspectRatio;
vec3 lensflarecol = vec3(1.4, 1.2, 1.0) * lensflare(lensuv, lndc.xy);
col.rgb += lensflarecol;
}
// if (lssdepth >= lightDistance) {
// vec2 lensuv = (texCoord - 0.5) * 2.0;
// lensuv.x *= aspectRatio;
// vec3 lensflarecol = vec3(1.4, 1.2, 1.0) * lensflare(lensuv, lndc.xy);
// col.rgb += lensflarecol;
// }
// Vignetting
col *= vignette();
@ -199,11 +199,11 @@ void main() {
// col.rgb *= getExposure(aperture, shutterSpeed, iso);
// Tonemapping
// col.rgb = tonemapUncharted2(col.rgb);
col.rgb = tonemapUncharted2(col.rgb);
// col.rgb = tonemapFilmic(col.rgb); // With gamma
// To gamma
// col = vec4(pow(col.rgb, vec3(1.0 / 2.2)), col.a);
col.rgb = pow(col.rgb, vec3(1.0 / 2.2));
gl_FragColor = col;
}

View file

@ -229,7 +229,7 @@ void main() {
// outColor.rgb *= occlusion;
// outColor.rgb *= ao;
outColor = vec4(pow(outColor.rgb, vec3(1.0 / 2.2)), outColor.a);
// outColor = vec4(pow(outColor.rgb, vec3(1.0 / 2.2)), outColor.a);
gl_FragColor = vec4(outColor.rgb, outColor.a);

View file

@ -196,7 +196,7 @@ void main() {
hitCoord = viewPos.xyz;
vec3 dir = reflected * max(minRayStep, -viewPos.z);// * (1.0 - rand(texCoord) * 0.5);
vec4 coords = rayCast(dir);
vec4 coords = rayCast(dir);
vec2 deltaCoords = abs(vec2(0.5, 0.5) - coords.xy);
float screenEdgeFactor = clamp(1.0 - (deltaCoords.x + deltaCoords.y), 0.0, 1.0);