मैंने एक नया गेम शुरू किया है जिसके लिए किसी माउस की आवश्यकता नहीं है, इस प्रकार यह आंदोलन को कीबोर्ड तक छोड़ देता है। मैंने 8 दिशाओं को शामिल करने की कोशिश की है; ऊपर, बाएँ, दाएँ, ऊपर-दाएँ और इसी तरह। हालांकि जब मैं एक से अधिक तीर कुंजी दबाता हूं, तो आंदोलन की गति ढेर हो जाती है ( http://gfycat.com/CircularBewitchedBarebirdbat )। मैं इसका प्रतिकार कैसे कर सकता हूं?
यहाँ मेरे कोड का प्रासंगिक हिस्सा है:
var speed : int = 5;
function Update () {
if (Input.GetKey(KeyCode.UpArrow)) {
transform.Translate(Vector3.forward * speed * Time.deltaTime);
} else if (Input.GetKey(KeyCode.UpArrow) && Input.GetKey(KeyCode.RightArrow)) {
transform.Translate(Vector3.forward * speed * Time.deltaTime);
} else if (Input.GetKey(KeyCode.UpArrow) && Input.GetKey(KeyCode.LeftArrow)) {
transform.rotation = Quaternion.AngleAxis(315, Vector3.up);
}
if (Input.GetKey(KeyCode.DownArrow)) {
transform.Translate(Vector3.forward * speed * Time.deltaTime);
}
}