您的位置:首页 > 移动开发 > Unity3D

简述unity中material.color及Color.Lerp线性插值的用法

2017-02-23 16:58 615 查看
                                       代码:
using UnityEngine;
using System.Collections;

public class Colorr : MonoBehaviour {

public Color colorStart = Color.red;
public Color colorEnd = Color.blue;
public float time = 1f;
public Renderer ren;
void Start () {
ren = GetComponent<Renderer>();
}

// Update is called once per frame
void Update () {
float lerp = Mathf.PingPong(Time.time, time) / time;

ren.material.color = Color.Lerp(colorStart, colorEnd, lerp);

}
}

                    Render组件和transform,rigidbody一样需获得其组件,然后再调用相关方法,修改Render的相关属性,Renderer下有一个成员变量material是返回分配给材质器的

     第一个材质,注意和materials区别(返回所有材质)。material.color是获得颜色。

               Color.Lerp(colorStart,colorEnd,lerp) 是在开始颜色和结束颜色中线性选择颜色赋值给material.color,lerp是循环的时间(后述)。

              

              代码效果:将脚本赋予一个cube,则看到cube不停变换颜色,在red到blue之间。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: