![]() |
|
Модераторы: Rickert |
![]()
|
|
| UniBomb |
|
|||
|
Новичок ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: нет Всего: 97 |
Добрый день. Как понятно из названия - карту строю из тайлов, для передвижения персонажа использую карту проходимости. Всё хорошо ровно до тех пор, пока все тайлы полностью закрашенные. Но в игре также присутствуют масса тайлов с уклонами, закруглениями и т.д.
![]() Как в таком случае указать персонажу, что эти тайлы хоть и проходные, но ходить по ним надо по-другому? Сначала я думал в таких случаях проверять попиксельно коллизии картинки персонажа и игрового окружения, но что-то мне кажется, что это ой как долго. Есть ли другие способы? |
|||
|
||||
| Rpahut |
|
|||
![]() 0xdeadbeef ![]() Профиль Группа: Участник Сообщений: 243 Регистрация: 9.4.2006 Репутация: 5 Всего: 7 |
Есть довольно быстрые алгоритмы попиксельного сравнения. Например - сылку найти не могу, но смысл в сравнении бит-маски целыми даблвордами. Если обязательно требуется учитывать форму произвольного тайла, то другого выбора у вас в общем то и нет. Если совсем жаба душит, можно использовать маску проходимости с пониженным разрешением. Ну или очерчивать контур ландшафта линиями и считать столкновения через векторы.
--------------------
C/C++ GameDevRSS Раздела программирования игрOpenGL - уроки от NeHeКак продать идею? |
|||
|
||||
| UniBomb |
|
|||
|
Новичок ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: нет Всего: 97 |
Ох, как бы хотелось по-подробнее |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 5 Всего: 27 |
UniBomb, можно заранее каждому тайлу создать матрицу и сравнивать уже не пиксели картинки, а элементы матрицы. Так будет скорость на много быстрее, чем обращение к пикселям битмапа
|
|||
|
||||
![]()
|
| Правила форума "Программирование игр, графики и искуственного интеллекта" | |
|
|
НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |