0

現在、サイズの異なるさまざまなオブジェクトがある 2D ゲームを開発しようとしています。パフォーマンスのために、衝突に均一なグリッドを使用することにしました。

オブジェクトごとに、グリッドの対応するセルに格納して衝突をチェックしていることを理解しています。ただし、オブジェクトは点ではなく実際には長方形であるため、オブジェクトを複数のセルに格納する必要がある場合があります (オブジェクトが複数のセルに重なっている場合など)。

リンク リストを使用してこのデータ構造を実装しようとすると、問題が発生します。オブジェクトのリンク リストを含む均一グリッド配列の場合、各オブジェクトは、同じセル内にある前のオブジェクトと次のオブジェクトへのポインターのペアを保持します。これは、セル 1 にオブジェクト A、B、C がある場合、オブジェクト B が重なった場合にオブジェクト B を複数のセルに配置することはできないことを意味します。セル 2 内の他のオブジェクトを指していません。

簡単な解決策は、ベクトルまたは配列を使用することですが、より良い解決策はありますか?

4

1 に答える 1