столкновение cocos2D только на краю - PullRequest
1 голос
/ 29 ноября 2011

Я разрабатываю игру для iOS с cocos2D. Моя игра проста, есть уровни и вращающийся спрайт. Спрайту нужно пройти от начала до конца уровня, не потеряв при этом жизни.

Так что для меня есть две возможности:

1 °) Уже хорошо работает

  • Уровни листов на основе листов с 2D-стилями стилей пикселей
  • Пользовательское обнаружение столкновений на краю ограничивающей рамки спрайта героя и столкновение карты тайлов.

2 °) Было бы лучше графика и лучший пользовательский опыт (без физики, только столкновения):

  • карта базы по векторной графике / SVG
  • обнаружение столкновений с использованием края формы спрайта героя и карты

Но я прочитал документацию по cocos2D / Box2D и не обнаружил обнаружение столкновений ТОЛЬКО на краю формы спрайта. Это как идеальное столкновение с пикселем (уже найденный алгоритм).

Я только хочу знать, сталкивается ли одна из четырех граней фигуры моего героя с границей уровня, и если да, то какая фигура сталкивается (потому что мой спрайт вращается).

У кого-нибудь есть идея?

Большое спасибо за ваше время.

Ответы [ 2 ]

2 голосов
/ 29 ноября 2011

Одна фигура многоугольника должна быть прикреплена к телу вашего героя с помощью приспособления.Для обнаружения точки столкновения используйте контакты между динамическими (герой) и статичными (стены) телами.

0 голосов
/ 30 ноября 2011

Просто возьмите форму вашего героя и разделите пополам, чтобы найти пиксельную ширину формы героя (радиус) и обнаружить столкновение, если расстояние между вашим героем и другим спрайтом равно или меньше этого радиуса.

...