1

Cocos2D を使用して、iPhone 用の Chipmunk 5 を使用しています。2 つの特定のオブジェクト間の衝突時に、その衝突の速度をチェックするメソッドを実行したいと思います。x を超えている場合は 1 つのコード セットを実行し、x の下にある場合は別のセットを実行します。

これで、基本は理解できましたが、衝突検出のメソッドを実行するコードと衝突速度をチェックするコードがわかりません。

どんな助けや指針も大歓迎です。

乾杯。

4

2 に答える 2

0

衝突の登録に役立つかもしれないのaddCollisionCallbackBetweenType関数をチェックしてください。SpaceManager.h

その後、速度のオブジェクトのvプロパティを確認できます。(http://code.google.com/p/chipmunk-physics/source/browse/trunk/include/chipmunk/cpBody.h、リンクされていない、新しいユーザー。)cpBodycpVect

私はシマリスの経験はありませんが、それは少しグーグルが現れたものです。

于 2010-07-03T18:11:22.133 に答える
0

Chipmunk 5の場合、サウンドを再生したり、衝突によるダメージを適用したりする場合は、解決後のコールバックからcpArbiterTotalImpulse()関数を呼び出すことをお勧めします。詳細については、こちらのドキュメントをご覧ください。 http://chipmunk-physics.net/release/Chipmunk-5.x/Chipmunk-5.3.5-Docs/#Callbacks

また、Chipmunk5はこの時点ではかなり古いものです。面倒ではない場合は、6.xにアップグレードすることをお勧めします。次に、cpArbiterTotalKE()関数を使用できます。(ただし、既存のプロジェクトの終わりに近づいている場合は、5.xを使用します。)運動エネルギーは、衝突がインパルス強度よりも「悪い」ことを示すさらに優れた指標です。

于 2012-07-06T05:00:36.973 に答える