diff options
Diffstat (limited to 'src/video_core')
| -rw-r--r-- | src/video_core/surface.cpp | 20 | ||||
| -rw-r--r-- | src/video_core/surface.h | 2 | 
2 files changed, 22 insertions, 0 deletions
| diff --git a/src/video_core/surface.cpp b/src/video_core/surface.cpp index 4ceb219be..53d0142cb 100644 --- a/src/video_core/surface.cpp +++ b/src/video_core/surface.cpp @@ -513,6 +513,26 @@ bool IsPixelFormatASTC(PixelFormat format) {      }  } +bool IsPixelFormatSRGB(PixelFormat format) { +    switch (format) { +    case PixelFormat::RGBA8_SRGB: +    case PixelFormat::BGRA8_SRGB: +    case PixelFormat::DXT1_SRGB: +    case PixelFormat::DXT23_SRGB: +    case PixelFormat::DXT45_SRGB: +    case PixelFormat::BC7U_SRGB: +    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_5X5_SRGB: +    case PixelFormat::ASTC_2D_10X8_SRGB: +        return true; +    default: +        return false; +    } +} +  std::pair<u32, u32> GetASTCBlockSize(PixelFormat format) {      return {GetDefaultBlockWidth(format), GetDefaultBlockHeight(format)};  } diff --git a/src/video_core/surface.h b/src/video_core/surface.h index 83f31c12c..19268b7cd 100644 --- a/src/video_core/surface.h +++ b/src/video_core/surface.h @@ -547,6 +547,8 @@ SurfaceType GetFormatType(PixelFormat pixel_format);  bool IsPixelFormatASTC(PixelFormat format); +bool IsPixelFormatSRGB(PixelFormat format); +  std::pair<u32, u32> GetASTCBlockSize(PixelFormat format);  /// Returns true if the specified PixelFormat is a BCn format, e.g. DXT or DXN | 
