cutscene WTF
This commit is contained in:
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 4.2 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 117 KiB |
@@ -0,0 +1,53 @@
|
||||
#version 330 core
|
||||
|
||||
in vec2 i_uv_out;
|
||||
|
||||
out vec4 o_fragColor;
|
||||
|
||||
uniform sampler2D u_texture;
|
||||
uniform vec4 u_tint;
|
||||
uniform vec3 u_color_offset;
|
||||
uniform float uIntensity;
|
||||
uniform float u_intensity;
|
||||
|
||||
const int RADIUS = 4;
|
||||
|
||||
float gaussianWeight(vec2 offset, float sigma)
|
||||
{
|
||||
float dist = dot(offset, offset);
|
||||
return exp(-dist / (2.0 * sigma * sigma));
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
float intensity = max(max(uIntensity, u_intensity), 0.0);
|
||||
vec2 texelSize = 1.0 / vec2(textureSize(u_texture, 0));
|
||||
|
||||
if (intensity <= 0.001) {
|
||||
vec4 texColor = texture(u_texture, i_uv_out);
|
||||
texColor *= u_tint;
|
||||
texColor.rgb += u_color_offset;
|
||||
o_fragColor = texColor;
|
||||
return;
|
||||
}
|
||||
|
||||
float sigma = max(intensity * 2.0, 0.001);
|
||||
vec4 color = vec4(0.0);
|
||||
float totalWeight = 0.0;
|
||||
|
||||
for (int y = -RADIUS; y <= RADIUS; ++y) {
|
||||
for (int x = -RADIUS; x <= RADIUS; ++x) {
|
||||
vec2 kernelOffset = vec2(float(x), float(y));
|
||||
float weight = gaussianWeight(kernelOffset, sigma);
|
||||
vec2 sampleOffset = kernelOffset * texelSize * intensity;
|
||||
|
||||
color += texture(u_texture, i_uv_out + sampleOffset) * weight;
|
||||
totalWeight += weight;
|
||||
}
|
||||
}
|
||||
|
||||
vec4 texColor = color / totalWeight;
|
||||
texColor *= u_tint;
|
||||
texColor.rgb += u_color_offset;
|
||||
o_fragColor = texColor;
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
#version 330 core
|
||||
|
||||
layout (location = 0) in vec2 i_position;
|
||||
layout (location = 1) in vec2 i_uv;
|
||||
|
||||
out vec2 i_uv_out;
|
||||
|
||||
uniform mat4 u_transform;
|
||||
|
||||
void main()
|
||||
{
|
||||
i_uv_out = i_uv;
|
||||
gl_Position = u_transform * vec4(i_position, 0.0, 1.0);
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.2 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 129 KiB |
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 82 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.8 MiB |
Reference in New Issue
Block a user