1.PC平台的控制器,使用前需调整unity里的InputManager。
public float speed = 3;
public float Invert = 90;
// Update is called once per frame
void Update()
{
//保持移动前位置
Vector3 lastPosition = transform.position;
//按下w或方向键上向前移动
transform.Translate(Vector3.forward * Input.GetAxis("Forward") * Time.deltaTime * speed/*, Space.World*/);
//Animation.Play("run"); //Unity5后的版本取消了Animation.Play方法,取用this.gameObject.GetComponent<Animation>().Play()方法
//按下s向方向键下后移动
transform.Translate(Vector3.back * Input.GetAxis("Back") * Time.deltaTime * speed/*, Space.World*/);
//Animation.Play("run");
//按下a方向键左向左移动
transform.Translate(Vector3.left * Input.GetAxis("Left") * Time.deltaTime * speed/*, Space.World*/);
//Animation.Play("run");
//按下d方向键右向右移动
transform.Translate(Vector3.right * Input.GetAxis("Right") * Time.deltaTime * speed/*, Space.World*/);
//Animation.Play("run");
//按下空格向上移动
//transform.Translate(Vector3.up * Input.GetAxis("Up") * Time.deltaTime * speed/*, Space.World*/);
//Animation.Play("run");
//按下左Ctrl向下移动
//transform.Translate(Vector3.down * Input.GetAxis("Down") * Time.deltaTime * speed/*, Space.World*/);
//Animation.Play("run");
//设置是否角色面向移动方向
/*transform.LookAt(transform.position + transform.position - lastPosition);*/
//Animation.Play("run");
//设置是否随鼠标改变视角
/*
float CameraX = Input.GetAxis("Mouse X");
float CameraY = Input.GetAxis("Mouse Y");
Vector3 Angle = new Vector3(CameraY * Time.deltaTime * Invert, -CameraX * Time.deltaTime * Invert, 0);
transform.eulerAngles -= Angle;
//Animation.Play("run");
*/
//设置旋转视角
//transform.Rotate(Vector3.up * Input.GetAxis("Rotation") * angle * Time.deltaTime/*, Space.World*/);
//Animation.Play("run");
}
2.安卓平台使用Easy Touch插件,个人觉得不错