Unityで3D脱出ゲーム

Unity 3D脱出ゲームの作り方その23:アニメーションを制御する方法

Unityで作る3D脱出ゲームの作り方を紹介している記事その23です。

僕が所属しているオンラインサロンの
先生である嶋津さんが作成された動画を
見ながら勉強した内容について、

3D脱出ゲームの作り方

としてまとめている記事になります。

その23となるこの記事では、

アニメーションを制御する方法

についてお伝えしています。

参考となる動画はこちらです。

【Unity3D】脱出ゲームの作り方 # 23アニメーションの制御

スポンサーリンク

この動画で勉強すること

▶︎Plateをアニメーションで開けたり閉めたりする方法を学ぶ。

目標1

アニメーションを制御するコードを書く準備をする。

=>スクリプトを作成する。(Plate)

=>PlateParentにPlateスクリプトをつける。

目標2

アニメーションを行うためのコードを書く。

=>クリックすると、Plateが開く関数を作る(Open関数)

=>もう一度クリックすると、Plateが閉まる関数を作る。(Close関数)

目標3

クリックした時の処理を作る。

=>PlateにEvent Triggerをつける。

=>Event Triggerを設定する。

目標4

開けたり閉めたりするアニメーションの制御を行うコードを書く。

=>Plateスクリプトにコードを書く。

Plateスクリプトのコード

アニメーションの制御を行うために
作成したPlateスクリプトのコードは
以下となります。

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

public class Plate : MonoBehaviour
{
    [SerializeField] Animator animator = default;
    bool isOpen = false;

    // やりたいこと
    // ・クリックすると、Openする(Animater)
    // ・もう一度クリックすると、Closeする(Animater)


    public void OnClickObj()
    {
        if(isOpen)
        {
            Close();
        }
        else
        {
            Open();
        }
    }


    void Open()
    {
        isOpen = true;
        animator.Play("PlateOpenAnim");
    }

    void Close()
    {
        isOpen = false;
        animator.Play("PlateCloseAnim");
    }
}

アニメーションの制御で勉強したことのまとめ

3D脱出ゲームの作り方その23
「アニメーションの制御」で
勉強した内容についてのまとめです。

Plateのアニメーション制御を
 行うには、まずC#スクリプトを
 作成し、PlateParentにつけます。

そして、Plateスクリプトに
 アニメーションを行うための
 コードを書きます。

次にクリックした時の処理を作成します。

そして最後にPlateを開けたり
 閉めたりするアニメーションを
 制御するためのコードを書きます。

以上の作業を行なった後にPlateを
クリックすると、Plateが開閉する
アニメーションを行うようになります。

「アニメーションの制御」の目標は以上で達成です!

スポンサーリンク

-Unityで3D脱出ゲーム