From a6a73d8892684596791aca34a337a07477078284 Mon Sep 17 00:00:00 2001 From: greggameplayer Date: Fri, 11 Jan 2019 21:15:30 +0100 Subject: Implement BGRA8 framebuffer format --- src/video_core/gpu.cpp | 1 + src/video_core/gpu.h | 1 + src/video_core/surface.cpp | 2 ++ 3 files changed, 4 insertions(+) diff --git a/src/video_core/gpu.cpp b/src/video_core/gpu.cpp index d3d32a359..07d4ad9f7 100644 --- a/src/video_core/gpu.cpp +++ b/src/video_core/gpu.cpp @@ -18,6 +18,7 @@ namespace Tegra { u32 FramebufferConfig::BytesPerPixel(PixelFormat format) { switch (format) { case PixelFormat::ABGR8: + case PixelFormat::BGRA8: return 4; default: return 4; diff --git a/src/video_core/gpu.h b/src/video_core/gpu.h index fb8975811..19b62dc7e 100644 --- a/src/video_core/gpu.h +++ b/src/video_core/gpu.h @@ -80,6 +80,7 @@ class DebugContext; struct FramebufferConfig { enum class PixelFormat : u32 { ABGR8 = 1, + BGRA8 = 5, }; /** diff --git a/src/video_core/surface.cpp b/src/video_core/surface.cpp index 2f6612a35..044ba116a 100644 --- a/src/video_core/surface.cpp +++ b/src/video_core/surface.cpp @@ -426,6 +426,8 @@ PixelFormat PixelFormatFromGPUPixelFormat(Tegra::FramebufferConfig::PixelFormat switch (format) { case Tegra::FramebufferConfig::PixelFormat::ABGR8: return PixelFormat::ABGR8U; + case Tegra::FramebufferConfig::PixelFormat::BGRA8: + return PixelFormat::BGRA8; default: LOG_CRITICAL(HW_GPU, "Unimplemented format={}", static_cast(format)); UNREACHABLE(); -- cgit v1.2.3