Учитывая следующее растровое изображение альфа-канала:
const int width = 4, height = 4;
var alpha = new byte[width * height] {
255, 255, 255, 255,
0, 127, 127, 0,
0, 127, 127, 0,
255, 255, 255, 255
};
Я хотел бы загрузить его в OpenGl и использовать его во фрагментном шейдере как:
out vec4 color;
void main() {
float alpha = // Get pixel alpha like texture()
color = vec4(1, 0, 0, alpha);
}
Я знаю, что возможно использовать растровую текстуру RGBA, но возможно ли использовать только растровую текстуру альфа-канала? (от самого простого byte[]
типа)