[英]Unity 3D - Third Person character movement using rigidbody
我是Unity的新手,試圖制作自己的第一款游戲(《第三人稱射擊》)。 現在已經有一個多星期了,我一次又一次地嘗試使用剛體部件而不是角色控制器或簡單的transform.Translate來使角色移動。
自一周以來,我已經打開了大約30個網頁,瀏覽有關該主題的信息,但是我什么也沒找到(幾乎讓我覺得我正在嘗試做一些不可能的事情……)。
因此,我想像在“分裂細胞黑名單”中那樣移動角色,並用鼠標控制帶有十字准線的攝像機(如果我拍攝,角色會在不面對目標的情況下旋轉然后拍攝)。
對於運動,如果不能使用剛體,那么我將使用其中之一,只是我喜歡剛體所具有的真實感覺。
如果甚至有一個將其分解為真正理解的教程,那將是很棒的,或者只是一些帶有注釋的代碼(我有C#背景)。
float moveSpeed = 6f; // Player's speed when walking.
float rotationSpeed = 6f;
float jumpHeight = 10f; // How high Player jumps
Vector3 moveDirection;
Rigidbody rb;
// Using the Awake function to set the references
void Awake()
{
rb = GetComponent<Rigidbody>();
}
void FixedUpdate()
{
Move();
}
void Move ()
{
float hAxis = Input.GetAxis("Horizontal");
float vAxis = Input.GetAxis("Vertical");
Vector3 movement = new Vector3(hAxis, 0f, vAxis);
rb.position += movement * moveSpeed * Time.deltaTime;
}
我的點子。 如果您想要真實的感覺,則需要在角色身體的適當部位為您的角色添加“ rigidbody.addforce
。 而不是rigidbody.position
。
希望對您有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.