繁体   English   中英

获取图像的当前RGB颜色

[英]Getting current RGB color of Image

我想更改GameObjectimage(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

当将floatbyte ,如果通道为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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM