MENU

【Unity 2D】カメラを揺らす

記事内に商品プロモーションが含まれる場合があります
目次

サンプルコード

using System.Collections;
using UnityEngine;

public class GameManager : MonoBehaviour
{
    Vector3 originalCameraPos;

    private void Start()
    {
        // カメラの位置を取得
        originalCameraPos = Camera.main.transform.position;
        Shake();
    }

    public void Shake()
    {
        StartCoroutine("CameraShake");
    }

    IEnumerator CameraShake()
    {
        // カメラを揺らす
        for (int i = 0; i < 5; i++)
        {
            Vector2 randomPos = Random.insideUnitCircle * 0.5f;
            Camera.main.transform.position = new Vector3(randomPos.x, randomPos.y, originalCameraPos.z);
            yield return null;
        }

        // カメラを元の位置に戻す
        Camera.main.transform.position = originalCameraPos;
    }
}

Unityが学べる書籍

Share

Comment

コメントする

目次