aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/texture_cache/image_info.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/video_core/texture_cache/image_info.cpp')
-rw-r--r--src/video_core/texture_cache/image_info.cpp24
1 files changed, 5 insertions, 19 deletions
diff --git a/src/video_core/texture_cache/image_info.cpp b/src/video_core/texture_cache/image_info.cpp
index 677e22b8a7..a0d8d5d94c 100644
--- a/src/video_core/texture_cache/image_info.cpp
+++ b/src/video_core/texture_cache/image_info.cpp
@@ -70,19 +70,14 @@ ImageInfo::ImageInfo(const TICEntry& config) noexcept {
switch (tex_type) {
case TextureType::Texture1D:
ASSERT(config.BaseLayer() == 0);
- ASSERT(config.Depth() == 1);
type = ImageType::e1D;
size.width = config.Width();
- size.depth = 1;
resources.layers = 1;
break;
case TextureType::Texture1DArray:
- ASSERT(config.Depth() > 0);
- ASSERT(config.BaseLayer() < config.Depth());
type = ImageType::e1D;
size.width = config.Width();
- size.depth = 1;
- resources.layers = config.Depth() - config.BaseLayer();
+ resources.layers = config.BaseLayer() + config.Depth();
break;
case TextureType::Texture2D:
case TextureType::Texture2DNoMipmap:
@@ -91,36 +86,28 @@ ImageInfo::ImageInfo(const TICEntry& config) noexcept {
rescaleable = !config.IsPitchLinear();
size.width = config.Width();
size.height = config.Height();
- size.depth = 1;
- resources.layers = 1;
+ resources.layers = config.BaseLayer() + 1;
break;
case TextureType::Texture2DArray:
- ASSERT(config.Depth() > 0);
- ASSERT(config.BaseLayer() < config.Depth());
type = ImageType::e2D;
rescaleable = true;
size.width = config.Width();
size.height = config.Height();
- size.depth = 1;
- resources.layers = config.Depth() - config.BaseLayer();
+ resources.layers = config.BaseLayer() + config.Depth();
break;
case TextureType::TextureCubemap:
ASSERT(config.Depth() == 1);
type = ImageType::e2D;
size.width = config.Width();
size.height = config.Height();
- size.depth = 1;
- resources.layers = 6;
+ resources.layers = config.BaseLayer() + 6;
break;
case TextureType::TextureCubeArray:
UNIMPLEMENTED_IF(config.load_store_hint != 0);
- ASSERT(config.Depth() > 0);
- ASSERT(config.BaseLayer() < config.Depth());
type = ImageType::e2D;
size.width = config.Width();
size.height = config.Height();
- size.depth = 1;
- resources.layers = (config.Depth() - config.BaseLayer()) * 6;
+ resources.layers = config.BaseLayer() + config.Depth() * 6;
break;
case TextureType::Texture3D:
ASSERT(config.BaseLayer() == 0);
@@ -133,7 +120,6 @@ ImageInfo::ImageInfo(const TICEntry& config) noexcept {
case TextureType::Texture1DBuffer:
type = ImageType::Buffer;
size.width = config.Width();
- size.depth = 1;
resources.layers = 1;
break;
default: