我有一个导入的预制件
GameObject imagePrefab = Resources.Load("demonSkull") as GameObject;
image = GameObject.Instantiate(imagePrefab, imagePrefab.transform.position, imagePrefab.transform.rotation) as GameObject;
image.transform.SetParent(GameObject.Find("BattleCanvas").transform, false);
它在屏幕上显示得很好。
但是,后来我尝试用以下方法设置其颜色:
GameObject.Find("Foo").GetComponent<Image>().color = new Color32(0, 0, 0, 0);
由于某些奇怪的原因,它不会改变颜色。相反,图像会扩展以占据整个屏幕。
Unity 不会抛出错误。
知道是什么原因造成的吗?
你需要改变材质.颜色
通用:
gameObject.GetComponent().material.color = Color.green;