Как стать автором
Обновить

Порталы: как устроен расчёт видимости в Quake, часть 2

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров2.3K
Всего голосов 19: ↑19 и ↓0+30
Комментарии1

Комментарии 1

Мне подход Quake с заранее-вычисленной видимостью всё же кажется не самым оптимальным, ибо видимость считается для листьев BSP дерева, которые могут быть достаточно большими по размеру, а значит отсечение производится достаточно консервативно. Более точный результат даёт отсечение во времени выполнения на основе текущей позиции камеры, через проецирование порталов в экранное пространство - так делал, например, Thief. Это позволило точнее отсекать динамические объекты и следовательно плотнее наполнять ими уровень.

Кстати, следствием использования PVS в Quake является и сам подход использование BSP дерева - оно рисуется спереди назад и отсечением полигонов через спан-буфер, что вызвано как раз тем, что дублирование заливки пикселей всё же может быть значительным (PVS не справляется). А для рисования моделей приходится ещё и буфер глубины заполнять. Thief такими проблемами не страдал и мог рисовать всё в порядке от дальних полигонов к ближним, правда с небольшим дублированием заливки пикселей.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории