2

発射物が画面の外に落ちたときに、どのように発射物をリバウンドしますか?

私のコード: http: //pastebin.com/qs3kyaTc

Box2dとcocos2dをインストールしました。助けていただければ幸いです。ありがとう。

4

1 に答える 1

0

オブジェクトから発射物を跳ね返すには、通常、反射ベクトルr(サーフェスの単位法線ベクトル) を見つける必要があります。次に、単位速度ベクトルを取り、v最終速度をに設定します

r + (r - v)

表面が完全に垂直または水平であると仮定すると、発射物が 1 つの壁だけで跳ね返る場合、その方向を向いている壁で跳ね返る場合は、速度xの成分が無効になります。x方向を向いている壁で跳ね返る場合は、速度yのコンポーネントを無効にします。y発射物が同時に 2 つの壁に衝突することが判明した場合は、両方を無効にします。

于 2012-06-12T12:41:09.567 に答える