private float rotaSpeed = 5f;
private float timer = 1;
private bool flag = true;
private float delay = 4.0f;
void Update ()
{
if (timer <= 0)
{
flag = false;
}
if (flag == false)
{
timer += Time.deltaTime / delay;
}
if (timer >= 1)
{
flag = true;
}
if (flag == true)
{
timer -= Time.deltaTime / delay;
}
var render = Cube.GetComponent<Renderer>();
if (render != null)
{
var r = render.material.color.r;
var g = render.material.color.g;
var b = render.material.color.b;
render.material.color = new Color(r, g, b, timer);
}
//cube自转
Cube.transform.Rotate(new Vector3(0, -1, 0), Time.deltaTime * rotaSpeed);
}
本文介绍了一个Unity脚本示例,通过该脚本可以使3D对象的颜色随时间变化并实现自转效果。具体实现了颜色透明度从0到1的渐变、3D对象的自转,并使用了延迟来控制变化速度。
6185

被折叠的 条评论
为什么被折叠?



