From 7a1133200e9e262e1cca15e9432e84e7cc1fc899 Mon Sep 17 00:00:00 2001 From: Moritz Zwerger Date: Mon, 31 Jul 2023 21:45:59 +0200 Subject: [PATCH] add stairs tests Rotating with uvlock an odd number is failing. --- .../gui/rendering/models/baked/UVLockTest.kt | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/integration-test/kotlin/de/bixilon/minosoft/gui/rendering/models/baked/UVLockTest.kt b/src/integration-test/kotlin/de/bixilon/minosoft/gui/rendering/models/baked/UVLockTest.kt index 1031ef2d7..58611c9d7 100644 --- a/src/integration-test/kotlin/de/bixilon/minosoft/gui/rendering/models/baked/UVLockTest.kt +++ b/src/integration-test/kotlin/de/bixilon/minosoft/gui/rendering/models/baked/UVLockTest.kt @@ -27,6 +27,8 @@ import de.bixilon.minosoft.gui.rendering.models.baked.BakedModelTestUtil.createF import de.bixilon.minosoft.gui.rendering.models.baked.BakedModelTestUtil.createTextureManager import de.bixilon.minosoft.gui.rendering.models.block.BlockModel import de.bixilon.minosoft.gui.rendering.models.block.element.ModelElement +import de.bixilon.minosoft.gui.rendering.models.block.element.face.FaceUV +import de.bixilon.minosoft.gui.rendering.models.block.element.face.ModelFace import de.bixilon.minosoft.gui.rendering.models.block.state.apply.SingleBlockStateApply import de.bixilon.minosoft.gui.rendering.models.block.state.baked.BakingUtil.positions import de.bixilon.minosoft.gui.rendering.textures.TextureUtil.texture @@ -113,4 +115,24 @@ class UVLockTest { baked.assertFace(Directions.DOWN, positions(Directions.DOWN, from, Vec3(0.5f, 1.0f, 1.0f)), block(0, 16, 0, 0, 8, 0, 8, 16), 0.5f) baked.assertFace(Directions.UP, positions(Directions.UP, from, Vec3(0.5f, 1.0f, 1.0f)), block(0, 0, 8, 0, 8, 16, 0, 16), 1.0f) } + + fun `stairs top y=270`() { + val from = Vec3(0.5f, 0.5f, 0.0f) + val to = Vec3(1.0f, 1.0f, 1.0f) + val model = SingleBlockStateApply(BlockModel(elements = listOf(ModelElement(from, to, faces = mapOf(Directions.UP to ModelFace("#test", FaceUV(8, 0, 16, 16), 0, -1)))), textures = mapOf("test" to minecraft("block/test").texture())), uvLock = true, y = 3) + + val baked = model.bake(createTextureManager("block/test"))!! + + baked.assertFace(Directions.UP, positions(Directions.UP, Vec3(0, 0.5, 0), Vec3(1, 1, 0.5f)), block(0, 0, 16, 0, 16, 8, 0, 8), 1.0f) + } + + fun `stairs top 2 y=270`() { + val from = Vec3(0.5f, 0.5f, 0.0f) + val to = Vec3(1.0f, 1.0f, 1.0f) + val model = SingleBlockStateApply(BlockModel(elements = listOf(ModelElement(from, to, faces = mapOf(Directions.UP to ModelFace("#test", FaceUV(0, 0, 8, 16), 0, -1)))), textures = mapOf("test" to minecraft("block/test").texture())), uvLock = true, y = 3) + + val baked = model.bake(createTextureManager("block/test"))!! + + baked.assertFace(Directions.UP, positions(Directions.UP, Vec3(0, 0.5, 0), Vec3(1, 1, 0.5f)), block(0, 8, 16, 8, 16, 16, 0, 16), 1.0f) + } }