Agregaría esto como un comentario en respuesta a la respuesta de @Nathan Reed, excepto que es demasiado grande para ser un comentario, y quizás en cualquier caso sea digno de ser una respuesta separada.
Estábamos haciendo exactamente lo que se propuso en su respuesta, y de hecho hemos comentado en la fuente que enlaza con esta página. En su mayor parte, ha funcionado extremadamente bien, excepto que una vez cada dos o tres meses, hemos estado perdiendo un servidor al azar que no responde debido a la duración masiva de las consultas de búsqueda.
La causa raíz del problema me llamó la atención mientras hacía una verificación de rendimiento para tratar de averiguar qué estaba causando esto. Es probable que solo sea una preocupación si permite la superposición de objetos. En nuestro juego lo hacemos, y en el peor de los casos, ocasionalmente conduce a un pico de profundidad que mata el rendimiento.
Tuvimos un caso de borde donde cerca de 100 objetos, todos con discos delimitadores, se agruparon muy cerca. Eso condujo al problema de una espiga muy profunda en el árbol, porque llegamos al punto en que los objetos eran más grandes que el área cubierta por los nodos quadtree, por lo que cada nuevo objeto se mostraba en múltiples nodos, lo que conducía a una subdivisión masiva del árbol, por lo que el problema se descontrola.
La conclusión de esto es que si permite que las regiones de objetos se superpongan, vigile de cerca las cosas si obtiene grupos apretados de objetos, para asegurarse de que su árbol no sea demasiado profundo.
La solución que estoy investigando actualmente es almacenar objetos como puntos, y luego, al hacer una búsqueda, aumentar los límites del rectángulo de búsqueda en el radio máximo almacenado en el árbol. Eso debería funcionar para nosotros, ya que el árbol es una búsqueda de primer paso, luego hacemos una verificación de rango basada en un círculo verdadero, junto con algunas otras verificaciones de criterios, por lo que las alertas falsas adicionales se filtrarán.
Su kilometraje real puede variar.