繁体   English   中英

Unity:我无法更改图像的不透明度或在 RGB 中更改其颜色

[英]Unity : I can't change the opacity of an image or change its color in RGB

在我的项目中,我想在运行时更改正方形的颜色,这只是一个带有Image组件的游戏 object。 在我的脚本中,我是这样进行的:

private Image imageRenderer;


imageRenderer = ImageCompleteSquat.GetComponent<Image>();
imageRenderer.color = Color.red;

在这种情况下,它可以正常工作,并且图像按预期变为红色。 但是一旦我通过像这样放置自己的 RGB 颜色来更改此行:

imageRenderer.color = new Color(227, 66, 52);

图像不再显示:它消失了。 有谁知道如何更改Image组件的颜色?

你可能想先设置 alpha 值

imageRenderer = ImageCompleteSquat.GetComponent<Image>();
var tempColor = Color.red;
tempColor.a = 1f; // change this value (floating point between 0 and 1)
imageRenderer.color = tempColor;

Color的文档中,每个颜色分量都是一个浮点值,范围从01 因此只需将传递给Color()的 arguments 除以 255

imageRenderer.color = new Color(227/255f, 66/255f, 52/255f);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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