代碼動態修改材質球的顏色:
gameObject.GetComponent<Renderer>().material.color=Color.red;//當材質球的Shader為標准時,可直接使用此方法修改顏色值 gameObject.GetComponent<Renderer>().material //得到的material是經過實例化之后的material(Instantiate) Color color=new Color(0.5f,0.5f,0.5f,.0.5f);//修改顏色的RGB數值時,填入的值為float類型,且值為:數值/255 gameObject.GetComponent<Renderer>().material.SetColor("_TintColor",color);//若材質的Shader為Particles時,可使用此方法改變顏色
unity3d 用到 renderer.material.color.a 總是出現下面錯誤怎么解決?
Cannot modify a value type return value of `UnityEngine.Material.color' Consider storing the value in a temporary variable
//錯誤用法
renderer.material.color.a
//正確用法 Color c = renderer.material.color; c.a = 0.4; renderer.material.color = c;
unity中代碼使用(R,G,B)顏色值需要除255f,顏色值才會生效。
label.effectColor = new Color(39f / 255f, 83f / 255f, 150f / 255f);
