|
|
|
@ -305,6 +305,8 @@ static constexpr std::array<FormatTuple, VideoCore::Surface::MaxPixelFormat> tex
|
|
|
|
|
{GL_SRGB8_ALPHA8, GL_RGBA, GL_UNSIGNED_BYTE, ComponentType::UNorm, false}, // ASTC_2D_8X8_SRGB
|
|
|
|
|
{GL_SRGB8_ALPHA8, GL_RGBA, GL_UNSIGNED_BYTE, ComponentType::UNorm, false}, // ASTC_2D_8X5_SRGB
|
|
|
|
|
{GL_SRGB8_ALPHA8, GL_RGBA, GL_UNSIGNED_BYTE, ComponentType::UNorm, false}, // ASTC_2D_5X4_SRGB
|
|
|
|
|
{GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, ComponentType::UNorm, false}, // ASTC_2D_5X5
|
|
|
|
|
{GL_SRGB8_ALPHA8, GL_RGBA, GL_UNSIGNED_BYTE, ComponentType::UNorm, false}, // ASTC_2D_5X5_SRGB
|
|
|
|
|
|
|
|
|
|
// Depth formats
|
|
|
|
|
{GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT, GL_FLOAT, ComponentType::Float, false}, // Z32F
|
|
|
|
@ -903,10 +905,12 @@ static void ConvertFormatAsNeeded_LoadGLBuffer(std::vector<u8>& data, PixelForma
|
|
|
|
|
case PixelFormat::ASTC_2D_8X8:
|
|
|
|
|
case PixelFormat::ASTC_2D_8X5:
|
|
|
|
|
case PixelFormat::ASTC_2D_5X4:
|
|
|
|
|
case PixelFormat::ASTC_2D_5X5:
|
|
|
|
|
case PixelFormat::ASTC_2D_4X4_SRGB:
|
|
|
|
|
case PixelFormat::ASTC_2D_8X8_SRGB:
|
|
|
|
|
case PixelFormat::ASTC_2D_8X5_SRGB:
|
|
|
|
|
case PixelFormat::ASTC_2D_5X4_SRGB: {
|
|
|
|
|
case PixelFormat::ASTC_2D_5X4_SRGB:
|
|
|
|
|
case PixelFormat::ASTC_2D_5X5_SRGB: {
|
|
|
|
|
// Convert ASTC pixel formats to RGBA8, as most desktop GPUs do not support ASTC.
|
|
|
|
|
u32 block_width{};
|
|
|
|
|
u32 block_height{};
|
|
|
|
|