QuadTree para detecção de colisão 2D

Atualmente, estou trabalhando em um tipo de jogo de tiro 2D e estou usando uma árvore quádrupla para minhas detecções de colisão. Eu escrevi uma quad tree que empurra corretamente meus atores para os nós / folhas a que pertencem na árvore. No entanto, tenho alguns problemas.

Primeiramente, como eu realmente uso meu quadtree para selecionar contra quais outros objetos um objeto deve testar colisões? Não tenho certeza de como isso é feito.

O que traz uma segunda pergunta. Digamos que eu tenha um objeto no nó que não seja vizinho de outro nó, mas que o objeto seja grande o suficiente para abranger alguns nós, como posso verificar se há uma colisão real, pois acho que a árvore pode considerar que não é perto o suficiente para colidir com objetos em um nó "distante"? Os objetos que não se encaixam completamente em um nó devem ser mantidos no nó pai?

No meu jogo, a maioria dos objetos é de tamanhos diferentes e se move.

Eu li um bom número de blogs / artigos sobre quadtrees, mas a maioria apenas explica como construir uma árvore que não é exatamente o que estou procurando.

Qualquer ajuda / informação é bem-vinda.

questionAnswers(1)

yourAnswerToTheQuestion