ИИ
| |
K1rusH | Дата: Четверг, 02.09.2010, 20:33 | Сообщение # 1 |
ламер
Группа: Пользователи
Сообщений: 37
Награды: 0
Репутация: 1
Статус: Offline
| В инете нашёл как делать ИИ. Вот код который там был представлен. Всё работает. Кубик ползает за кубиком. dist# = EntityDistance ( bot, cub ) If dist > 2 - проверяет расстояние между двумя объектами. TurnEntity bot,0,Sgn(DeltaYaw(bot,cub))*0.9,0 – команда поворачивает один объект в сторону другого MoveEntity bot,0,0,0.03 – двигает бота со скоростью 0.3 вперёд If EntityCollided (bot,Typestolb) – при столкновении бота с колонной TurnEntity bot,0,5,0 – бот поворачивает направо. EndIf – конец условия Добавил к себе, изменив только MoveEntity bot,0,0,0.03 на MoveEntity bot,0.15,0,0 что бы бот ходил лицом (у меня не кубик же, а моделька чувачка), а не боком. Проблема в том что он теперь не идёт к месту, а движется по огромной окружности, как можно исправить данный код, или можно повернуть как нибудь модельку ? Многое перепробовал всё никак Ну или посоветуйте какой нить другой пример ИИ плиз Заранее спасибо
Blitz3d start error: Blitz3d hates you! http://proekti.moy.su/
Сообщение отредактировал K1rusH - Четверг, 02.09.2010, 20:35 |
|
| |
deejex | Дата: Пятница, 03.09.2010, 08:08 | Сообщение # 2 |
заядлый прогер
Группа: Пользователи
Сообщений: 522
Награды: 2
Репутация: 14
Статус: Offline
| Quote (K1rusH) (у меня не кубик же, а моделька чувачка) RotateMesh тебе в помощь.
|
|
| |
K1rusH | Дата: Пятница, 03.09.2010, 13:14 | Сообщение # 3 |
ламер
Группа: Пользователи
Сообщений: 37
Награды: 0
Репутация: 1
Статус: Offline
| rotatemesh не потходит, пробовал rotateentity моделька принимает сторону куда её повернул и движется по прямой ...
Blitz3d start error: Blitz3d hates you! http://proekti.moy.su/
Сообщение отредактировал K1rusH - Пятница, 03.09.2010, 13:15 |
|
| |
Reks888 | Дата: Среда, 08.09.2010, 06:09 | Сообщение # 4 |
ламер
Группа: Пользователи
Сообщений: 29
Награды: 1
Репутация: 4
Статус: Offline
| Code ;========================= ;Function Go_to ;--------------------------------------------- ;Version 3.2 ;Author Reks888 ;Input: ; Main - хендл движимого объекта ; target - хендл целевого объекта ; Turnspeed# - скорость поворота[0.0..1.0] ; speed# - скорость передвижения ;Output: нет ;================================= Function Go_to(main%,target%,Turnspeed#,speed#) xt#=EntityX#(target) zt#=EntityZ#(target) xl#=EntityX#(main) zl#=EntityZ#(main) cx#=xt -xl cz#=zt-zl cn#=Sqr(cx*cx+cz*cz) cx=cx/cn cz=cz/cn AlignToVector main,cx,0,cz,0,Turnspeed# MoveEntity main,0,0,speed# End Function
Сообщение отредактировал Reks888 - Среда, 08.09.2010, 06:10 |
|
| |
K1rusH | Дата: Пятница, 10.09.2010, 11:29 | Сообщение # 5 |
ламер
Группа: Пользователи
Сообщений: 37
Награды: 0
Репутация: 1
Статус: Offline
| Спасибо большое за предоставленный код, всё работает, легко разобрался, но проблема осталась ... Загружаемая модель имеет формат мд2, при движении она идёт боком, если изменять её по Z, а если по X, то лицом, но футкция тогда не работает правильно ...
Blitz3d start error: Blitz3d hates you! http://proekti.moy.su/
|
|
| |
Reks888 | Дата: Пятница, 10.09.2010, 16:44 | Сообщение # 6 |
ламер
Группа: Пользователи
Сообщений: 29
Награды: 1
Репутация: 4
Статус: Offline
| Открой редактор графики, загрузи модель. Поворачивай и сохраняй пока не начнет идти прямо
|
|
| |
|