2014-03-05 34 views
0

我有以下的Bird,當玩家觸摸屏幕上的一個點以在Bird上施加速度並將其移動到該點時,我想要。基於Unity中的觸摸更改速度

enter image description here

所以我寫了以下內容:

if (Input.touches.Length > 0) 
     { 
      foreach(Touch touch in Input.touches){ 

       Vector2 pos = touch.deltaPosition; 
       rigidbody2D.velocity = pos; 

      } 

     } 

的問題是,只有當有像手指在屏幕上移動,而不是像一擊什麼的,這是執行挖掘。任何想法我怎麼能達到我想要的?

回答

1

在這種情況下,您不應該直接修改速度。這可能會導致不切實際的行爲。我會建議你使用rigidbody.AddForce(方向:Vector3)。在Update Loop中添加您的功能並使用中斷;如果您希望力量僅添加一次而不是顯示器上的每一個手指都添加,則可以離開。