diff --git a/src/video_core/shader_environment.cpp b/src/video_core/shader_environment.cpp index 28357bf10b..db340efdae 100644 --- a/src/video_core/shader_environment.cpp +++ b/src/video_core/shader_environment.cpp @@ -59,7 +59,7 @@ static Shader::TextureType ConvertTextureType(const Tegra::Texture::TICEntry& en case Tegra::Texture::TextureType::TextureCubeArray: return Shader::TextureType::ColorArrayCube; default: - UNIMPLEMENTED(); + LOG_ERROR(Shader, "Invalid texture_type={}, falling back to texture_type={}", static_cast(entry.texture_type.Value()), Shader::TextureType::Color2D); return Shader::TextureType::Color2D; } } diff --git a/src/video_core/texture_cache/image_info.cpp b/src/video_core/texture_cache/image_info.cpp index df01b4ed8a..5cf5ddeaf4 100644 --- a/src/video_core/texture_cache/image_info.cpp +++ b/src/video_core/texture_cache/image_info.cpp @@ -51,10 +51,8 @@ ImageInfo::ImageInfo(const TICEntry& config) noexcept { config.texture_type != TextureType::Texture2DNoMipmap) { ASSERT(!config.IsPitchLinear()); } - //Normalize so that the 1D that actually uses layers is treated as 1DArray TextureType tex_type = config.texture_type; - if (tex_type == TextureType::Texture1D && - (config.Depth() > 1 || config.BaseLayer() != 0)) { + if (tex_type == TextureType::Texture1D && (config.Depth() > 1 || config.BaseLayer() != 0)) { tex_type = TextureType::Texture1DArray; } switch (tex_type) { @@ -113,7 +111,7 @@ ImageInfo::ImageInfo(const TICEntry& config) noexcept { resources.layers = 1; break; default: - ASSERT_MSG(false, "Invalid texture_type={}", static_cast(config.texture_type.Value())); + ASSERT_MSG(false, "Invalid texture_type={}", static_cast(tex_type)); break; } if (num_samples > 1) { diff --git a/src/video_core/texture_cache/image_view_info.cpp b/src/video_core/texture_cache/image_view_info.cpp index 8dac8383e0..980dc983cf 100644 --- a/src/video_core/texture_cache/image_view_info.cpp +++ b/src/video_core/texture_cache/image_view_info.cpp @@ -41,9 +41,7 @@ ImageViewInfo::ImageViewInfo(const TICEntry& config, s32 base_layer) noexcept }; range.extent.levels = config.res_max_mip_level - config.res_min_mip_level + 1; TextureType tex_type = config.texture_type; - //normalize 1D texture with many layers - if (tex_type == TextureType::Texture1D && - (config.Depth() > 1 || base_layer != 0)) { + if (tex_type == TextureType::Texture1D && (config.Depth() > 1 || base_layer != 0)) { tex_type = TextureType::Texture1DArray; } switch (tex_type) { @@ -74,18 +72,15 @@ ImageViewInfo::ImageViewInfo(const TICEntry& config, s32 base_layer) noexcept type = ImageViewType::Cube; range.extent.layers = 6; break; - case TextureType::TextureCubeArray: type = ImageViewType::CubeArray; range.extent.layers = config.Depth() * 6; break; - case TextureType::Texture1DBuffer: type = ImageViewType::Buffer; break; - default: - ASSERT_MSG(false, "Invalid texture_type={}", static_cast(config.texture_type.Value())); + ASSERT_MSG(false, "Invalid texture_type={}", static_cast(tex_type)); break; } }