v5.4
This commit is contained in:
1 parent
aeadfb28b1
commit
3913b31374
20 files changed
+416
-79
No files matched your search
@@ -434,6 +434,8 @@
|
||||
"sputnik.module.jugadorfalso.desc": "spawns a fake player entity for testing purposes",
|
||||
"sputnik.module.jugadorfalso.name": "fake player",
|
||||
"sputnik.module.keypearl.nopearls": "you have no pearls",
|
||||
"sputnik.module.lsd.desc": "what the actual FUCK",
|
||||
"sputnik.module.lsd.name": "lsd",
|
||||
"sputnik.module.macekill.oops": "oops: %s",
|
||||
"sputnik.module.manos.desc": "changes the way hands are rendered",
|
||||
"sputnik.module.manos.name": "hands",
|
||||
@@ -963,6 +965,14 @@
|
||||
"sputnik.setting.jugadorfalso.general.nombre.desc": "what name to give the player",
|
||||
"sputnik.setting.jugadorfalso.general.nombre.name": "name",
|
||||
"sputnik.setting.key.reset": "keybind for module %s reset",
|
||||
"sputnik.setting.lsd.general.intensidad.desc": "how much the image is distorted and tinted",
|
||||
"sputnik.setting.lsd.general.intensidad.name": "strength",
|
||||
"sputnik.setting.lsd.general.rotaciones.desc": "how much the offset swirls; higher = more whirls",
|
||||
"sputnik.setting.lsd.general.rotaciones.name": "rotations",
|
||||
"sputnik.setting.lsd.general.tono.desc": "hue shift applied over the image",
|
||||
"sputnik.setting.lsd.general.tono.name": "hue",
|
||||
"sputnik.setting.lsd.general.velocidad.desc": "how fast the pattern moves (0 freezes it)",
|
||||
"sputnik.setting.lsd.general.velocidad.name": "speed",
|
||||
"sputnik.setting.manos.animaciones.animacionesviejas.desc": "like the 1.8 ones, when hitting",
|
||||
"sputnik.setting.manos.animaciones.animacionesviejas.name": "old animations",
|
||||
"sputnik.setting.manos.animaciones.nocomer.desc": "doesn't render the eating animation",
|
||||
|
||||
@@ -434,6 +434,8 @@
|
||||
"sputnik.module.jugadorfalso.desc": "invoca una entidad de jugador falsa por motivos de testeo",
|
||||
"sputnik.module.jugadorfalso.name": "jugador falso",
|
||||
"sputnik.module.keypearl.nopearls": "no tienes perlas",
|
||||
"sputnik.module.lsd.desc": "distorsiona y tiñe la pantalla",
|
||||
"sputnik.module.lsd.name": "lsd",
|
||||
"sputnik.module.macekill.oops": "upsi: %s",
|
||||
"sputnik.module.manos.desc": "modifica la manera en la que se renderizan las manos",
|
||||
"sputnik.module.manos.name": "manos",
|
||||
@@ -963,6 +965,14 @@
|
||||
"sputnik.setting.jugadorfalso.general.nombre.desc": "qué nombre asignarle al jugador",
|
||||
"sputnik.setting.jugadorfalso.general.nombre.name": "nombre",
|
||||
"sputnik.setting.key.reset": "tecla del módulo %s restablecida",
|
||||
"sputnik.setting.lsd.general.intensidad.desc": "cuánto se distorsiona y se tiñe la imagen",
|
||||
"sputnik.setting.lsd.general.intensidad.name": "intensidad",
|
||||
"sputnik.setting.lsd.general.rotaciones.desc": "cuántas vueltas da el desplazamiento; más = más remolinos",
|
||||
"sputnik.setting.lsd.general.rotaciones.name": "rotaciones",
|
||||
"sputnik.setting.lsd.general.tono.desc": "desplazamiento de tono que se aplica sobre la imagen",
|
||||
"sputnik.setting.lsd.general.tono.name": "tono",
|
||||
"sputnik.setting.lsd.general.velocidad.desc": "a qué ritmo se mueve el patrón (0 lo congela)",
|
||||
"sputnik.setting.lsd.general.velocidad.name": "velocidad",
|
||||
"sputnik.setting.manos.animaciones.animacionesviejas.desc": "como las de la 1.8, al pegar",
|
||||
"sputnik.setting.manos.animaciones.animacionesviejas.name": "animaciones viejas",
|
||||
"sputnik.setting.manos.animaciones.nocomer.desc": "no renderiza la animación de comer",
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
#version 330 core
|
||||
|
||||
layout(location = 0) in vec3 Position;
|
||||
layout(location = 1) in vec2 TexCoord;
|
||||
|
||||
out vec2 texCoord;
|
||||
|
||||
void main() {
|
||||
gl_Position = vec4(Position, 1.0);
|
||||
texCoord = TexCoord;
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#version 330
|
||||
|
||||
// copia el resultado de la pasada lsd (un objetivo intermedio) de vuelta al objetivo
|
||||
// principal: una pasada de post no puede leer y escribir la misma textura a la vez
|
||||
uniform sampler2D InSampler;
|
||||
|
||||
in vec2 texCoord;
|
||||
out vec4 fragColor;
|
||||
|
||||
void main() {
|
||||
fragColor = texture(InSampler, texCoord);
|
||||
}
|
||||
+16
-12
@@ -1,19 +1,23 @@
|
||||
#version 330 core
|
||||
#version 330
|
||||
|
||||
#define M_PI 3.1415926535897932384626433832795
|
||||
|
||||
layout(std140) uniform LsdUniforms {
|
||||
float strength;
|
||||
float seed;
|
||||
float time;
|
||||
float rotations;
|
||||
};
|
||||
|
||||
uniform sampler2D DiffuseSampler;
|
||||
uniform sampler2D InSampler;
|
||||
|
||||
in vec2 texCoord;
|
||||
out vec4 fragColor;
|
||||
|
||||
// 26.2 pasó los samplers con nombre a bind groups; los uniforms van en un bloque std140
|
||||
// que rellena LsdPostProcessor cada frame. el tiempo se lleva aquí en vez de leerlo de
|
||||
// Globals.GameTime porque ese es una fracción del día (se reinicia cada 24000 ticks) y
|
||||
// animaría la distorsión lentísimo con un salto cada 20 minutos
|
||||
layout(std140) uniform LsdConfig {
|
||||
float strength;
|
||||
float seed;
|
||||
float rotations;
|
||||
float time;
|
||||
};
|
||||
|
||||
vec4 permute(vec4 x){ return mod(((x*34.0)+1.0)*x, 289.0); }
|
||||
vec4 taylorInvSqrt(vec4 r){ return 1.79284291400159 - 0.85373472095314 * r; }
|
||||
vec3 fade(vec3 t) { return t*t*t*(t*(t*6.0-15.0)+10.0); }
|
||||
@@ -114,13 +118,13 @@ vec3 hueShift(vec3 color, float hueAdjust){
|
||||
}
|
||||
|
||||
void main() {
|
||||
vec2 oneTexel = vec2(1.0) / vec2(textureSize(DiffuseSampler, 0));
|
||||
vec2 oneTexel = vec2(1.0) / vec2(textureSize(InSampler, 0));
|
||||
|
||||
float perlin = cnoise(vec3(texCoord/oneTexel/100.0, time));
|
||||
float ang = radians(perlin * 360.0) * rotations;
|
||||
float s = sin(ang);
|
||||
float c = cos(ang);
|
||||
vec2 offset = vec2(s, c) * perlin;
|
||||
vec4 tex = texture(DiffuseSampler, texCoord + (offset * strength * 30.0) * oneTexel);
|
||||
vec4 tex = texture(InSampler, texCoord + (offset * strength * 30.0) * oneTexel);
|
||||
fragColor = mix(tex, vec4(hueShift(tex.rgb, seed * 2.0 * M_PI), 1.0), strength);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user