ゲーム画面全体の色を、数秒間だけ変えられる仕組みをつくってみましょう。
今回の例では、クリックすると0.5秒間だけ画面全体が赤色に変わります。
ダメージを受けたときの視覚効果として使える仕組みです。
関連記事:
画面を揺らす
画面全体のカラーを数秒間だけ変える
UI > パネルを作成します。
画面の端まですべて隠れるように、スケールを少し拡大し、カラーの設定を行います。
ゲームビューではこのように見えています。
スタート時にはパネルは非表示にしたいので、チェックを外します。
空のオブジェクトを作成します。
ScreenScript.csを作成し、GameObject(空のオブジェクト)に追加します。
ScreenScript.csを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ScreenScript : MonoBehaviour { [SerializeField] GameObject panel; void Start() { panel.SetActive(false); } void Update() { if(Input.GetMouseButtonDown(0)) { panel.SetActive(true); Invoke("PanelHide", 0.5f); } } void PanelHide() { panel.SetActive(false); } } |
パネルのフィールドに、Panelを入れます。
ゲームプレイしてみましょう。
画面上をクリックすると、全体の色が変わり、0.5秒経てば元に戻ります。
関連記事:
画面を揺らす