Можете ли вы смешивать форматы текстур на уровнях карт MIP в Open GLES2.0 - PullRequest
0 голосов
/ 19 сентября 2018

Мы используем сжатые текстуры в IOS для текстур травы и песка, но меньшие уровни карты мип, которые должны перейти к гладкому цвету, в конечном итоге будут содержать детали в них как сжатые текстуры, поскольку они не могут представлять точный смешанный цвет.

Итак, можем ли мы использовать сжатую текстуру для 1024x1024, 512x512 и 256x256, а затем использовать 32-битную текстуру для уровней 128x128 и меньше?Мы бы понесли лишь небольшое увеличение общего размера текстуры и получили бы гораздо лучшее качество.

Кажется, вы можете передать формат для каждого отдельного уровня карты MIP, но я пробовал это, но разве что все карты текстуры MIPуровни имеют одинаковый формат, все кажется черным, фактически не вызывая ошибку GL.

Возможно ли это?

Спасибо

Шон

ИЛИ

1 Ответ

0 голосов
/ 20 сентября 2018

К сожалению, нет.

Из спецификации gles 2 3.8.7:

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

...

Для 2D и 3D текстур текстура завершена в OpenGL ES, есливыполняются следующие условия: • набор массивов mipmap указан с одинаковым типом и одинаковым форматом.

...