作成中のゲームでクワッドツリーを衝突検出に使用しようとしていますが、異なるクワッド間を移動している可能性のあるオブジェクトを処理する方法がわかりません。
私が考えることができる唯一の方法は、フレームごとにツリー全体をクリアしてから、そこにすべてを追加することですが、それはCPUを集中的に使用し、あまり効率的ではないようです. フレームごとに各オブジェクトをチェックして、現在のクワッドの境界の外に移動したかどうかを確認し、移動した場合は削除して再読み込みしますか? フレームごとにすべての移動オブジェクトに対して衝突チェックを実行することになるため、これもかなり非効率的なように思えます。
また、四分木についてですが、その中で動き回るオブジェクトとは関係ありませんが、同じクワッド内の複数のオブジェクトをどのように処理しますか? それらについて私が読んだほとんどのサイトでは、クワッド内のオブジェクトは 1 つ、場合によっては 2 つだけにする必要があり、それ以上のオブジェクトを取得した場合はツリーに押し下げると書かれています。こんな状況だったら?3 つの円があり、それらはすべてその下のレベルの端にあるため、それ以上下に行くことはできませんが、同じレベルに 3 つすべてがあり、人々はあなたが持つべきではないと言っています。