40 lines
827 B
Plaintext
40 lines
827 B
Plaintext
|
#version 450
|
||
|
|
||
|
#include "compiled.inc" // bloomStrength
|
||
|
#include "std/resample.glsl"
|
||
|
|
||
|
uniform sampler2D tex;
|
||
|
uniform vec2 screenSizeInv;
|
||
|
uniform int currentMipLevel;
|
||
|
uniform float sampleScale;
|
||
|
|
||
|
#ifdef _CPostprocess
|
||
|
uniform vec3 PPComp11;
|
||
|
#endif
|
||
|
|
||
|
in vec2 texCoord;
|
||
|
|
||
|
out vec4 fragColor;
|
||
|
|
||
|
void main() {
|
||
|
#ifdef _BloomQualityHigh
|
||
|
fragColor.rgb = upsample_tent_filter_3x3(tex, texCoord, screenSizeInv, sampleScale);
|
||
|
#else
|
||
|
#ifdef _BloomQualityMedium
|
||
|
fragColor.rgb = upsample_dual_filter(tex, texCoord, screenSizeInv, sampleScale);
|
||
|
#else // _BloomQualityLow
|
||
|
fragColor.rgb = upsample_4tap_bilinear(tex, texCoord, screenSizeInv, sampleScale);
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
if (currentMipLevel == 0) {
|
||
|
#ifdef _CPostprocess
|
||
|
fragColor.rgb *= PPComp11.x;
|
||
|
#else
|
||
|
fragColor.rgb *= bloomStrength;
|
||
|
#endif
|
||
|
}
|
||
|
|
||
|
fragColor.a = 1.0;
|
||
|
}
|