diff options
| author | 2018-09-29 11:53:18 -0400 | |
|---|---|---|
| committer | 2018-09-30 14:31:58 -0400 | |
| commit | 29782273ecf2d679a9e5043fdc15152e1294625f (patch) | |
| tree | fb5e92b63779167969d4a07c92b08f740e6b0f7c | |
| parent | gl_rasterizer_cache: Implement render to cubemap. (diff) | |
| download | yuzu-29782273ecf2d679a9e5043fdc15152e1294625f.tar.gz yuzu-29782273ecf2d679a9e5043fdc15152e1294625f.tar.xz yuzu-29782273ecf2d679a9e5043fdc15152e1294625f.zip | |
gl_rasterizer_cache: Add check for array rendering to cubemap texture.
| -rw-r--r-- | src/video_core/renderer_opengl/gl_rasterizer_cache.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp b/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp index 8abbe0113..249b0061a 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp +++ b/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp | |||
| @@ -1061,6 +1061,14 @@ Surface RasterizerCacheOpenGL::RecreateSurface(const Surface& old_surface, | |||
| 1061 | const u32 byte_stride{old_params.rt.layer_stride * | 1061 | const u32 byte_stride{old_params.rt.layer_stride * |
| 1062 | (SurfaceParams::GetFormatBpp(old_params.pixel_format) / CHAR_BIT)}; | 1062 | (SurfaceParams::GetFormatBpp(old_params.pixel_format) / CHAR_BIT)}; |
| 1063 | 1063 | ||
| 1064 | if (old_params.rt.array_mode != 1) { | ||
| 1065 | // TODO(bunnei): This is used by Breath of the Wild, I'm not sure how to implement this | ||
| 1066 | // yet (array rendering used as a cubemap texture). | ||
| 1067 | LOG_CRITICAL(HW_GPU, "Unhandled rendertarget array_mode {}", old_params.rt.array_mode); | ||
| 1068 | UNREACHABLE(); | ||
| 1069 | return new_surface; | ||
| 1070 | } | ||
| 1071 | |||
| 1064 | // This seems to be used for render-to-cubemap texture | 1072 | // This seems to be used for render-to-cubemap texture |
| 1065 | const std::size_t size_with_mipmaps{new_params.SizeInBytes2DWithMipmap()}; | 1073 | const std::size_t size_with_mipmaps{new_params.SizeInBytes2DWithMipmap()}; |
| 1066 | ASSERT_MSG(size_with_mipmaps == byte_stride, "Unexpected"); | 1074 | ASSERT_MSG(size_with_mipmaps == byte_stride, "Unexpected"); |