通過鍵盤上↑、↓、←、→實現對物體的控制

using System.Collections; using System.Collections.Generic; using UnityEngine; public class Gary_Text : MonoBehaviour { public Transform WuTi; public float speed = 1; // Use this for initialization void Start () { } // Update is called once per frame void Update () { //上 if(Input.GetKey(KeyCode.UpArrow)) { transform.eulerAngles = new Vector3(0, 0, 0); transform.position += transform.forward * speed; } //下 else if (Input.GetKey(KeyCode.DownArrow)) { transform.eulerAngles = new Vector3(0, 180, 0); transform.position += transform.forward * speed; } //左 else if (Input.GetKey(KeyCode.LeftArrow)) { transform.eulerAngles = new Vector3(0, 270, 0); transform.position += transform.forward * speed; } //右 else if (Input.GetKey(KeyCode.RightArrow)) { transform.eulerAngles = new Vector3(0, 90, 0); transform.position += transform.forward * speed; } } }
實現過程
GameObject->3D Object->Sphere創建一個Sphere作為被移動物體對象
在Sphere物體上綁定Gary_Text.cs腳本
可以在工程界面修改游戲速度speed值,默認是1
//引用控制移動物體腳本 public Transform WuTi; //設置物體移動的速度,設置為public使在游戲界面可控制 public float speed = 1;
在Updata()中跟新物體的坐標
void Update () { //上 if(Input.GetKey(KeyCode.UpArrow)) { transform.eulerAngles = new Vector3(0, 0, 0); transform.position += transform.forward * speed; } //下 else if (Input.GetKey(KeyCode.DownArrow)) { transform.eulerAngles = new Vector3(0, 180, 0); transform.position += transform.forward * speed; } //左 else if (Input.GetKey(KeyCode.LeftArrow)) { transform.eulerAngles = new Vector3(0, 270, 0); transform.position += transform.forward * speed; } //右 else if (Input.GetKey(KeyCode.RightArrow)) { transform.eulerAngles = new Vector3(0, 90, 0); transform.position += transform.forward * speed; } }
======分割線Σ(= =!)...=======
工具欄Edit->Project Settings ->Input可打開輸入設備管理器對用戶
Horizeontal -> 監聽物體水平移動
Vertival ->監聽物體豎直移動
。。。。。。
還很多,要學習