Browse Source
Merge pull request #346 from bunnei/misc-gpu-improvements
Misc gpu improvements
pull/15/merge
bunnei
8 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with
11 additions and
2 deletions
-
src/video_core/engines/maxwell_3d.cpp
-
src/video_core/gpu.h
-
src/video_core/renderer_opengl/gl_rasterizer_cache.h
-
src/video_core/textures/texture.h
|
|
|
@ -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(); |
|
|
|
|
|
|
|
@ -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; |
|
|
|
|
|
|
|
@ -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(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@ -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 { |
|
|
|
|