| | |
| | |
| |
|
| | #pragma once |
| |
|
| | #include "common/alignment.h" |
| | #include "common/bit_util.h" |
| | #include "common/common_types.h" |
| | #include "core/frontend/framebuffer_layout.h" |
| | #include "video_core/surface.h" |
| |
|
| | namespace VideoCore::Capture { |
| |
|
| | constexpr u32 BlockHeight = 4; |
| | constexpr u32 BlockDepth = 0; |
| | constexpr u32 BppLog2 = 2; |
| |
|
| | constexpr auto PixelFormat = Surface::PixelFormat::B8G8R8A8_UNORM; |
| |
|
| | constexpr auto LinearWidth = Layout::ScreenUndocked::Width; |
| | constexpr auto LinearHeight = Layout::ScreenUndocked::Height; |
| | constexpr auto LinearDepth = 1U; |
| | constexpr auto BytesPerPixel = 4U; |
| |
|
| | constexpr auto TiledWidth = LinearWidth; |
| | constexpr auto TiledHeight = Common::AlignUpLog2(LinearHeight, BlockHeight + BlockDepth + BppLog2); |
| | constexpr auto TiledSize = TiledWidth * TiledHeight * (1 << BppLog2); |
| |
|
| | constexpr Layout::FramebufferLayout Layout{ |
| | .width = LinearWidth, |
| | .height = LinearHeight, |
| | .screen = {0, 0, LinearWidth, LinearHeight}, |
| | .is_srgb = false, |
| | }; |
| |
|
| | } |
| |
|