Конгер Д.
Физика для разработчиков компьютерных игр
стр. 251

ДЕРЕВЬЯ ОГРАНИЧИВАЮЩИХ ПОВЕРХНОСТЕЙ

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

На рисунке 10.3 показан тигр, ограниченный несколькими прямоугольниками, а не одним, как раньше.

На рисунке 10.3 используется шесть ограничивающих блоков прямоугольной формы. Во-первых, весь тигр целиком заключен в ограничивающий блок, как и на рисунке 10.1. Этот блок выделен серой рамкой и обозначен цифрой 6. Столкновение с этим блоком означает, что столкновение с тигром возможно, хотя и не обязательно. Возможно, имел место случай, аналогичный показанному на рисунке 10.2.

Программа проверяет, действительно ли произошло столкновение, перебирая остальные ограничивающие блоки. На рисунке 10.3 это ограничивающие блоки для головы, передних лап, туловища, задних лап и хвоста тигра. Чтобы блоки было легче различить, они выделены черными рамками и пронумерованы.

Если происходит столкновение с внешним ограничивающим блоком, но не с внутренними, значит, точка столкновения находится в пустом пространстве внутри блока 6. Это на самом деле не столкновение, и программа не должна на него реагировать.

Возможно, вы спросите, зачем же вообще нужен внешний ограничивающий блок. Единственная причина его использования - повышение эффективности. Если нет столкновения с внешним ограничивающим блоком, нет нужды проверять внутренние блоки - столкновений с ними

Новости
Финальный сезон The Walking Dead закончится в декабре
Создатели интерактивной драмы The Walking Dead из Telltale представили расписание выхода всех эпизодов финального сезона проекта.
Пользователи «ВКонтакте» могут официально поддержать Альянс или Орду
С 15 и до 29 августа каждый пользователь социальной сети может официально поддержать одну из двух противоборствующих сторон: Альянс или Орду.