如何在网格实例上设置纹理(空间材料)?

时间:2019-05-19 18:07:51

标签: godot

我正在尝试在使用表面工具生成的四边形上设置纹理。在网格实例上,我设置了空间材质的材质替代。然后在反照率部分将纹理设置为png文件。我使用的纹理是带有Alpha通道的16 x 16 png。纹理的上半部分是红色,下半部分是蓝色。运行代码时,我看到一个四边形,它是一种纯色,而紫色。我是godot的新手,完全迷失了错误。任何帮助表示赞赏。

extends MeshInstance

func _ready():

  var surfTool = SurfaceTool.new()
  var mesh = Mesh.new()
  var vert_array = Array()
  var uv_array = Array()
  var st = SurfaceTool.new()

  vert_array.push_back(Vector3(0,0,0))
  vert_array.push_back(Vector3(0,1,0))
  vert_array.push_back(Vector3(1,1,0))

  vert_array.push_back(Vector3(0,0,0))
  vert_array.push_back(Vector3(1,1,0))
  vert_array.push_back(Vector3(1,0,0))

  uv_array.push_back(Vector2(0,0))
  uv_array.push_back(Vector2(0,1))
  uv_array.push_back(Vector2(1,1))

  uv_array.push_back(Vector2(0,0))
  uv_array.push_back(Vector2(1,1))
  uv_array.push_back(Vector2(1,0))

  st.begin(Mesh.PRIMITIVE_TRIANGLES)
  for i in range(6):
    st.add_vertex(vert_array[i])
    st.add_uv(uv_array[i])
  st.commit(mesh)
  self.set_mesh(mesh)

1 个答案:

答案 0 :(得分:0)

godot mesh intance

您可以在检查面板中远程进行操作。 转到几何-材质替代-并制作新的空间材质。