鍵盤的上下左右控制
我們可以使用Input.GetKey()函式來讀取按下鍵盤的鍵值,下列程式分別用來讀取上下左右鍵:- Input.GetKey(KeyCode.UpArrow)表示是按下向上鍵。
- Input.GetKey(KeyCode.DownArrow)表示是按下向下鍵。
- Input.GetKey(KeyCode.LeftArrow)表示是按下向左鍵。
- Input.GetKey(KeyCode.RightArrow)表示是按下向右鍵。
3D向量資料型態Vector3
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour {
public float moveSpeed = 10f;
public float turnSpeed = 50f;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if (Input.GetKey(KeyCode.UpArrow))
transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime);
if (Input.GetKey(KeyCode.DownArrow))
transform.Translate(-Vector3.forward * moveSpeed * Time.deltaTime);
if (Input.GetKey(KeyCode.LeftArrow))
transform.Rotate(Vector3.up, -turnSpeed * Time.deltaTime);
if (Input.GetKey(KeyCode.RightArrow))
transform.Rotate(Vector3.up, turnSpeed * Time.deltaTime);
}
}
- Vecto.forward 表示 Vector3(0, 0, 1
- Vecto.back表示 Vector3(0, 0, -1)
- Vector.up 表示Vector3(0, 1, 0)
- Vector.down 表示Vector3(0, -1, 0)
- Vector.left 表示Vector3(-1, 0, 0)
- Vector.right 表示Vector3(1, 0, 0)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour {
public float moveSpeed = 10f;
public float turnSpeed = 50f;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if (Input.GetKey(KeyCode.UpArrow))
transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime);
if (Input.GetKey(KeyCode.DownArrow))
transform.Translate(-Vector3.forward * moveSpeed * Time.deltaTime);
if (Input.GetKey(KeyCode.LeftArrow))
transform.Rotate(Vector3.up, -turnSpeed * Time.deltaTime);
if (Input.GetKey(KeyCode.RightArrow))
transform.Rotate(Vector3.up, turnSpeed * Time.deltaTime);
}
}
Unity的文字物件,是否能像一般物件一樣可以使其旋轉或是放大縮小等...動畫效果?
回覆刪除作者已經移除這則留言。
刪除可以參考下面這篇文章
刪除http://cheng-min-i-taiwan.blogspot.tw/2017/11/unity-3d.html