2015-04-24 5 views
0


Я создал Enemy, который следит за игроком и поворачивается. Моя проблема в том, что моя ротация модели космического корабля отличается от того, что я делал это с Blender.
Это как враг не следовать, и как корабль выглядеть с вращением X: 0 Y: 0 Z: 0
http://i.stack.imgur.com/bLbaz.png
В Blender, все хорошо, ничего плохого с вращением и т.д.
Это Enemy сценарий
Враг следуюший игрок, вращение

using UnityEngine; 
using System.Collections; 

public class Enemy : MonoBehaviour { 

     public static float health; 
     private float reloadTime; 

     public Rigidbody laser; 
     public GameObject explo; 
     public Transform playerShip; 

     // Use this for initialization 
     void Start() { 
       health = 20.0f; 
       reloadTime = 0.3f; 
     } 

     // Update is called once per frame 
     void Update() { 

       //transform.LookAt(playerShip.transform.position); 
       Quaternion rotation = Quaternion.LookRotation(playerShip.transform.position - this.transform.position); 
       transform.rotation = Quaternion.Slerp(transform.rotation, rotation, Time.deltaTime * 2); 
       transform.Translate(Vector3.forward * 2 * Time.deltaTime); 

       reloadTime -= Time.deltaTime; 

       if(reloadTime <= 0f) 
       { 
         Rigidbody clone = Instantiate(laser, transform.position, transform.rotation) as Rigidbody; 
         clone.velocity = transform.TransformDirection(0, 0, 80); 
         Destroy(clone.gameObject, 3); 
         reloadTime = 0.3f; 
       } 

       if(health <= 0f) 
       { 
         GameObject exp = Instantiate(explo, transform.position, transform.rotation) as GameObject; 
         Destroy(this.gameObject); 
         Destroy(exp.gameObject, 1.5f); 
       } 
     } 
} 

Что может быть неправильным с этими поворотами?

Как изменить поворот в этом коде, чтобы X всегда был 270?

  Quaternion rotation = Quaternion.LookRotation(playerShip.transform.position - this.transform.position); 
      transform.rotation = Quaternion.Slerp(transform.rotation, rotation, Time.deltaTime * 2); 
+0

Оставьте свой код здесь, а не на стороннем сайте. – Dom

+0

Не только это, сообщение, что * конкретно * не работает. «Что может быть не так с этими вращениями?» Совсем не уточняет, какова ваша конкретная проблема. –

+0

Я спрашиваю об этой странной позиции модели. Почему это не так, как должно (на изображении, корабль справа хорош, но с X вращением = 270). – Oen44

ответ

Смежные вопросы