From 3e66b57461300faa5ac7db731fe7b9491afcc040 Mon Sep 17 00:00:00 2001 From: Bixilon Date: Mon, 3 Jan 2022 14:57:15 +0100 Subject: [PATCH] disable mipmaps in hud, 1 in #49 --- .../minosoft/rendering/shader/hud/hud.fsh | 2 +- .../rendering/shader/includes/texture.glsl | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/main/resources/assets/minosoft/rendering/shader/hud/hud.fsh b/src/main/resources/assets/minosoft/rendering/shader/hud/hud.fsh index 96cb643d5..e5b3f047f 100644 --- a/src/main/resources/assets/minosoft/rendering/shader/hud/hud.fsh +++ b/src/main/resources/assets/minosoft/rendering/shader/hud/hud.fsh @@ -22,7 +22,7 @@ in vec4 finTintColor; #include "minosoft:texture" void main() { - vec4 texelColor = getTexture(finTextureIndex, finTextureCoordinates); + vec4 texelColor = getTexture(finTextureIndex, finTextureCoordinates, 0.0f); //texelColor = vec4(1.0f, 0.0f, 1.0f, 1.0f); diff --git a/src/main/resources/assets/minosoft/rendering/shader/includes/texture.glsl b/src/main/resources/assets/minosoft/rendering/shader/includes/texture.glsl index 3d9353ec4..f4cdb0447 100644 --- a/src/main/resources/assets/minosoft/rendering/shader/includes/texture.glsl +++ b/src/main/resources/assets/minosoft/rendering/shader/includes/texture.glsl @@ -29,3 +29,20 @@ vec4 getTexture(uint textureId, vec3 uv) { // ToDo: This method is just stupid a return texture(uTextures[0], uv); #endif } + +vec4 getTexture(uint textureId, vec3 uv, float mipmapLevel) { // ToDo: This method is just stupid and workarounds a opengl crash with mesa drivers + #if defined __NVIDIA || defined __AMD + return textureLod(uTextures[textureId], uv, mipmapLevel); + #else + switch (textureId) { + case 1u: return textureLod(uTextures[1], uv, mipmapLevel); + case 2u: return textureLod(uTextures[2], uv, mipmapLevel); + case 3u: return textureLod(uTextures[3], uv, mipmapLevel); + case 4u: return textureLod(uTextures[4], uv, mipmapLevel); + case 5u: return textureLod(uTextures[5], uv, mipmapLevel); + case 6u: return textureLod(uTextures[6], uv, mipmapLevel); + } + return textureLod(uTextures[0], uv, mipmapLevel); + #endif +} +