【Unity3D日常開發(fā)】(五)Unity3D中10行代碼實(shí)現(xiàn)簡單角色行走移動(dòng)
推薦閱讀
CSDN主頁
GitHub開源地址
Unity3D插件分享
簡書地址
我的個(gè)人博客
QQ群:1040082875
一、前言
今天分享一個(gè)簡單的角色移動(dòng)腳本,主要用到碰撞器和剛體組件,代碼簡單易懂,復(fù)用性、擴(kuò)展性較強(qiáng),跟我一起來看看吧。
二、效果圖
在這里插入圖片描述
三、代碼
using UnityEngine;
public class RunTest1 : MonoBehaviour
{
public float forwardSpeed; //前進(jìn)的速度
public float backwardSpeed; //后退的速度
public float rotateSpeed; //旋轉(zhuǎn)速度
private Vector3 velocity;
void FixedUpdate() { //獲取到橫軸 前后 的輸入 也就是鍵盤W 和S的輸入 float h = Input.GetAxis("Horizontal"); //獲取到縱軸 左右 的輸入 也就是鍵盤A 和D的輸入 float v = Input.GetAxis("Vertical"); //從上下鍵的輸入,獲取到Z軸的輸入量 velocity = new Vector3(0, 0, v); //將世界坐標(biāo)轉(zhuǎn)化為本地坐標(biāo) velocity = transform.TransformDirection(velocity); //判斷是前進(jìn)還是后退 if (v > 0.1) { velocity *= forwardSpeed; } else { velocity *= backwardSpeed; } //移動(dòng)自身坐標(biāo) transform.localPosition += velocity * Time.fixedDeltaTime; //旋轉(zhuǎn)角度 transform.Rotate(0, h * rotateSpeed, 0); }
}
四、實(shí)現(xiàn)步驟
1.首先我們先設(shè)計(jì)場景 在場景中新建一個(gè)Plane,設(shè)置一下寬度和長度 在這里插入圖片描述 2.新建一個(gè)Capsule,假設(shè)這個(gè)是主角 在這里插入圖片描述 添加剛體組件,鎖定XYZ的旋轉(zhuǎn) 在這里插入圖片描述 3.設(shè)置攝像機(jī)的跟隨 在這里插入圖片描述 直接設(shè)置成Capsule的子對(duì)象,簡單粗暴,然后再設(shè)置一下位置旋轉(zhuǎn)角度
4.編寫RunTest.cs腳本
using UnityEngine;
public class RunTest1 : MonoBehaviour
{
public float forwardSpeed; //前進(jìn)的速度
public float backwardSpeed; //后退的速度
public float rotateSpeed; //旋轉(zhuǎn)速度
private Vector3 velocity;
void FixedUpdate() { float h = Input.GetAxis("Horizontal"); float v = Input.GetAxis("Vertical"); velocity = new Vector3(0, 0, v); velocity = transform.TransformDirection(velocity); if (v > 0.1) { velocity *= forwardSpeed; } else { velocity *= backwardSpeed; } transform.localPosition += velocity * Time.fixedDeltaTime; transform.Rotate(0, h * rotateSpeed, 0); }
}
5.將腳本賦給Capsule對(duì)象 在這里插入圖片描述 設(shè)置參數(shù) 在這里插入圖片描述
5.運(yùn)行 開始快樂的玩耍把 在這里插入圖片描述
unity
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。