Понедельник, 23 Декабря 2024, 16:43

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Проблема с перемещением объекта
CdoltДата: Суббота, 14 Мая 2016, 14:40 | Сообщение # 1
был не раз
Сейчас нет на сайте
Возникла проблема с перемещением объекта по заданным точкам, объект доходит до 1ой и останавливается, терейн с рельефом, на объекте весит бокс колайдер.
MANMANAДата: Суббота, 14 Мая 2016, 15:18 | Сообщение # 2
почти ветеран
Сейчас нет на сайте
Цитата Cdolt ()
Код
agent.destination = poz1.transform.position;
if(agent.destination == poz1.transform.position)
agent.destination = poz2.transform.position;
if (agent.destination == poz2.transform.position)
agent.destination = poz3.transform.position;
if (agent.destination == poz3.transform.position)
agent.destination = poz4.transform.position;
if (agent.destination == poz4.transform.position)
agent.destination = poz5.transform.position;
if (agent.destination == poz5.transform.position)
agent.destination = poz6.transform.position;
if (agent.destination == poz6.transform.position)
agent.destination = poz1.transform.position;

мм.... всегда имеем на выходе
Код
agent.destination = poz1.transform.position;

Дальше не смотрел

Добавлено (14 мая 2016, 15:18)
---------------------------------------------
p/s/ "else"


http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг
VKонтакте 3Dbuffer

Последнее:

Новый раздел "Текстуры"

Как запатентовать, защитить техническое решение, игру, идею
CdoltДата: Суббота, 14 Мая 2016, 16:14 | Сообщение # 3
был не раз
Сейчас нет на сайте
Цитата MANMANA ()
мм.... всегда имеем на выходе
Код
agent.destination = poz1.transform.position;

Дальше не смотрел
Добавлено (14 мая 2016, 15:18)
---------------------------------------------
p/s/ "else"

не совсем понял
MANMANAДата: Суббота, 14 Мая 2016, 16:33 | Сообщение # 4
почти ветеран
Сейчас нет на сайте
сначала вы пишете "agent.destination = poz1.transform.position;"
далее
if(agent.destination == poz1.transform.position) agent.destination = poz2.transform.position;//а чему равен agent.destination, ага "agent.destination = poz1.transform.position;", значит присваиваем ему значение "poz2.transform.position"
идем дальше... проходим всю цепочку
if (agent.destination == poz2.transform.position)
agent.destination = poz3.transform.position;
if (agent.destination == poz3.transform.position)
agent.destination = poz4.transform.position;
if (agent.destination == poz4.transform.position)
agent.destination = poz5.transform.position;
if (agent.destination == poz5.transform.position)
agent.destination = poz6.transform.position;

вплоть до

if (agent.destination == poz6.transform.position)
agent.destination = poz1.transform.position;
т.е. agent.destination = poz1.transform.position; именно тому, что вы установили в первой строке процитированного мной кода

т.е. все эти if'ы не нужны, так... мракобесие, достаточно было первой строки "agent.destination = poz1.transform.position;"

пересмотрите логику
посмотрите связку if else

Добавлено (14 мая 2016, 16:33)
---------------------------------------------
у вас всегда agent.destination = poz1.transform.position;


http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг
VKонтакте 3Dbuffer

Последнее:

Новый раздел "Текстуры"

Как запатентовать, защитить техническое решение, игру, идею
CdoltДата: Суббота, 14 Мая 2016, 16:48 | Сообщение # 5
был не раз
Сейчас нет на сайте
если так он всё равно стоит на месте, если без else то движется в позицию 2
Код
if (agent.transform.position == poz1.transform.position)
            agent.destination = poz2.transform.position;
        else
            agent.destination = poz3.transform.position;
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг