1

chipmunk/cocos2d では、古典的な跳ねるボールのデモを任意の数のボールで楽しく実行しています。スプライトの動きが止まったとき (つまり、ボールが底に沈んで「完了」したとき) を知るにはどうすればよいですか?

Layer クラスで float prevX, prevY を宣言しようとしたので、現在の x,y を updateShape で以前の x,y と比較できましたが、スプライトの親にアクセスできません。

         ((CustomLayer *)(sprite->parent))->preX = body->p.x;

コンパイラは、スプライトの親が保護されていることを通知します。

ありがとう。

4

1 に答える 1

2

Chipmunk のスリープ アルゴリズムを有効にしている場合は、cpBodyIsSleeping() を呼び出すだけです。

シマリスは、運動エネルギーが特定のしきい値よりも低いことを確認し、タイマーをインクリメントすることで、物がアイドル状態であることを把握します。タイマーが一定量に達すると、本体がアイドル状態であると見なされます。

于 2011-06-10T04:59:50.683 に答える