比如我创建了一个材质,材质设置为builtin-unlit。builtin-unlit材质上有一个MainColor属性(材质的颜色值),我要通过代码修改这个值怎么才做得到。
目前通过 meshRenderer.material.setProperty(“MainColor”,new Color(255,0,0,255));修改属性值无效。
通过获取材质属性方法
var property = meshRenderer.material.getProperty(“MainColor”);
console.log(“property”); //输出为null。证明材质的 setProperty 和 getProperty 都不能修改和获取到材质的属性值。
通过代码修改材质属性,unity可以轻易做得到
meshRenderer.material.SetFloat(“数值属性名”,属性值);
meshRenderer.material.SetTexture(“纹理属性名”,属性值);
meshRenderer.material.SetBoolean()
meshRenderer.material.SetInteger()
…
creator3d的设置材质属性只提供了setProperty,但是这个方法没什么用,设置不了属性。
目前还找不到办法用代码动态修改材质的纹理和颜色等属性,官方文档也没有解释
引擎方的同学给个答案啊,该怎么处理