C# 旋转附有子对象的游戏对象(Unity 2D)
所以我得到了这个代码来实例化我的游戏对象加农炮,巫婆有一个孩子“球”附加到它。当我使用左/右箭头键时,我试图围绕“大炮”旋转“球”C# 旋转附有子对象的游戏对象(Unity 2D),c#,unity3d,C#,Unity3d,所以我得到了这个代码来实例化我的游戏对象加农炮,巫婆有一个孩子“球”附加到它。当我使用左/右箭头键时,我试图围绕“大炮”旋转“球” using UnityEngine; using System.Collections; public class NewBehaviourScript : MonoBehaviour { public GameObject Cannon = null; public float speed = 1.0f; void Start ()
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);
}
}
}
这里没有向量3.left,这是向量3.right的倒数,所以你可以把它写成“-Vector3.right”。但是无论如何,你不应该通过你想要旋转的方向的矢量,而是你想要旋转的轴。在本例中,两个参数都使用Vector3.up,一个参数使用“*speed”,另一个参数使用“*-speed”。没有Vector3.left,这将是Vector3.right的倒数,因此您只需将其写成“-Vector3.right”。但是无论如何,你不应该通过你想要旋转的方向的矢量,而是你想要旋转的轴。在本例中,两个参数都使用Vector3.up,一个参数使用“*speed”,另一个参数使用“*-speed”。没有Vector3.left,这将是Vector3.right的倒数,因此您只需将其写成“-Vector3.right”。但是无论如何,你不应该通过你想要旋转的方向的矢量,而是你想要旋转的轴。在本例中,两个参数都使用Vector3.up,一个参数使用“*speed”,另一个参数使用“*-speed”。没有Vector3.left,这将是Vector3.right的倒数,因此您只需将其写成“-Vector3.right”。但是无论如何,你不应该通过你想要旋转的方向的矢量,而是你想要旋转的轴。在这种情况下,两个参数都使用Vector3.up,一个参数使用“*速度”,另一个参数使用“*-速度”。但是你有什么问题/问题?但是你有什么问题/问题?但是你有什么问题/问题?但是你有什么问题/问题?实际上有,不确定这是否在您发布回复后发生了变化:实际上有,不确定这是否在您发布回复后发生了变化:实际上有,不确定这是否在您发布回复后发生了变化:实际上有,不确定这是否在您发布回复后发生了变化: