2011-07-25 4 views
0

J'ai une balle et un autre sprite. Lorsque la balle entre en collision avec le sprite, elle simule une chute.Création d'un corps - Cocos2d/Box2d

Mon seul problème est que l'autre sprite est juste sur une grande image et que la balle est sur le dessus, mais il y a des espaces sur le sprite et beaucoup de coins. J'ai besoin de déterminer si le sprite a touché l'un des coins. Je sais que c'est difficile à comprendre.

Alors, ma question est, est-il possible de faire un corps sans

b2PolygonShape blockShape; 

et

blockShapeDef.shape = &blockShape; 

OU

est-il une alternative que je peux utiliser? Je ne peux pas définir l'image comme une boîte et il faudrait beaucoup de temps pour définir les bords car il y a tellement de coins.

J'ai déjà configuré la détection de collision. J'ai vraiment besoin d'aide pour ça.

Merci!

+0

Vous pouvez avoir un corps sans formes/accessoires, mais ce n'est pas très utile car il n'a aucun moyen d'interagir avec quoi que ce soit d'autre dans le monde. Vous pouvez faire des «capteurs» des appareils afin qu'ils détectent les collisions mais ne réagissent pas. – iforce2d

Répondre

0

Si vous voulez qu'il réagisse correctement, vous devez créer un polygone en utilisant chaque coordonnée d'angle.

Mais ne soyez pas paresseux à ce sujet. Vous pouvez utiliser SpriteHelper pour créer * b2PolygonShape * s de vos sprites.

Ou une autre alternative: VertexHelper