summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar bunnei2018-08-01 11:51:59 -0400
committerGravatar GitHub2018-08-01 11:51:59 -0400
commit99a1d7440db6412f5cddcb7e00b523661f16cb53 (patch)
tree196219c41cdeebfc0dd5e0a1706a56a58d9c9dd7
parentMerge pull request #882 from lioncash/unused (diff)
parentImplement R32_FLOAT RenderTargetFormat (diff)
downloadyuzu-99a1d7440db6412f5cddcb7e00b523661f16cb53.tar.gz
yuzu-99a1d7440db6412f5cddcb7e00b523661f16cb53.tar.xz
yuzu-99a1d7440db6412f5cddcb7e00b523661f16cb53.zip
Merge pull request #885 from greggameplayer/R32-Float
Implement R32_FLOAT RenderTargetFormat
-rw-r--r--src/video_core/gpu.cpp1
-rw-r--r--src/video_core/gpu.h1
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer_cache.h3
3 files changed, 5 insertions, 0 deletions
diff --git a/src/video_core/gpu.cpp b/src/video_core/gpu.cpp
index 60c49d672..141e20444 100644
--- a/src/video_core/gpu.cpp
+++ b/src/video_core/gpu.cpp
@@ -40,6 +40,7 @@ u32 RenderTargetBytesPerPixel(RenderTargetFormat format) {
40 case RenderTargetFormat::RGBA8_UNORM: 40 case RenderTargetFormat::RGBA8_UNORM:
41 case RenderTargetFormat::RGB10_A2_UNORM: 41 case RenderTargetFormat::RGB10_A2_UNORM:
42 case RenderTargetFormat::BGRA8_UNORM: 42 case RenderTargetFormat::BGRA8_UNORM:
43 case RenderTargetFormat::R32_FLOAT:
43 return 4; 44 return 4;
44 default: 45 default:
45 UNIMPLEMENTED_MSG("Unimplemented render target format {}", static_cast<u32>(format)); 46 UNIMPLEMENTED_MSG("Unimplemented render target format {}", static_cast<u32>(format));
diff --git a/src/video_core/gpu.h b/src/video_core/gpu.h
index c464fc6d1..08aa75503 100644
--- a/src/video_core/gpu.h
+++ b/src/video_core/gpu.h
@@ -29,6 +29,7 @@ enum class RenderTargetFormat : u32 {
29 RG16_UINT = 0xDD, 29 RG16_UINT = 0xDD,
30 RG16_FLOAT = 0xDE, 30 RG16_FLOAT = 0xDE,
31 R11G11B10_FLOAT = 0xE0, 31 R11G11B10_FLOAT = 0xE0,
32 R32_FLOAT = 0xE5,
32 R16_FLOAT = 0xF2, 33 R16_FLOAT = 0xF2,
33 R8_UNORM = 0xF3, 34 R8_UNORM = 0xF3,
34}; 35};
diff --git a/src/video_core/renderer_opengl/gl_rasterizer_cache.h b/src/video_core/renderer_opengl/gl_rasterizer_cache.h
index bf0458b94..b73dc2b06 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer_cache.h
+++ b/src/video_core/renderer_opengl/gl_rasterizer_cache.h
@@ -232,6 +232,8 @@ struct SurfaceParams {
232 return PixelFormat::RG16S; 232 return PixelFormat::RG16S;
233 case Tegra::RenderTargetFormat::R16_FLOAT: 233 case Tegra::RenderTargetFormat::R16_FLOAT:
234 return PixelFormat::R16F; 234 return PixelFormat::R16F;
235 case Tegra::RenderTargetFormat::R32_FLOAT:
236 return PixelFormat::R32F;
235 default: 237 default:
236 LOG_CRITICAL(HW_GPU, "Unimplemented format={}", static_cast<u32>(format)); 238 LOG_CRITICAL(HW_GPU, "Unimplemented format={}", static_cast<u32>(format));
237 UNREACHABLE(); 239 UNREACHABLE();
@@ -439,6 +441,7 @@ struct SurfaceParams {
439 case Tegra::RenderTargetFormat::RG32_FLOAT: 441 case Tegra::RenderTargetFormat::RG32_FLOAT:
440 case Tegra::RenderTargetFormat::RG16_FLOAT: 442 case Tegra::RenderTargetFormat::RG16_FLOAT:
441 case Tegra::RenderTargetFormat::R16_FLOAT: 443 case Tegra::RenderTargetFormat::R16_FLOAT:
444 case Tegra::RenderTargetFormat::R32_FLOAT:
442 return ComponentType::Float; 445 return ComponentType::Float;
443 case Tegra::RenderTargetFormat::RGBA32_UINT: 446 case Tegra::RenderTargetFormat::RGBA32_UINT:
444 case Tegra::RenderTargetFormat::RG16_UINT: 447 case Tegra::RenderTargetFormat::RG16_UINT: