【Unity】回転させるブロック(GameObject)を作る

Unity

スポンサーリンク

フレーム毎に回転し続けるブロック(GameObject)を作る方法を紹介します。

回転するブロック(GameObject)を作成

1.例としてCubeを設置します。名前はCubeRotationにします。※わかりやすいようにMaterialで赤色を付けています。

回転し続けるスクリプトを作成

1.Rotation.csという名前のスクリプトを作成して、以下のコードを記載する。

using UnityEngine;

public class Rotation : MonoBehaviour
{
    /// <summary>
    /// X軸を基点に回転する速さ
    /// </summary>
    [SerializeField]
    private float rotAngleX = 2.0f;

    /// <summary>
    /// Y軸を基点に回転する速さ
    /// </summary>
    [SerializeField]
    private float rotAngleY = 2.0f;

    /// <summary>
    /// Z軸を基点に回転する速さ
    /// </summary>
    [SerializeField]
    private float rotAngleZ = 2.0f;

    // Update is called once per frame
    void Update()
    {
        // フレームごとに回転させる
        transform.Rotate(rotAngleX, rotAngleY, rotAngleZ);
    }
}

スクリプトを回転させたいブロック(GameObject)にアタッチする

1.Rotation.csを消したいブロック(CubeRotationオブジェクト)にアタッチする。

完成

これでブロックが回転し続けている。

回転する速さや、軸を変えたい場合は、Inspectorタブの"Rot Angle X"、"Rot Angle Y"、"Rot Angle Z"の値を適宜変えればよいです。
数値を0にすれば、その軸での回転は停止します。

Unity

Posted by ton