Я бы сказал, что это действительно зависит от того, поддерживает ли ваше оборудование этот формат текстуры или нет. Как насчет пропустить весь вопрос, используя вместо этого текстуру A8R8G8B8
? Он будет просто сжат, то есть используя битовую маску (или элементы r / g / b / a в glsl) для считывания значений «подпикселя». Как первый пиксель хранится в альфа-канале, второй пиксель в красном канале, третий пиксель в зеленом канале и т. Д.
Вы даже можете использовать это для хранения до 4 слоев в одном изображении (максимальная ширина / высота текстуры); выбор только одного не должен быть проблемой.