如何在godot的gd脚本中的网格实例上设置空间材质的纹理

问题描述

我有一个网格实例,我想要一个函数,该函数接收一个 png 文件文件路径并将其添加到空间材质中,然后将该材质添加到网格实例中。我尝试使用以下方法

var mat = SpatialMaterial.new() 
var tex = Texture.new() 
tex.resource_path = "res://icon.png" 
mat.albedo_texture = tex 
mesh.material_override = mat

但它在第 3 行返回了这个错误Invalid set index 'resource_path' (on base: 'Nil') with value of type 'String'.

如果您能提供帮助,请提前致谢。

解决方法

我终于弄明白了。我只需要使用加载功能。以下代码有效:

var mat = SpatialMaterial.new() 
var tex = load("res://icon.png")
mat.albedo_texture = tex 
mesh.material_override = mat