U3D中物体渐隐和闪烁的方法

以下代码都是copy别人的自己稍微修改了

第一个是闪烁

  private float calTime;//计时器
    void Start()
    {
        calTime = 0f;
    }
    void Update()
    {
        calTime += Time.deltaTime;//每一帧的间隔时间累加
        if (calTime % 2 > 0.5)//除以2余数大于0.5即每1秒显隐一次
        {
            gameobject.GetComponent<MeshRenderer>().enabled = true;
        }
        else
        {
            gameobject.GetComponent<MeshRenderer>().enabled = false;
        }
    }

第二个通过修改物体材质颜色的透明度来实现渐隐,每0.2秒透明度降低一次

    private float AlphaValue = 1.0f;//透明度
    private float time = 0.0f;//时间
    private bool state = false;
    void Update()
    {
        time += Time.deltaTime;
        if (time > 0.2f)
        {
            state = true;
            time = 0;
        }
        if (state)
        {
            AlphaValue -= 0.1f;

            state = false;
            if (AlphaValue <= 0)
            {
                AlphaValue = 1f;

            }
        }
        gameObject.GetComponent<MeshRenderer>().material.color = new Color(0.2f, 0.5f, 0.7f, AlphaValue);
    }

猜你喜欢

转载自blog.csdn.net/nihao561/article/details/80180264