こんにちは、のっくんです。
Unityで脱出ゲーム用にライトをオン・オフするためのスイッチを作ってみました。
- スイッチが押される
- アニメーションを動かす
- ライトを制御する
処理をしています。
スイッチはBlenderで作ったものを持ってきました。
アニメーションはUnityの録画機能を使い、各時間でスイッチの角度を変えることで作成します。
合計3つのアニメーションを作成しました。
- スイッチOff
- スイッチOn
- 何もしない(アイドル)

アニメーターで、デフォルトで何もしない状態に遷移するようにします。
スイッチが押されたらスクリプトでスイッチオフ、スイッチオンに切り替えます。
using UnityEngine; public class Switch : MonoBehaviour { [SerializeField] Animator _animator; [SerializeField] GameObject light; public bool on = true; public void onSwitch() { if (on) { _animator.Play("SwitchOff"); light.SetActive(false); } else { _animator.Play("SwitchOn"); light.SetActive(true); } on = !on; } }
以上です。