Вопрос оптимизации SSAO

У меня работает SSAO, и это выглядит великолепно.

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

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

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

2 ответа

Решение

После того, как AO вычислен, он часто размыт с помощью текстиля одинаковой глубины, поэтому по краям не происходит кровотечения ( HBAO, слайд 27).

Что касается целей оптимизации, я бы предпочел использовать методы SAO с помощью чередующейся постобработки.

Вы храните свою текстуру как плавающую или без знака? Я не знаю, для каких целей вы используете текстуру глубины, но было бы неплохо упаковать глубину с плавающей запятой в текстуру RGBA без знака, делая то же самое для текстуры Ambient Occlusion.

В дополнение к этому вы можете сделать большую оптимизацию кэша, прочитав раздел mipmap в этой статье (ссылка на плелурон).

Другие вопросы по тегам