2013-05-16 159 views
0

我有在世界的中心的圓心。我以b2Body的形式向世界添加一些球。現在我想移動或將球扔到屏幕的中心。效果應該像球與圓相撞。移動Box2D的身體屏

球的位置隨機,所以他們可以在任何人的屏幕和旅行的需要到屏幕的中心圓

任何一個可以告訴我如何做到這一點,因爲我沒有上移動b2Body對象的想法。

I want blue circle to attract red circles

我想藍色的圓圈,以吸引紅色圓圈。換句話說,我想要紅色圓圈移動到藍色圓圈。

+0

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

+0

我想它使用武力和重力 –

+1

啊,就是這樣一個概念:每一步都向每個身體增加一個力量,朝向中心。重力拉力(施加的力)以平方的距離下降,即距離的兩倍意味着力的四分之一。然而,在遊戲中,這可能需要調整,因爲重力的影響可能很快就會被消除,或者它看起來永遠不會脫落(在任何地方引力相同) - 取決於規模,需要實驗。 – LearnCocos2D

回答

0

在這種情況下,我不知道這種方法,但你可以試試這個方法。我想你是通過觸摸屏幕來添加b2body的。現在我不知道你的B2body的類型是什麼。 有兩種方法可以移動b2body。

檢查此鏈接:http://www.cocos2d-iphone.org/forum/topic/21620

從這個鏈接,

我猜測,在你的遊戲中,身體是b2static的身體,你可以做的是移動你的精靈到屏幕的中心,相對於以tick方式改變相應物體的位置。

而且你要停下來的精靈,當它擊中中心球所以停止移動時它擊中球中心相應的精靈。

這也許是可能的方式,如果我理解你的問題。

+0

我的身體是b2_dynamic。我沒有使用任何觸摸。紅色圓圈以編程方式添加。所以只要我在世界上添加紅色身體,他們應該前往藍色圓圈 –

+0

是的,它會走向藍色圓圈。嘗試實施我所說的話。主要的是你必須檢測碰撞並停止移動圖像。 – Renaissance