summaryrefslogtreecommitdiffstats
path: root/src/shader.frag
diff options
context:
space:
mode:
Diffstat (limited to 'src/shader.frag')
-rw-r--r--src/shader.frag80
1 files changed, 40 insertions, 40 deletions
diff --git a/src/shader.frag b/src/shader.frag
index 1818cc8..3e80e21 100644
--- a/src/shader.frag
+++ b/src/shader.frag
@@ -16,50 +16,50 @@ layout(binding = 0) uniform UniformBufferObject {
float dt;
} ubo;
-void main() {
- // float pulse = sin(ubo.time * .2) * .5 + .5;
- // outColor = vec4(fragColor * texture(texSampler, fragTexCoord).rgb * pulse, 1.0);
- //outColor = texture(texSampler, fragTexCoord);
- outColor = vec4(fragColor, 1);
-// float repeat = 10;
-// float f = mod(ubo.time, repeat);
-// if (f < repeat / 2) {
-// outColor = vec4(fragColor * radians(f) ,1);
-// } else {
-// outColor = vec4(fragColor * radians(1 - f) ,1);
-// }
-// //outColor = (vec4(1) * ubo.model + vec4(1)) * vec4(texture(texSampler, fragTexCoord).rgb * fragColor, 1.0);
-}
-
-// float noise(vec2 p) {
-// return fract(sin(dot(p, vec2(12.9898, 78.233))) * 43758.5453);
+// void main() {
+// // float pulse = sin(ubo.time * .2) * .5 + .5;
+// // outColor = vec4(fragColor * texture(texSampler, fragTexCoord).rgb * pulse, 1.0);
+// //outColor = texture(texSampler, fragTexCoord);
+// outColor = vec4(fragColor, 1);
+// // float repeat = 10;
+// // float f = mod(ubo.time, repeat);
+// // if (f < repeat / 2) {
+// // outColor = vec4(fragColor * radians(f) ,1);
+// // } else {
+// // outColor = vec4(fragColor * radians(1 - f) ,1);
+// // }
+// // //outColor = (vec4(1) * ubo.model + vec4(1)) * vec4(texture(texSampler, fragTexCoord).rgb * fragColor, 1.0);
// }
-// float smoothNoise(vec2 p) {
-// vec2 i = floor(p);
-// vec2 f = fract(p);
-// vec2 u = f * f * (3.0 - 2.0 * f);
-// return mix(mix(noise(i + vec2(0.0, 0.0)), noise(i + vec2(1.0, 0.0)), u.x),
-// mix(noise(i + vec2(0.0, 1.0)), noise(i + vec2(1.0, 1.0)), u.x), u.y);
-// }
+float noise(vec2 p) {
+ return fract(sin(dot(p, vec2(12.9898, 78.233))) * 43758.5453);
+}
-// float fbm(vec2 p) {
-// float value = 0.0;
-// float amplitude = 0.5;
-// for (int i = 0; i < 6; i++) {
-// value += amplitude * smoothNoise(p);
-// p *= 2.0;
-// amplitude *= 0.5;
-// }
-// return value;
-// }
+float smoothNoise(vec2 p) {
+ vec2 i = floor(p);
+ vec2 f = fract(p);
+ vec2 u = f * f * (3.0 - 2.0 * f);
+ return mix(mix(noise(i + vec2(0.0, 0.0)), noise(i + vec2(1.0, 0.0)), u.x),
+ mix(noise(i + vec2(0.0, 1.0)), noise(i + vec2(1.0, 1.0)), u.x), u.y);
+}
-// void main() {
-// vec2 uv = gl_FragCoord.xy / ubo.resolution.xy;
-// vec2 p = uv * 2.0 - vec2(1.0);
-// float n = fbm(p * 5.0 - vec2(0.0, ubo.time * 2.0));
-// outColor = vec4(n, n * 0.5, 0.0, 1.0) * vec4(texture(texSampler, fragTexCoord).rgb, 1.0);
-// }
+float fbm(vec2 p) {
+ float value = 0.0;
+ float amplitude = 0.5;
+ for (int i = 0; i < 6; i++) {
+ value += amplitude * smoothNoise(p);
+ p *= 2.0;
+ amplitude *= 0.5;
+ }
+ return value;
+}
+
+void main() {
+ vec2 uv = gl_FragCoord.xy / ubo.resolution.xy;
+ vec2 p = uv * 2.0 - vec2(1.0);
+ float n = fbm(p * 5.0 - vec2(0.0, ubo.time * 2.0));
+ outColor = vec4(n, n * 0.5, 0.0, 1.0) * vec4(texture(texSampler, fragTexCoord).rgb, 1.0);
+}
// void main() {