1

重複の可能性:
基本的な 2D 衝突検出

これで私を助けてくれることを願っています。私はC#が初めてなので、経験があまりありません。でも基本的には、特定のオブジェクトが空から落ちるゲームを作ろうとしています。羽のような一部のオブジェクトはドロップするのに時間がかかりますが、金属のボールはより速くドロップします。一定額の現金で開始し、選択した武器を購入して下の地面に置くことができます。今まで衝突とは何の関係もなかったので、簡単な答えがとても役に立ちます!

以下は、ゲームに含まれる衝突の一部です: (異なるタイプの衝突が異なる方法でコーディングされているかどうかは不明です)

  • 弾丸と落下物との衝突
  • 落下物と地面(無生物)との衝突
  • 落下するオブジェクトと別のオブジェクトの特定の半径との衝突 (たとえば、武器がその中心から放射ビームを放出する場合)
  • 回転体(回転刃)と落下体の衝突

誰かがこれで私を助けることができれば、それは大歓迎です!

4

1 に答える 1

0

私は数ヶ月前に海流の計算で同様の問題を抱えていました。また、カードが着地し、オーバーラップがあるかどうかを検出することについて、解決すべきアルゴリズムがありました (10 年前の小学校のプログラミング コンテスト)。

海流では、ストリームパスのベクトルの数はほぼ無限にあるため、その中から流れが障害物の影響を受けない最小半径を計算しました。電流が障害物に近づきすぎた場合 (最小半径内)、正確な衝突の実際の計算が開始されました。

カードについて。カードは4点で表されます。2d、(0,0)、(1,0)、(0, 1)、(1, 1) としましょう。別のカードが重なっているかどうかを検出するには、2 番目のカード ポイントのいずれかがその正方形内に配置されているかどうかを検出し、その逆も同様です。

Vyktorが以前に言及した実際の弾丸/羽の衝突チェックのトピックについて。

于 2012-11-14T11:39:37.427 に答える