Какой хороший, простой, 2D алгоритм обнаружения столкновений только для прямоугольников?

Я разрабатываю учебное пособие по обнаружению столкновений для молодых людей, поэтому хочу, чтобы это было как можно проще, чтобы было легче объяснить.

Требования очень просты. Мир 2D и содержит только прямоугольники (произвольных размеров). BSP и даже quadtree кажутся излишними (опять же, акцент делается на простоте), но я бы хотел что-то более эффективное, чем грубое форсирование всех n (n-1) / 2 возможных столкновений.

2D, только прямоугольники и простые.

Кто-нибудь может указать на алгоритм, который я могу посмотреть? Является ли алгоритм Quadtree, что я ищу?

РЕДАКТИРОВАТЬ: Кроме того, прямоугольники никогда не будут вращаться (я держу это просто). И чтобы дать вам представление о том, в каком масштабе я работаю, на вашем обычном пользовательском ноутбуке (менее 5 лет) будет реализовано порядка нескольких сотен прямоугольников, реализованных в Python с Pygame.

Ответы на вопрос(3)

Ваш ответ на вопрос