summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2019-01-30 00:33:56 +0100
committerReinUsesLisp <reinuseslisp@airmail.cc>2019-01-30 03:49:02 +0100
commitf58a6152fc89626e4a8f1746af46e9260d17d404 (patch)
tree1a7d46460ca7f43c2f7b38be5829736597ffb1e6 /src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
parenthle/ipc_helpers: Fix clang-format warnings (diff)
downloadyuzu-f58a6152fc89626e4a8f1746af46e9260d17d404.tar
yuzu-f58a6152fc89626e4a8f1746af46e9260d17d404.tar.gz
yuzu-f58a6152fc89626e4a8f1746af46e9260d17d404.tar.bz2
yuzu-f58a6152fc89626e4a8f1746af46e9260d17d404.tar.lz
yuzu-f58a6152fc89626e4a8f1746af46e9260d17d404.tar.xz
yuzu-f58a6152fc89626e4a8f1746af46e9260d17d404.tar.zst
yuzu-f58a6152fc89626e4a8f1746af46e9260d17d404.zip
Diffstat (limited to '')
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer_cache.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp b/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
index a05b8b936..c44e2aca2 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
@@ -167,6 +167,7 @@ std::size_t SurfaceParams::InnerMemorySize(bool force_gl, bool layer_only,
}
params.is_layered = SurfaceTargetIsLayered(params.target);
+ params.is_array = SurfaceTargetIsArray(params.target);
params.max_mip_level = config.tic.max_mip_level + 1;
params.rt = {};
@@ -877,10 +878,13 @@ void CachedSurface::EnsureTextureView() {
UNIMPLEMENTED_IF(gl_is_compressed);
const GLenum target{TargetLayer()};
+ const GLuint num_layers{target == GL_TEXTURE_CUBE_MAP_ARRAY ? 6u : 1u};
+ constexpr GLuint min_layer = 0;
+ constexpr GLuint min_level = 0;
texture_view.Create();
- glTextureView(texture_view.handle, target, texture.handle, gl_internal_format, 0,
- params.max_mip_level, 0, 1);
+ glTextureView(texture_view.handle, target, texture.handle, gl_internal_format, min_level,
+ params.max_mip_level, min_layer, num_layers);
OpenGLState cur_state = OpenGLState::GetCurState();
const auto& old_tex = cur_state.texture_units[0];