[英]Getting current RGB color of Image
我想更改GameObject
的image(script)
组件的Alpha颜色。
但是保存对象的RGB值。
我尝试了下一个代码:
targetObject.GetComponent<Image>().color = new Color32(
(byte)targetObject.GetComponent<Image>().color.r,
(byte)targetObject.GetComponent<Image>().color.g,
(byte)targetObject.GetComponent<Image>().color.b,
toAlpha);
但是(byte)targetObject.GetComponent<Image>().color.r
返回0如此。
有任何想法吗?
结构Color
使用[0,1]范围内的通道值。 因此,白色为(1,1,1,1),黑色为(0,0,0,0)。 color
专有性返回Color
结构,而不是Color32
。
当将float
为byte
,如果通道为1,则结果将为1;如果小于1,则结果为0。因为您正在Color32
结构中使用这些值(每个通道的int
范围为[0,255] ]),如果起始颜色为全白色,则几乎为(1,1,1,1)黑色,如果任何频道未满(即,使用整数小于255),则该频道将为满关。
只需将new Color32
更改为new Color
并删除(byte)
new Color32
转换。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.