Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/55: Рейтинг темы: голосов - 55, средняя оценка - 4.82
2 / 2 / 1
Регистрация: 18.06.2020
Сообщений: 120
Записей в блоге: 1
1

Поворот фигуры в сторону его движения

23.03.2021, 04:29. Показов 11444. Ответов 5

Author24 — интернет-сервис помощи студентам
В общем. Есть определенный путь по которому идет фигура. Со сфорой проблем нет ибо не понятно где у неё перед. А вот если будет другая фигура то она просто идет по заданному пути но не поворачивается в сторону движения. Нужно это исправить
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
using UnityEngine;
 
public class cebe : MonoBehaviour
{
    public float speed = 5f;//Скорость врага
    private Transform target;//Прифаб врага
    private int wavepointIndex = 0;//Индекс поинта
 
    void Start()
    {
        target = Waypoints.points[0];
    }
 
    void Update()
    {
 
 
        Vector3 dir = target.position - transform.position;
        transform.Translate(dir.normalized * speed * Time.deltaTime, Space.World);
 
        if (Vector3.Distance(transform.position, target.position) <= 0.4f)
        {
            GetNextWaypoint();
        }
    }
 
    void GetNextWaypoint()//Следующая контнтрольная точка
    {
        if (wavepointIndex >= Waypoints.points.Length - 1)
        {
            Destroy(gameObject);
            return;
        }
        wavepointIndex++;
        target = Waypoints.points[wavepointIndex];
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.03.2021, 04:29
Ответы с готовыми решениями:

Поворот в сторону движения 2д объекта
есть игровое поле 3 на 3 разделённое клетками, есть космический корабль, при нажатии на клетку...

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

Поворот фигуры в сторону его движения
В общем. Есть определенный путь по которому идет фигура. Со сфорой проблем нет ибо не понятно где у...

Unity как сделать поворот персонажа в сторону движения через джойстик
using UnityEngine; using UnityEngine.UI; using UnityEngine.EventSystems; public class...

5
8 / 5 / 3
Регистрация: 21.03.2021
Сообщений: 55
23.03.2021, 11:29 2
transform.forward = dir; (если объект смотрит в сторону оси z)
0
35 / 26 / 11
Регистрация: 30.01.2018
Сообщений: 169
23.03.2021, 17:22 3
Лучший ответ Сообщение было отмечено 444 как решение

Решение

Если бы ты был знаком с кватернионами такого вопроса думаю не возникло бы. Quaternion.LookRotation() https://docs.unity3d.com/Scrip... ation.html
1
2 / 2 / 1
Регистрация: 18.06.2020
Сообщений: 120
Записей в блоге: 1
24.03.2021, 10:07  [ТС] 4
Я вставил что там по ссылке было, но не помогло Что я делаю не так?
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
  
   void Update()
    {     
        // the second argument, upwards, defaults to Vector3.up    
        Vector3 dir = target.position - transform.position;
        Quaternion rotation = Quaternion.LookRotation(dir, Vector3.up);
        transform.rotation = rotation;
        transform.Translate(dir.normalized*speed*Time.deltaTime,Space.World);    
        if (Vector3.Distance(transform.position, target.position) <= 0.4f)
        {
            GetNextWaypoint();
        }
    }
И никаких изменений. Так же двигаются))

Добавлено через 5 минут
Всё, я просто тупанул и не тот скрипт назначил. а так то что я скинул и есть решение
0
35 / 26 / 11
Регистрация: 30.01.2018
Сообщений: 169
24.03.2021, 12:41 5
Цитата Сообщение от 444 Посмотреть сообщение
Всё, я просто тупанул и не тот скрипт назначил.
Обожаю такие посты). +1 в коллекцию)
0
2 / 2 / 1
Регистрация: 18.06.2020
Сообщений: 120
Записей в блоге: 1
24.03.2021, 18:12  [ТС] 6
Srgey1232, хаха, это как?
0
24.03.2021, 18:12
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.03.2021, 18:12
Помогаю со студенческими работами здесь

Написать программу движения фигуры по экрану, не выходя за его пределы
Создать объект - закрашенный параллелепипед. Написать программу движения фигуры по экрану, не...

Поворот объекта в сторону игрока
Делал таким способом public class LookAtPlayer : MonoBehaviour { public Transform target;...

Поворот спрайта в сторону курсора
Делаю игру, надо поворачивать спрайт в сторону курсора мыши, помогите пожалуйста! Вот код: #include...

Поворот - в какую сторону быстрей ?
Формула нужна ребят. float Dir = 30.f; float newDir = 250.f; //Мне нужно плавно повернуть -...

Поворот объекта в сторону мыши
Всем привет, решил попробовать для интереса в пайгейм что-то сделать. Остановился на 2д игре(в...

Поворот спрайта в сторону курсора
Добрый вечер. Имеется 2D проект. Нужно реализовать поворот спрайта персонажа в сторону курсора...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru