unity場景裡每個遊戲物體都含有 Transform 組件 , 用來控制物體的位置、旋轉、縮放.
下面介紹一下 Transform 組件的常用方法 :
transform.position : 物體在世界坐標中的位置 ;transform.Translate : 物體相對位移的單位 ;transform.Rotate : 物體的旋轉 ;transform.EularAngles : 物體的角度 ;transform.localScale : 物體的縮放 ;
下面用這些方法做一個可以前後左右移動的旋轉小坦克 . 代碼如下 :
using UnityEngine;public class Move : MonoBehaviour {// 定義一個坦克對象 private Transform tank; // 速度 private float speed = 20f; // 角速度 private float angle = 60f; public void Update() { // 左右偏移(-1,1) float hor = Input.GetAxis("Horizontal"); // 前後偏移(-1,1) float ver = Input.GetAxis("Vertical"); if (hor != 0 || ver != 0) { // 控制坦克前後行走 transform.Translate(Vector3.forward * Time.deltaTime * speed * ver); // 控制坦克左右旋轉 transform.Rotate(Vector3.up * Time.deltaTime * angle * hor); } }}
在unity裡面做一個小坦克(cube也可以) , 然後將腳本掛載到坦克身上 .
運行unity , 按 W 、S鍵 控制坦克前進後退 ;
按 A 、D鍵控制坦克的旋轉 ;
坦克已經可以移動和旋轉了 , 可是怎麼發射子彈呢 ? 下期帶大家學習 Rigidbody 類 , 實現坦克發射子彈 .