![]() |
![]() |
32167 |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 2 Пол: Мужской Репутация: ![]() ![]() ![]() |
Такая проблема: есть игра в разработке, похожая по движку на NOX.
В NOX'e объекты представляются в виде цилиндров с основнием в виде окружности. Как сделать чтобы герой, подойдя к преграждающему путь объекту, не стоял как вкопанный(возвращение старых координат),а плавно обходил его(окружность) в оптимальном направлении, как в Ноксе. Известны координаты центра героя(точка), центра окружности, ее радиус, а направление движения(или шаги смещения по X и Y) определяется так же как в Ноксе - положение мышки относительно героя(Эти координаты тоже известны). Должен быть какой-нибудь алгоритм или формула для осуществления плавного обхода преград. Еще желательно решить ту же проблему для столкновения со стенами, которые занимают 2мерный массив. Сообщение отредактировано: 32167 - 18.11.2006 3:19 Эскизы прикрепленных изображений ![]() ![]() |
![]() ![]() |
Lapp |
![]()
Сообщение
#2
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Я вот что не понял.. Из твоего текста следует, что пересечения окружностей не должно быть, а должно быть только их касание. А на рисунке явное пересечение изображено.. Почему?
Что касается алгоритма, то не понимаю, какие сложности. Просто ведешь его по окружности радиусом R+r (R и r - радиусы препятствия и героя) с центром в центре окружности препятствия - и все. Я что-то недопонял? -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 15.07.2025 8:50 |