Я пытаюсь использовать квадродерево для обнаружения столкновений в игре, которую я создаю, но я не уверен, как обрабатывать объекты, которые могут перемещаться между разными квадратами?
Единственный способ, которым я могуПодумайте об этом, вычистив все дерево в каждом кадре, а затем добавив туда все обратно, но, похоже, это может увеличить нагрузку на процессор и не очень эффективно.Проверяете ли вы каждый объект каждый кадр, чтобы увидеть, не переместился ли он за пределы его текущего квадрата, и если да, то удалите его и прочитайте?Это опять-таки кажется, что это может быть довольно неэффективно, потому что вы будете выполнять проверку столкновений для каждого движущегося объекта в каждом кадре.
Кроме того, что касается квадродерев, но не связанных с движущимися в них объектами, как вы обрабатываете несколько объектов втот же квадроцикл?Большинство сайтов, о которых я читал, говорят о том, что у вас должно быть только один, может быть, два объекта в квадре, и если вы получите больше, то опустите их в дерево.Что если бы у вас была такая ситуация, как this ?У вас есть три круга, и все они находятся на краях уровня ниже их, поэтому они не могут идти дальше вниз, но есть три на одном уровне, что люди говорят, что вы не должны иметь.