Просмотр исходного кода

GPU: Added a function to retrieve the bytes per pixel of the render target formats.

Subv 8 лет назад
Родитель
Сommit
a6da2b93c1
2 измененных файлов с 15 добавлено и 0 удалено
  1. 12 0
      src/video_core/gpu.cpp
  2. 3 0
      src/video_core/gpu.h

+ 12 - 0
src/video_core/gpu.cpp

@@ -22,4 +22,16 @@ const Tegra::Engines::Maxwell3D& GPU::Get3DEngine() const {
     return *maxwell_3d;
 }
 
+u32 RenderTargetBytesPerPixel(RenderTargetFormat format) {
+    ASSERT(format != RenderTargetFormat::NONE);
+
+    switch (format) {
+    case RenderTargetFormat::RGBA8_UNORM:
+    case RenderTargetFormat::RGB10_A2_UNORM:
+        return 4;
+    default:
+        UNIMPLEMENTED_MSG("Unimplemented render target format %u", static_cast<u32>(format));
+    }
+}
+
 } // namespace Tegra

+ 3 - 0
src/video_core/gpu.h

@@ -21,6 +21,9 @@ enum class RenderTargetFormat : u32 {
     RGBA8_SRGB = 0xD6,
 };
 
+/// Returns the number of bytes per pixel of each rendertarget format.
+u32 RenderTargetBytesPerPixel(RenderTargetFormat format);
+
 class DebugContext;
 
 /**