From 8b2705a1f51f2b97e3c919c57b27b5f00c4c0e3f Mon Sep 17 00:00:00 2001 From: Bixilon Date: Sat, 20 Mar 2021 14:13:15 +0100 Subject: [PATCH] rendering: fix loading of newer versions --- .../data/assets/MinecraftAssetsManager.kt | 2 -- .../gui/rendering/hud/atlas/HUDAtlasElement.kt | 15 ++++++--------- .../minosoft/gui/rendering/textures/Texture.kt | 8 ++++++++ .../gui/rendering/textures/TextureArray.kt | 2 +- .../minosoft/rendering/shader/chunk_vertex.glsl | 2 +- 5 files changed, 16 insertions(+), 13 deletions(-) diff --git a/src/main/java/de/bixilon/minosoft/data/assets/MinecraftAssetsManager.kt b/src/main/java/de/bixilon/minosoft/data/assets/MinecraftAssetsManager.kt index 5ca65a1bc..9cc402b7d 100644 --- a/src/main/java/de/bixilon/minosoft/data/assets/MinecraftAssetsManager.kt +++ b/src/main/java/de/bixilon/minosoft/data/assets/MinecraftAssetsManager.kt @@ -169,7 +169,6 @@ class MinecraftAssetsManager( return ret.toMap() } - override fun getAssetSize(hash: String): Long { val file = File(FileAssetsManager.getAssetDiskPath(hash)) return if (file.exists()) { @@ -179,7 +178,6 @@ class MinecraftAssetsManager( } } - override fun getAssetSize(resourceLocation: ResourceLocation): Long { return getAssetSize(getAssetHash(resourceLocation)) } diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/hud/atlas/HUDAtlasElement.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/hud/atlas/HUDAtlasElement.kt index 47be202b7..19c49bad9 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/hud/atlas/HUDAtlasElement.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/hud/atlas/HUDAtlasElement.kt @@ -24,20 +24,17 @@ data class HUDAtlasElement( val binding: Vec2Binding, val slots: Map = mapOf(), ) : TextureLike { - private var _uvStart = Vec2() - private var _uvEnd = Vec2() - - override val uvStart: Vec2 - get() = _uvStart - override val uvEnd: Vec2 - get() = _uvEnd + override var uvStart: Vec2 = Vec2() + private set + override var uvEnd: Vec2 = Vec2() + private set override val size: Vec2i get() = binding.size fun postInit() { - _uvStart = Vec2(binding.start) * texture.arraySinglePixelSize - _uvEnd = (Vec2(binding.end) - Vec2(0, 1)) * texture.arraySinglePixelSize + uvStart = Vec2(binding.start) * texture.arraySinglePixelSize + uvEnd = (Vec2(binding.end) - Vec2(0, 1)) * texture.arraySinglePixelSize } companion object { diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/textures/Texture.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/textures/Texture.kt index 045716806..f30d875eb 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/textures/Texture.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/textures/Texture.kt @@ -90,7 +90,15 @@ class Texture( companion object { fun getResourceTextureIdentifier(namespace: String = ProtocolDefinition.DEFAULT_NAMESPACE, textureName: String): ResourceLocation { + var namespace = namespace var texturePath = textureName + + if (texturePath.contains(":")) { + val split = texturePath.split(":") + namespace = split[0] + texturePath = split[1] + } + texturePath = texturePath.removePrefix("/") if (!texturePath.startsWith("textures/")) { diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/textures/TextureArray.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/textures/TextureArray.kt index eee88765b..c9fa89d20 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/textures/TextureArray.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/textures/TextureArray.kt @@ -161,7 +161,7 @@ class TextureArray(val allTextures: MutableList) { private set fun initBuffer() { - animatedData = IntArray(32 * INTS_PER_ANIMATED_TEXTURE) // 4 data ints per entry + animatedData = IntArray(128 * INTS_PER_ANIMATED_TEXTURE) // 4 data ints per entry animatedBufferDataId = glGenBuffers() diff --git a/src/main/resources/assets/minosoft/rendering/shader/chunk_vertex.glsl b/src/main/resources/assets/minosoft/rendering/shader/chunk_vertex.glsl index deaef8635..3a4ba85f8 100644 --- a/src/main/resources/assets/minosoft/rendering/shader/chunk_vertex.glsl +++ b/src/main/resources/assets/minosoft/rendering/shader/chunk_vertex.glsl @@ -33,7 +33,7 @@ uniform mat4 viewProjectionMatrix; layout(std140) uniform AnimatedDataBuffer { - uvec4 globalAnimationData[32];// ToDo: WTF. Why 4 values?? + uvec4 globalAnimationData[128];// ToDo: WTF. Why 4 values?? };