[Unity] カメラに追従するGameObjectと複製(1)

今回はカメラに追従するGameObjectと任意のタイミングでGameObjectを複製する方法をシェアしたいと思います。

想定する動作

1)
カメラがどの方向を向いても常に画面中央にGameObjectが追従するようにします。

カメラの向きに応じてCubeオブジェクトが追従するので、常に画面の中心にCubeオブジェクトが表示される(下画面)。

2)
スペースキーを押すと、画面中央にGameObjectが複製され、スペースキーを押したタイミングの場所で固定されます。

カメラの向きを変えながらスペースキーを押すと、その時点でCubeオブジェクトが複製され固定化されます。

実装方法

カメラの向きをW(上)A(左)S(下)D(右)キーで操作できるようにする。

Assets内にScriptを新規作成します。
Script名は「RotationScript」としました。
以下サンプルコードとなります。

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

public class RotationScript : MonoBehaviour
{


    // Update is called once per frame
    void Update()
    {
        //Aキーを押している間はY軸に1加算して回転
        if (Input.GetKey("a"))
        {
            float x = 1;
            this.transform.Rotate(0.0f, x, 0.0f);

        }
        //Dキーを押している間はY軸に1減算して回転
        if (Input.GetKey("d"))
        {
            float x = -1;
            this.transform.Rotate(0.0f, x, 0.0f);

        }
        //Wキーを押している間はY軸に1加算して回転
        if (Input.GetKey("w"))
        {
            float x = -1;
            this.transform.Rotate(x, 0.0f, 0.0f);

        }
        //Sキーを押している間はY軸に1減算して回転
        if (Input.GetKey("s"))
        {
            float x = 1;
            this.transform.Rotate(x, 0.0f, 0.0f);

        }
    }
}

このScriptをCameraオブジェクトにアタッチすることにより、カメラの回転をキーボードから操作することが可能になります。

次回は、このカメラに追従するCubeオブジェクトを配置する方法と任意のタイミングでCubeオブジェクトを複製する方法を紹介したいと思います。

木曜日担当:nishida



アプリ関連ニュース

お問い合わせはこちら

お問い合わせ・ご相談はお電話、またはお問い合わせフォームよりお受け付けいたしております。

tel. 06-6454-8833(平日 10:00~17:00)

お問い合わせフォーム