PVS: Potentially Visible Set
PVS — Potentially Visible Set (Потенциально видимый набор) — один из методов отсечения невидимой геометрии, основанный на расчете видимости в разных точках на протяжении всего уровня. В ситуациях когда расчет сложен, просчитать видимость возможно только на этапе пре-процессинга, что хорошо подходит для статичных игровых сцен.
Для расчёта весь уровень разделяется на клетки равного размера. Далее находятся клетки, которые видны как минимум из одной точки текущей клетки. По результату этих проверок можно составить набор информации, обозначающий видимость в каждой клетке.
В процессе отрисовки мы берём позицию камеры и смотрим в какой клетке мы находимся, и так как наши клетки составляют регулярную трехмерную сетку, эта операция достаточно тривиальна. После этого, в зависимости от типа найденных данных, мы смотрим какие объекты нужно рисовать для данной позиции (в каждой клетке сохранён список видимых объектов), или перед отрисовкой объекта проверяем видим ли он (каждая клетка хранит флаг о видимости всех остальных). Выбор подходящего типа данных может зависеть от того, сколько в среднем клеток видно из текущей. Если это число мало, то хранить информацию о всех клетках скорее всего будет расточительно, но в другом случае, как например отрисовка ландшафта выгодным окажется второй способ.
Тяжёлый этап в данном методе, это собственно сам расчёт видимости, который чаще всего медленный.
Способы расчета можно разделить на несколько категорий:
- Консервативные: Такие методы сильно преувеличивают количество видимых клеток, отмечая невидимые клетки как видимые. Но в этих методах не допускаются ошибки в виде пропадания в действительности невидимых клеток.
- Агрессивные: В противоположность предыдущей категории, этот метод недооценивает видимость некоторых зон, что даёт в результате ошибочную картинку. Такие методы могут применяться, когда ошибка не очень велика, или в случае когда более точный расчет слишком сложен.
- Примерные: Такие решения допускают оба типа ошибок, как недооценивая видимость, так и преувеличение факта видимости. Такие методы используются когда скорость расчёта — решающий фактор.
- Точные: Стоит ли говорить, что данная группа методов даёт точный результат видимости, и конечно же требует большой расчетной мощности. Эти методы чаще всего применяются на этапе пре-процессинга, но существуют и относительно быстрые точные решения.
Ссылки:
http://www.tml.tkk.fi/Opinnot/Tik-111.500/2003/paperit/MikkoLaakso.pdf
Что такое PVS: Potentially Visible Set?
#отсечение невидимой геометрии
29 марта 2007 (Обновление: 22 июня 2009)