当前位置:   article > 正文

Unity之物体前后左右移动_unity移动能同时向左和向前吗?

unity移动能同时向左和向前吗?

一、使用轴

public class Move : MonoBehaviour {

    public float MoveSpeed;
    public float RotoSpeed;
    void Update () 
    {

        //方向轴的名字可以在Edit\project settings\input中修改
        float hor = Input.GetAxis("Horizontal");
        float ver = Input.GetAxis("Vertical");
        transform.Translate(new Vector3(0,0,ver * Time.deltaTime * MoveSpeed));
        transform.Rotate(new Vector3(0, hor * Time.deltaTime * RotoSpeed, 0));
    }
}
 

二、设置方向键

public float MoveSpeed;
    public float RotoSpeed;
    void Update () 
    {
        float hor = Input.GetAxis("Horizontal");
        float ver = Input.GetAxis("Vertical");

        if(Input.GetKey(KeyCode.W)||Input.GetKey(KeyCode.UpArrow))
        {
            transform.Translate(new Vector3(0, 0, 1) * MoveSpeed * Time.deltaTime);
        }
        if(Input.GetKey(KeyCode.S)||Input.GetKey(KeyCode.DownArrow))
        {
            transform.Translate(new Vector3(0, 0, -1) * MoveSpeed * Time.deltaTime);
        }
        if(Input.GetKey(KeyCode.A)||Input.GetKey(KeyCode.LeftArrow))
        {
            transform.Rotate(new Vector3(0, -1, 0) * RotoSpeed * Time.deltaTime);
        }
        if(Input.GetKey(KeyCode.D)||Input.GetKey(KeyCode.RightArrow))
        {
            transform.Rotate(new Vector3(0, 1, 0) * RotoSpeed * Time.deltaTime);
        }
    }
}

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号