2016-07-14 3 views
0

GameObject обращается правильно, когда в положительном преобразовании, но как только он наносит отрицательный результат, он переворачивается и сталкивается с неправильным способом.Проблема с вращением на отрицательном

transform.rotation = Quaternion.Slerp (transform.rotation, Quaternion.LookRotation (currentWaypoint), 
      rotationspeed * Time.smoothDeltaTime); 
     transform.position = Vector3.MoveTowards(transform.position,currentWaypoint,speed * Time.deltaTime); 
     Debug.Log (currentWaypoint); 

Оно начинает переворачивать, как бревна ниже:

(1.5, 0.0, 0.0) UnityEngine.Debug: Log (Object) c__Iterator0: MoveNext() (на активы/скрипты/противника. CS: 71)

(-0,5, 0,0, -1,0) UnityEngine.Debug: Лог (Объект) c__Iterator0: MoveNext() (на активы/скрипты/Enemy.cs: 71)

Я надеюсь, что кто-то сможет указать мне в правильном направлении с этим

ответ

0

Вы можете вращать символ, используя свойство Vector3 с функцией поворота, Установите переменную для управления скоростью, затем введите функцию для управления вашим поворот следующим образом.,

private float speed = 20; 

    if(Input.GetKey(KeyCode.M)) 
    { 
     transform.Rotate(Vector3.up * speed* Time.deltaTime); 
    } 
    if(Input.GetKey(KeyCode.B)) 
    { 
     transform.Rotate(Vector3.down * speed* Time.deltaTime); 
    } 
Смежные вопросы