2015-01-27 5 views
1

У меня есть некоторые проблемы с прыжками в моей 2-й игре. Я пробовалUnity 2D - Awry «прыгает»

rigidbody2D.AddForce(new Vector2(0, 200)); 
// and 
rigidbody2D.velocity = new Vector2(0, 10f); 

Но мой персонаж не прыгает прямо вверх, а вверх-вниз. Он прыгает с горизонтальной области. Что бы это могло быть?

ОБНОВЛЕНИЕ. немного больше кода:

void Update() 
    { 
     if (Input.GetKeyDown("w")) 
     { 
      rigidbody2D.AddForce(new Vector2(0, 200)); 
      //or rigidbody2D.velocity = new Vector2(0, 10f); 
      //or rigidbody2D.AddForce(Vector2.up * 10); 
     } 
    } 

Я попытался FixedUpdate() - его с той же проблемой. Он просто прыгает налево.

ответ

0
Vector3 jumpForce; 

void Awake() 
{ 
jumpForce = new Vector3(0, y); //Put your desired jump force for y 
} 

void Update() 
{ 
    if (Input.GetKeyDown("w")) 
    {   
    _rigidBody2D.velocity += jumpForce; 
    } 
} 
+0

Пожалуйста, добавьте несколько пояснений к вашему ответу. Кодовые ответы не приветствуются на SO. Спасибо. –