2013-05-16 6 views
0

J'ai un cercle au centre du monde. J'ajoute quelques balles au monde sous la forme de b2Body. Maintenant, je veux déplacer ou lancer la balle au centre de l'écran. L'effet devrait être comme si les balles entrent en collision avec le cercle.Déplacez le corps box2d au centre de l'écran

La balle sont des positions au hasard, de sorte qu'ils peuvent être à tout étaient à l'écran et la nécessité de se rendre au centre de l'écran au cercle

Quelqu'un peut-il me dire comment faire cela parce que je n'ai pas idée pour déplacer l'objet b2Body.

I want blue circle to attract red circles

Je veux cercle bleu pour attirer des cercles rouges. Ou en d'autres termes je veux que les cercles rouges se déplacent vers le cercle bleu.

+0

setTransform -> http://www.learn-cocos2d.com/api-ref/2.0/Box2D/html/classb2_body.html#a4686f32bbce5723761e9719c706eca11 – LearnCocos2D

+0

Je veux en utilisant la force et la gravité –

+1

ah , juste le concept: chaque pas ajoute une force à chaque corps avec une direction vers le centre. La quantité d'attraction gravitationnelle (la force appliquée) tombe par carré sur la distance, c'est-à-dire que deux fois la distance signifie un quart de la force. Cependant, dans les jeux, il peut être nécessaire de modifier l'effet de la gravité avec une très courte distance, ou il peut sembler ne jamais tomber (même attraction gravitationnelle partout) - dépend de l'échelle, nécessite une expérimentation. – LearnCocos2D

Répondre

0

Dans ce cas, je ne suis pas sûr de cette façon, mais vous pouvez essayer de cette façon. Je suppose que vous ajoutez b2body en touchant sur l'écran. Maintenant, je ne sais pas quel est le type de votre corps B2. Il existe deux façons de déplacer le corps b2.

vérifier ce lien: http://www.cocos2d-iphone.org/forum/topic/21620

De ce lien,

Je devine que, dans votre jeu, le corps est le corps b2static, Qu'est-ce que vous pouvez faire est de déplacer l'image-objet au centre de l'écran, en ce qui concerne à cela changer la position du corps correspondant dans la méthode de la tique.

Et vous devez arrêter de déplacer le sprite lorsqu'il touche la bille centrale, arrêtez donc de déplacer le sprite correspondant quand il touche la bille centrale.

Cela peut être le moyen possible si j'ai compris votre question.

+0

Mes corps sont b2_dynamic. Je n'utilise aucun contact. Les cercles rouges sont ajoutés par programme. Donc, dès que j'ajoute le corps rouge dans le monde, ils devraient voyager au cercle bleu –

+0

oui, il se dirigera vers le cercle bleu. Essayez de mettre en œuvre ce que je dis. La principale chose est que vous devez détecter une collision et empêcher les images de bouger. – Renaissance