From a858bf28df3a39235b46a905d3c6b6b1b43eb9a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Bl=C3=A1ha?= Date: Sat, 31 Aug 2024 18:09:33 +0200 Subject: [PATCH] shader updates --- src/shaders/fragment_to_equirectangular.glsl | 13 +++++++------ src/shaders/fragment_to_mercator.glsl | 13 +++++++------ 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/shaders/fragment_to_equirectangular.glsl b/src/shaders/fragment_to_equirectangular.glsl index 94240ba..f94fdd8 100644 --- a/src/shaders/fragment_to_equirectangular.glsl +++ b/src/shaders/fragment_to_equirectangular.glsl @@ -1,11 +1,12 @@ #version 330 + in vec2 fragCoord; out vec4 fragColor; -uniform sampler2D texture; +uniform sampler2D textureSampler; -#define M_PI 3.1415926535897932 -#define M_E 2.7182818284590452 -#define M_MAX 1.4844222297453324 +const float M_PI = 3.1415926535897932; +const float M_E = 2.7182818284590452; +const float MERC_MAX = 1.4844222297453324; float remap(float value, float oldMin, float oldMax, float newMin, float newMax) { @@ -15,7 +16,7 @@ float remap(float value, float oldMin, float oldMax, float newMin, float newMax) vec2 equi_to_merc(float u, float v) { // uv to equirectangular - float lon = remap(v, 0, 1, -M_MAX, M_MAX); + float lon = remap(v, 0, 1, -MERC_MAX, MERC_MAX); // equirectangular to mercator float y = log(tan(M_PI / 4 + lon / 2)); @@ -29,5 +30,5 @@ vec2 equi_to_merc(float u, float v) void main() { vec2 uv = equi_to_merc(fragCoord.x, fragCoord.y); - fragColor = texture2D(texture, uv); + fragColor = texture(textureSampler, uv); } \ No newline at end of file diff --git a/src/shaders/fragment_to_mercator.glsl b/src/shaders/fragment_to_mercator.glsl index 611f975..6d05626 100644 --- a/src/shaders/fragment_to_mercator.glsl +++ b/src/shaders/fragment_to_mercator.glsl @@ -1,11 +1,12 @@ #version 330 + in vec2 fragCoord; out vec4 fragColor; -uniform sampler2D texture; +uniform sampler2D textureSampler; -#define M_PI 3.1415926535897932 -#define M_E 2.7182818284590452 -#define M_MAX 1.4844222297453324 +const float M_PI = 3.1415926535897932; +const float M_E = 2.7182818284590452; +const float MERC_MAX = 1.4844222297453324; float remap(float value, float oldMin, float oldMax, float newMin, float newMax) { @@ -21,7 +22,7 @@ vec2 merc_to_equi(float u, float v) float y = 2 * atan(pow(M_E, lon)) - M_PI * 0.5; // equirectangular to uv - y = remap(y, -M_MAX, M_MAX, 0, 1); + y = remap(y, -MERC_MAX, MERC_MAX, 0, 1); return vec2(u, y); } @@ -29,5 +30,5 @@ vec2 merc_to_equi(float u, float v) void main() { vec2 uv = merc_to_equi(fragCoord.x, fragCoord.y); - fragColor = texture2D(texture, uv); + fragColor = texture(textureSampler, uv); } \ No newline at end of file