summaryrefslogtreecommitdiffstats
path: root/src/video_core/surface.cpp
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2021-06-14 13:42:22 +0200
committerFernando Sahmkow <fsahmkow27@gmail.com>2021-06-16 21:35:03 +0200
commit0dd98842bf87bdd0735d187f8d183ef7593ad747 (patch)
tree9198ce2e52bb44cef14ee2f6da76d4995c73c852 /src/video_core/surface.cpp
parentReaper: Setup settings and final tuning. (diff)
downloadyuzu-0dd98842bf87bdd0735d187f8d183ef7593ad747.tar
yuzu-0dd98842bf87bdd0735d187f8d183ef7593ad747.tar.gz
yuzu-0dd98842bf87bdd0735d187f8d183ef7593ad747.tar.bz2
yuzu-0dd98842bf87bdd0735d187f8d183ef7593ad747.tar.lz
yuzu-0dd98842bf87bdd0735d187f8d183ef7593ad747.tar.xz
yuzu-0dd98842bf87bdd0735d187f8d183ef7593ad747.tar.zst
yuzu-0dd98842bf87bdd0735d187f8d183ef7593ad747.zip
Diffstat (limited to 'src/video_core/surface.cpp')
-rw-r--r--src/video_core/surface.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/video_core/surface.cpp b/src/video_core/surface.cpp
index 6308aef94..eb1746265 100644
--- a/src/video_core/surface.cpp
+++ b/src/video_core/surface.cpp
@@ -283,4 +283,11 @@ std::pair<u32, u32> GetASTCBlockSize(PixelFormat format) {
return {DefaultBlockWidth(format), DefaultBlockHeight(format)};
}
+u64 EstimatedDecompressedSize(u64 base_size, PixelFormat format) {
+ constexpr u64 RGBA8_PIXEL_SIZE = 4;
+ const u64 base_block_size = static_cast<u64>(DefaultBlockWidth(format)) *
+ static_cast<u64>(DefaultBlockHeight(format)) * RGBA8_PIXEL_SIZE;
+ return (base_size * base_block_size) / BytesPerBlock(format);
+}
+
} // namespace VideoCore::Surface