私のゲームで作業しているときに、私は世界のすべてのユニットを追跡して、最近傍の戦闘をチェックできるようにする必要があります。これはRTSのようなゲームで、数千もの小さな自動化ユニットが動き回る可能性があります。
私はKD-TreesとQuadtrees(特にPoint Quadtrees)を調べてきました。私はまだそれらがどのように機能するかの詳細を学習しようとしていますが、これまでのところポイントクワッドツリーは私にとって最も理にかなっています。ただし、KD-Treeの方が検索が高速であるという印象を得ています。これは、ツリー内に持つポイントの数にとって重要です。
一方、私の場合は、常に動いている多数のユニットを追跡します。フレームごとに、それらの位置は常に異なります。四分木はKD-Treeよりも明らかに高速にリバランスしますが、ツリー内のすべてのポイントをリバランスするときにそれが当てはまるかどうかはわかりません。
この場合、ツリーのすべてのポイントのバランスを再調整するのではなく、各フレームのツリーをスクラップして最初から再構築する方がよいのではないかと思います。クワッドツリーの再バランスが速い場合、ゼロから構築する方が速いということですか?もしそうなら、それは、KD-Treeの検索速度よりもパフォーマンスにとってより重要かもしれません。ツリーを作成することの負担の大きさにもよりますが、私にはわかりません...