我想在游戏对象上应用纹理或颜色。到目前为止,我编写了此代码,但颜色部分不起作用。应用了纹理,所以至少有些事情是正确的。取决于我正在应用纹理或颜色的对象的类型,而不是同时应用两者。
如果我播放这个场景,我可以看到一个新材料被分配(我在检查器面板中看到它)但颜色为白色。
GameObject o = GameObject.Find(items[i].name + "/" + ifv.field_details.name);
if (o != null){
if (ifv.field_details.type_id.Equals(Strings.colorType)){
//set the color
string[] c = ifv.value.Split(',');
Color color = new Color(float.Parse(c[1]),float.Parse(c[2]),float.Parse(c[3]),float.Parse(c[0]));
Material material = new Material(Shader.Find("Diffuse"));
material.color = color;
o.renderer.material = material;
}
if (ifv.field_details.type_id.Equals(Strings.textureType)){
//set the texture
string url = Strings.texturesHost + ifv.value;
WWW www = new WWW (url);
yield return www;
o.renderer.material.mainTexture = www.texture;
}
}
知道为什么颜色if
声明不起作用吗?