From b3edaa7bd7dc1066034a77794aaf77e38e4eeb81 Mon Sep 17 00:00:00 2001 From: Relintai Date: Wed, 29 Dec 2021 00:07:37 +0100 Subject: [PATCH] Fixed uvs and normals for the box. --- .../utilities/mesh_add_utils.gd | 35 ++++++++++++------- 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/game/addons/mesh_data_resource_editor/utilities/mesh_add_utils.gd b/game/addons/mesh_data_resource_editor/utilities/mesh_add_utils.gd index 1bb223cc..b2cf5ae3 100644 --- a/game/addons/mesh_data_resource_editor/utilities/mesh_add_utils.gd +++ b/game/addons/mesh_data_resource_editor/utilities/mesh_add_utils.gd @@ -1,6 +1,17 @@ extends Object static func add_box(mdr : MeshDataResource) -> void: + var arrays : Array = mdr.get_array() + + if arrays.size() != ArrayMesh.ARRAY_MAX: + arrays.resize(ArrayMesh.ARRAY_MAX) + + arrays[ArrayMesh.ARRAY_VERTEX] = PoolVector3Array() + arrays[ArrayMesh.ARRAY_NORMAL] = PoolVector3Array() + arrays[ArrayMesh.ARRAY_TEX_UV] = PoolVector2Array() + arrays[ArrayMesh.ARRAY_INDEX] = PoolIntArray() + + var st : SurfaceTool = SurfaceTool.new() st.begin(Mesh.PRIMITIVE_TRIANGLES) @@ -9,39 +20,39 @@ static func add_box(mdr : MeshDataResource) -> void: #z for i in range(2): - st.add_uv(Vector2()) + st.add_uv(Vector2(0, 1)) st.add_vertex(Vector3(-0.5, -0.5, sgn * 0.5)) - st.add_uv(Vector2()) + st.add_uv(Vector2(0, 0)) st.add_vertex(Vector3(-0.5, 0.5, sgn * 0.5)) - st.add_uv(Vector2()) + st.add_uv(Vector2(1, 0)) st.add_vertex(Vector3(0.5, 0.5, sgn * 0.5)) - st.add_uv(Vector2()) + st.add_uv(Vector2(1, 1)) st.add_vertex(Vector3(0.5, -0.5, sgn * 0.5)) sgn *= -1 #x for i in range(2): - st.add_uv(Vector2()) + st.add_uv(Vector2(0, 1)) st.add_vertex(Vector3(sgn * 0.5, -0.5, 0.5)) - st.add_uv(Vector2()) + st.add_uv(Vector2(0, 0)) st.add_vertex(Vector3(sgn * 0.5, 0.5, 0.5)) - st.add_uv(Vector2()) + st.add_uv(Vector2(1, 0)) st.add_vertex(Vector3(sgn * 0.5, 0.5, -0.5)) - st.add_uv(Vector2()) + st.add_uv(Vector2(1, 1)) st.add_vertex(Vector3(sgn * 0.5, -0.5, -0.5)) sgn *= -1 #y for i in range(2): - st.add_uv(Vector2()) + st.add_uv(Vector2(0, 1)) st.add_vertex(Vector3(-0.5, sgn * 0.5, 0.5)) - st.add_uv(Vector2()) + st.add_uv(Vector2(0, 0)) st.add_vertex(Vector3(-0.5, sgn * 0.5, -0.5)) - st.add_uv(Vector2()) + st.add_uv(Vector2(1, 0)) st.add_vertex(Vector3(0.5, sgn * 0.5, -0.5)) - st.add_uv(Vector2()) + st.add_uv(Vector2(1, 1)) st.add_vertex(Vector3(0.5, sgn * 0.5, 0.5))