我想要统一更改相机颜色,我知道如何在脚本camera.backgroundColor = Color.red;
中更改它一次但是如何在每10秒间隔后更改它,是否有任何计时器可以在一定时间后调用。
谢谢
答案 0 :(得分:0)
您可以使用计时器,
Timer tm = new Timer(ChangeColor, cameraObject, 0, 1000);
private void ChangeColor(object camera)
{
//camera is your camera object
if (camera != null)
{
camera.backgroundColor = Color.red;
}
}
您还可以在ChangeColor方法中将颜色作为参数传递,以设置所需的颜色。
Timer tm = new Timer(ChangeColor, color, 0, 1000);
private void ChangeColor(object color)
{
Color backColor = color as Color;
// camera is member variable
if (color!= null)
{
camera.backgroundColor = backColor ;
}
}
或者您也可以将相机对象和颜色都作为元组传递。
答案 1 :(得分:0)
您可以使用Timer
,但我会在Update()
方法中使用简单条件解决此问题:
float elapsedTime;
void Update()
{
elapsedTime += Time.deltaTime;
if (elapsedTime >= 10)
{
elapsedTime -= 10;
// insert logic for changing color below:
camera.backgroundColor = Color.red;
}
}
在我看来,这更容易使用。