ポリゴンの色を明滅させる

ポリゴンの色を明滅させる

オブジェクトをクリック中明滅させます。パズルのピースが正解位置にある時や、ショットを喰らった敵機の色変化等にも利用できそう。

using UnityEngine;
using System.Collections;

public class PolyFlicker : MonoBehaviour
{
  Color preColor, color;
   float flickTime;
   bool flickEnable;
   const float FLICK_SPEED = 2.0f;
   
   void Awake ()
   {
       preColor = this.renderer.material.color;
       color = preColor;
       flickTime = 0;
   }

  // Update is called once per frame
   void Update ()
   {
       if (flickEnable) {
           flickTime += Time.deltaTime * FLICK_SPEED;
           //ここで明滅させている PingPongで値を前後させLerpでなだらかに繋げて色を変化させている
           color = Color.Lerp (preColor, preColor * 1.5f, Mathf.PingPong (flickTime, 1.0f));
       }
       this.renderer.material.color = color;
   }
   
   void OnMouseDown ()
   {
       flickEnable = true;
   }
   
   void OnMouseUp ()
   {
       flickEnable = false;
       color = preColor;
       flickTime = 0;
   }
}

メニュー



  • 最終更新:2014-06-13 10:48:34

このWIKIを編集するにはパスワード入力が必要です

認証パスワード