Vector3.forwardを使ってZ軸を中心にオブジェクトを回転させる【Unity】

▼このように回転▼

z軸を中心に回転させる

オブジェクトをZ軸を中心にして回転させます。

目次

前提条件

  • 回転させたいオブジェクトにスクリプト(名前をPlayerControllerしました)がアタッチされている

だけです。そのスクリプトに書いていってください。

Z軸を中心に回転させるスクリプト

PlayerController.cs

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

public class PlayerController : MonoBehaviour
{
    Rigidbody rigidBody;

    // Use this for initialization
void Start()
{
        rigidBody = GetComponent<Rigidbody>();
}

    // Update is called once per frame
void Update()
{
        RotateObject();
}

    void RotateObject()
{
        if (Input.GetKey(KeyCode.A))
        {
            transform.Rotate(Vector3.forward);
        }

        if (Input.GetKey(KeyCode.D))
        {
            transform.Rotate(-Vector3.forward);
        }
}
}

 if (Input.GetKey(KeyCode.A))
{
//処理
}
Aキーが押されたときに処理を行う
transform.Rotate(Vector3.forward); z軸を中心に回転させる(Rotationのz軸の値が上がる)

z軸を中心に回転させる

このように回転します。RotationのZ軸の値が上がることによって回転させています。

回転するスピードを上げたい場合

PlayerController.cs

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

public class PlayerController : MonoBehaviour
{
    Rigidbody rigidBody;
    int speed = 10;

    // Use this for initialization
void Start()
{
        rigidBody = GetComponent<Rigidbody>();
}

    // Update is called once per frame
void Update()
{
        RotateObject();
}

    void RotateObject()
    {
        if (Input.GetKey(KeyCode.A))
        {
            transform.Rotate(Vector3.forward * speed);
        }

        if (Input.GetKey(KeyCode.D))
        {
            transform.Rotate(-Vector3.forward * speed);
        }
    }
}

Vector3.forwardに数値をかけることによって、回転するスピードがあがります。自分の望むスピードにしてください。

ちなみにこの記事を合わせるとロケットのようなものができるよ

あわせて読みたい
【Unity】任意のキー(A,Space,Dなど)を押したとき処理を設定できるInput.GetKey(KeyCode.A)の使い方 Spaceキーを押したときの処理を設定したいな Aキーを押したときこの処理したいな という悩みを解決します。 ●任意のキーを押したときの処理を設定する方法 if (Input.Ge...

この記事と組み合わせるとロケットのようなものができます。これも記事にする予定です。

まとめ

  • transform.Rotate(Vector3.forward);でz軸を中心に回転させることができる

以上さぎのみや(@saginomiya8)でした。

あわせて読みたい
【Unity2D&3Dサンプルゲーム】動画よりわかりやすく記事でゲームを作ろう【チュートリアル】 ▼この記事を先に見ておきましょう▼ https://miyagame.net/basis-cs/ 当サイトではUnityでのサンプルゲームを作成することができます。Unityでゲームを作っていきましょ...
Unityでオブジェクトをz軸を中心に回転

この記事が気に入ったら
いいね または フォローしてね!

よかったらシェアしてね!

コメント

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

目次