@DuckU

Как повернуть объект в сторону его движения?

У меня есть объект "лось" и я не могу понять как повернуть его в сторону его движения
Заранее спасибо!

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Elk : MonoBehaviour
{
    public float speed;
    private float waitTime; // Оставшиейся время
    public float startWaitTime; // Время
    public float maxTime; // Масимальное время
    public float minTime; // Минимальное время

    public Transform[] moveSpots;
    private int randomSpot;

    void Start()
    {
        startWaitTime = Random.Range(minTime, maxTime);
        waitTime = startWaitTime;
        randomSpot = Random.Range(0, moveSpots.Length);
    }

    void Update()
    {
        transform.position = Vector2.MoveTowards(transform.position, moveSpots[randomSpot].position, speed * Time.deltaTime);

        if (Vector2.Distance(transform.position, moveSpots[randomSpot].position) < 2)
        {
            if (waitTime <= 0)
            {
                randomSpot = Random.Range(0, moveSpots.Length);
                startWaitTime = Random.Range(minTime, maxTime);
                waitTime = startWaitTime;
            }
            else
            {
                waitTime -= Time.deltaTime;
            }
        }
    }
}
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ответы на вопрос 3
AshBlade
@AshBlade Куратор тега C#
Просто хочу быть счастливым
1. Получаешь вектор движения игрока
2. Получаешь вектор направления взгляда персонажа
3. Рассчитываешь косинус между ними
4. Находишь по нему угол
5. Медленно поворачиваешь (угол / скорость) - иначе мгновенно повернется
Ответ написан
Комментировать
@DuckU Автор вопроса
Я неправильно выразился. У меня 2д платформер, нету игрока, только животное которое ходит туда сюда. Мне надо чтобы он смотрел в ту сторону куда идет
Ответ написан
PragmaGames
@PragmaGames
Увлекаюсь Unity.
transform.right = moveSpots[randomSpot].position - transform.position;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы