(Unity)スクリプトから3種類のマテリアルを切り替える

(方向)

・「エミッションオフ」「エミッションオン(インテンシティ弱)」「エミッションオン(インテンシティ強)」の3種類のマテリアルを用意

・スクリプトからこの3種類のマテリアルを切り替える


(スクリプト)

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class BlockManager : MonoBehaviour
{
    public Material[] materials;
    private int num = 0;

    void Update()
    {
        // (条件)スペースキーを押した時、
        if(Input.GetKeyDown(KeyCode.Space))
        {
            // (テクニック)順送りのアルゴリズム
            // numの数字が0,1,2,0,1,2,...のように順送りにループする
            num = (num + 1) % materials.Length;

            // 事前に用意した3種類のマテリアルを順番に切り替える。
            this.gameObject.GetComponent<MeshRenderer>().material = materials[num];
        }
    }
}

(設定)

・スクリプトをオブジェクトに追加

・空欄に事前に用意しておいた3種類のマテリアルを追加


(確認)

・設定が完了したらゲームを再生

・スペースキーを押すたびごとに、順番にマテリアルが切り替われば成功