Показать сообщение отдельно
Старый 27.06.2013, 19:11
iiiusion вне форума Посмотреть профиль Отправить личное сообщение для iiiusion Найти все сообщения от iiiusion
  № 1  
Ответить с цитированием
iiiusion

Регистрация: Aug 2012
Сообщений: 23
По умолчанию Выталкивание из bitmapdata

Всем привет. Задумался недавно как в игре(шутер и вид сверху) выталкивать юнитов из препятствий которые являют собой большую битмапдату. Причём препятствия сложной, произвольной формы и предполагаю что их нельзя описать математически. В голову пришло два способа:
1) преобразовать бутмапу так чтобы каждый пиксел(не прозрачный) имел в своём цвете направление и силу выталкивания. И когда юнит хиттестит с этим пикселом, то пиксел отправляет юнит в свободное и близжайшее место. но это может занять значительное время и довольно таки нетривиальная задачка получается вообще.
2) запоминать предыдущею координату юнита каждый кадр и если юнит сталкивается с препятствием то двигать его обратно в сторону прошлой координаты, пока юнит не выталкнется.
В общем всё довольно интересно и сложно. Вопрос - может кто знает более простой или правильный способ решения?