Сэмплеры комбинированных изображений и отдельные сэмплы и сэмплер - PullRequest
2 голосов
/ 25 февраля 2020

Я хочу получить доступ к нескольким текстурам с одинаковыми параметрами выборки из фрагментного шейдера (например, текстуры и карты нормалей). Кроме того, изображения часто меняются, пока сэмплер остается неподвижным (предположим, что текстура - это видео). Я нашел противоречивую информацию о том, как это можно сделать. Кулинарная книга Vulkan утверждает, что использование комбинированных сэмплеров изображения может повысить производительность на некоторых платформах, но в этом ответе Reddit говорится, что комбинированные сэмплеры изображений не имеют никакого смысла.

Мой вопрос: есть ли причина не использовать отдельные сэмплированные изображения и один сэмплер (для обоих изображений), учитывая, что это делает логику программы c более простой?

1 Ответ

3 голосов
/ 25 февраля 2020

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

Так что используйте то, что лучше всего подходит для ваших нужд, и двигайтесь дальше.


в этом ответе Reddit говорится, что комбинированные сэмплеры изображений не имеют никакого смысла.

Учитывая, что указанный "ответ" утверждает, что это утверждение из спецификации:

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

«предупреждает вас, что [комбинированные сэмплеры изображений] могут быть не столь эффективны на некоторых платформах», лучше просто игнорировать все, что они сказали, и двигаться дальше.

...