Невозможно остановить вращение на объекте, на котором есть функция перевода - PullRequest
1 голос
/ 04 июля 2019

Я создаю игру, такую ​​же, как игры, в которых ракеты следуют за самолетом, чтобы уничтожить его. У меня проблема с ракетой. Это 3D, и когда игра запускается, ракета поворачивается на 90 градусов, и я не понимаю, почему и как это можно исправить.

Я пытался использовать ограничения из твердого тела в инспекторе, но они не сработали.

это скрипт, который управляет ракетой.

public class Move_missle_lookAt : MonoBehaviour
{
    public Transform mTarget;
    public float mSpeed ;
    const float EPSILON = 0.1f;

    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        transform.LookAt(mTarget.position);

        if ((transform.position - mTarget.position).magnitude > EPSILON)
              transform.Translate(0.0f, 0.0f, mSpeed * Time.deltaTime);
    }
}

1 Ответ

0 голосов
/ 05 июля 2019

Возможно, ваша модель ориентирована неправильно для начала.Итак, хотя он, кажется, вращается, он на самом деле в своей исходной ориентации.

После вызова LookAt() поверните преобразование на 90 ° для компенсации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...