旋转附带有子的游戏对象(Unity 2D)

时间:2015-06-09 12:57:42

标签: c# unity3d

所以我得到了这个代码来实例化我的游戏对象Cannon,女巫有一个孩子"球"附在它上面。我试图旋转"球"围绕"加农炮"当我使用左/右箭头键时。

using UnityEngine;
using System.Collections;

public class NewBehaviourScript : MonoBehaviour {

    public GameObject Cannon = null;
    public float speed = 1.0f;

    void Start () {
         Cannon = Instantiate (Resources.Load ("Prefabs/Cannon")) as GameObject;
    }

    // Update is called once per frame
    void Update () {

        if (Input.GetKey(KeyCode.LeftArrow)){
            Cannon.transform.Rotate(Vector3.left * speed * Time.deltaTime);
        }
        if (Input.GetKey(KeyCode.RightArrow)){
            Cannon.transform.Rotate(Vector3.right * speed * Time.deltaTime);
        }
    }
}

1 个答案:

答案 0 :(得分:3)

没有Vector3.left,这将是Vector3.right的反转,因此您只需将其写为" -Vector3.right"。但无论如何,你不应该传递你想要在中旋转的方向的vector3,而是想要在周围旋转的轴。在这种情况下,您将使用Vector3.up作为两个参数,并使用" * speed"一个,和#34; *速度"为了另一个。