summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2018-04-18 04:17:07 +0200
committerGitHub <noreply@github.com>2018-04-18 04:17:07 +0200
commitc93ea96366da6907d8c5d0a4f94c9c4ed7dd39ca (patch)
treec9843ee4078d8d1180c92d033fad123d28c6a1a0
parentMerge pull request #344 from bunnei/shader-decompiler-p2 (diff)
parentgl_rasterizer_cache: Add missing LOG statements. (diff)
downloadyuzu-c93ea96366da6907d8c5d0a4f94c9c4ed7dd39ca.tar
yuzu-c93ea96366da6907d8c5d0a4f94c9c4ed7dd39ca.tar.gz
yuzu-c93ea96366da6907d8c5d0a4f94c9c4ed7dd39ca.tar.bz2
yuzu-c93ea96366da6907d8c5d0a4f94c9c4ed7dd39ca.tar.lz
yuzu-c93ea96366da6907d8c5d0a4f94c9c4ed7dd39ca.tar.xz
yuzu-c93ea96366da6907d8c5d0a4f94c9c4ed7dd39ca.tar.zst
yuzu-c93ea96366da6907d8c5d0a4f94c9c4ed7dd39ca.zip
-rw-r--r--src/video_core/engines/maxwell_3d.cpp3
-rw-r--r--src/video_core/gpu.h3
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer_cache.h3
-rw-r--r--src/video_core/textures/texture.h4
4 files changed, 11 insertions, 2 deletions
diff --git a/src/video_core/engines/maxwell_3d.cpp b/src/video_core/engines/maxwell_3d.cpp
index 41f0e5c9b..a2f162602 100644
--- a/src/video_core/engines/maxwell_3d.cpp
+++ b/src/video_core/engines/maxwell_3d.cpp
@@ -221,7 +221,8 @@ Texture::TICEntry Maxwell3D::GetTICEntry(u32 tic_index) const {
ASSERT_MSG(tic_entry.header_version == Texture::TICHeaderVersion::BlockLinear,
"TIC versions other than BlockLinear are unimplemented");
- ASSERT_MSG(tic_entry.texture_type == Texture::TextureType::Texture2D,
+ ASSERT_MSG((tic_entry.texture_type == Texture::TextureType::Texture2D) ||
+ (tic_entry.texture_type == Texture::TextureType::Texture2DNoMipmap),
"Texture types other than Texture2D are unimplemented");
auto r_type = tic_entry.r_type.Value();
diff --git a/src/video_core/gpu.h b/src/video_core/gpu.h
index 71a8661b4..2888daedc 100644
--- a/src/video_core/gpu.h
+++ b/src/video_core/gpu.h
@@ -15,7 +15,10 @@ namespace Tegra {
enum class RenderTargetFormat : u32 {
NONE = 0x0,
+ RGBA16_FLOAT = 0xCA,
+ RGB10_A2_UNORM = 0xD1,
RGBA8_UNORM = 0xD5,
+ RGBA8_SRGB = 0xD6,
};
class DebugContext;
diff --git a/src/video_core/renderer_opengl/gl_rasterizer_cache.h b/src/video_core/renderer_opengl/gl_rasterizer_cache.h
index e7ce506cf..3293905d6 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer_cache.h
+++ b/src/video_core/renderer_opengl/gl_rasterizer_cache.h
@@ -87,6 +87,7 @@ struct SurfaceParams {
case Tegra::RenderTargetFormat::RGBA8_UNORM:
return PixelFormat::RGBA8;
default:
+ NGLOG_CRITICAL(HW_GPU, "Unimplemented format={}", static_cast<u32>(format));
UNREACHABLE();
}
}
@@ -96,6 +97,7 @@ struct SurfaceParams {
case Tegra::FramebufferConfig::PixelFormat::ABGR8:
return PixelFormat::RGBA8;
default:
+ NGLOG_CRITICAL(HW_GPU, "Unimplemented format={}", static_cast<u32>(format));
UNREACHABLE();
}
}
@@ -108,6 +110,7 @@ struct SurfaceParams {
case Tegra::Texture::TextureFormat::DXT1:
return PixelFormat::DXT1;
default:
+ NGLOG_CRITICAL(HW_GPU, "Unimplemented format={}", static_cast<u32>(format));
UNREACHABLE();
}
}
diff --git a/src/video_core/textures/texture.h b/src/video_core/textures/texture.h
index c12ed6e1d..9d443ea90 100644
--- a/src/video_core/textures/texture.h
+++ b/src/video_core/textures/texture.h
@@ -13,8 +13,10 @@ namespace Tegra {
namespace Texture {
enum class TextureFormat : u32 {
- A8R8G8B8 = 8,
+ A8R8G8B8 = 0x8,
DXT1 = 0x24,
+ DXT23 = 0x25,
+ DXT45 = 0x26,
};
enum class TextureType : u32 {