Not many Vulkan implementations support RGB textures
GL_RED, GL_GREEN, GL_BLUE, GL_ALPHA,
GL_RED, GL_RED, GL_RED, GL_ONE,
GL_RED, GL_RED, GL_RED, GL_GREEN,
GL_RED, GL_GREEN, GL_BLUE, GL_ALPHA,
GL_RED, GL_RED, GL_RED, GL_ONE,
GL_RED, GL_RED, GL_RED, GL_GREEN,
- GL_BLUE, GL_GREEN, GL_RED, GL_ALPHA
+ GL_BLUE, GL_GREEN, GL_RED, GL_ALPHA,
+ GL_RED, GL_GREEN, GL_BLUE, GL_ONE
return BGR;
else if(comp==RGBA && swiz==RGB_TO_BGR)
return BGRA;
return BGR;
else if(comp==RGBA && swiz==RGB_TO_BGR)
return BGRA;
+ else if(comp==RGBA && swiz==RGBA_TO_RGB)
+ return RGB;
+ else if(comp==BGRA && swiz==RGBA_TO_RGB)
+ return BGR;
else
throw invalid_argument("swizzle_components");
}
else
throw invalid_argument("swizzle_components");
}
return RGB;
else if(comp==BGRA && swiz==RGB_TO_BGR)
return RGBA;
return RGB;
else if(comp==BGRA && swiz==RGB_TO_BGR)
return RGBA;
+ else if(comp==RGB && swiz==RGBA_TO_RGB)
+ return RGBA;
+ else if(comp==BGR && swiz==RGBA_TO_RGB)
+ return BGRA;
else
throw invalid_argument("swizzle_components");
}
else
throw invalid_argument("swizzle_components");
}
NO_SWIZZLE,
R_TO_LUMINANCE,
RG_TO_LUMINANCE_ALPHA,
NO_SWIZZLE,
R_TO_LUMINANCE,
RG_TO_LUMINANCE_ALPHA,
+ RGB_TO_BGR,
+ RGBA_TO_RGB