我正在學習如何使用Unity3D,並且我處於動畫問題。我有一個GameObject,這是我的角色,我想讓他跳。首先,我使用鍵盤的輸入,空格鍵。使用AddForce的不同力值不會改變遊戲對象的速度
jumpForce是公衆持股量的變量,並將其值是700
if (grounded && Input.GetKeyDown(KeyCode.Space)) {
anim.SetBool("Ground", false);
rigidbody2D.AddForce(new Vector2(0, jumpForce));
}
然後我試圖讓從XBOX360控制器墊輸入和一切都很好。但是使用相同的代碼(只是將GetKeyDown更改爲控制器的GetButton),字符跳轉得更高。使用控制器時,達到的最大速度是53(我得到的是rigidbody2D.velocity.y的值),但是用鍵盤的值是13。 ,但是如果我將它設置爲0,角色不會跳躍。
我想知道哪個是變量jumpForce和函數AddForce的實用程序,如果它不改變速度的值。謝謝
你確定你輸入了if? – Roberto
當然,如果我將jumpForce設置爲0,則該字符根本不會跳轉。 – Astinog