Как указать смещение LOD в металле? - PullRequest
0 голосов
/ 31 мая 2019

Я переписываю фильтр OpenGL из версии приложения для Android, над которой я сейчас работаю, в Metal. Он использует следующую функцию поиска текстуры: vec4 texture2D(sampler2D sampler, vec2 coord, float bias)

Предполагается, что моя функция ядра фильтра выглядит следующим образом:

float4 fname(sampler src) {
    ...
}

Вызов поиска текстуры будет следующим:

src.sample(coord)

Но как мне передать параметр смещения? (функция примера принимает только 1 аргумент)

1 Ответ

1 голос
/ 31 мая 2019

Боюсь, что Core Image поддерживает только 2D текстуры - без отображения и выбора LOD. Доступна только билинейная выборка.

Если вам нужны разные LOD, вам нужно передать разные сэмплеры в ваше ядро ​​и выполнить интерполяцию самостоятельно.

...