обнаружение столкновений в cocos2d - PullRequest
10 голосов
/ 06 января 2011

Я хочу обнаружить обнаружение столкновения два раза в одной строке.

например :-( см. Изображение ниже)

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

Первый (пройденный по траектории) работает нормально. второй я хочу пройти по прямой линии вниз для обнаружения столкновения.

как сделать этот процесс.

alt text

Ответы [ 2 ]

3 голосов
/ 06 января 2011

Используйте физическую библиотеку Box2D для обнаружения столкновений.Это, безусловно, лучший вариант в вашем случае и элегантно поддерживается в Cocos2d.

См. Здесь: http://www.raywenderlich.com/606/how-to-use-box2d-for-just-collision-detection-with-cocos2d-iphone

1 голос
/ 09 января 2011

Как я знаю, у cocos2d нет обнаружения столкновений спрайтов, потому что это не физический движок. Если вы хотите, чтобы столкновение обнаруживалось автоматически, используйте Box2D или физический движок бурундука, поддерживаемый cocos2d.

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

Более сложное обнаружение столкновений поможет вам написать часть обнаружения столкновений физического движка. Гораздо проще использовать существующий

...