aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/texture_cache/surface_params.cpp
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2020-03-14 09:48:39 -0400
committerGitHub <noreply@github.com>2020-03-14 09:48:39 -0400
commit56fc1688f6ff7f078e28365311c3b6a966af1418 (patch)
treed7987c028fddaa50a56ac6321de3f865d272e089 /src/video_core/texture_cache/surface_params.cpp
parentad5120c595a7527f52069d0eb5d676a202a2573a (diff)
parent2337a2fdbc7b2c0ccdb7ea11f88187d63f826e24 (diff)
Merge pull request #3499 from ReinUsesLisp/depth-2d-array
texture_cache/surface_params: Force depth=1 on 2D textures
Diffstat (limited to 'src/video_core/texture_cache/surface_params.cpp')
-rw-r--r--src/video_core/texture_cache/surface_params.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/video_core/texture_cache/surface_params.cpp b/src/video_core/texture_cache/surface_params.cpp
index f00839313d..9931c5ef78 100644
--- a/src/video_core/texture_cache/surface_params.cpp
+++ b/src/video_core/texture_cache/surface_params.cpp
@@ -113,8 +113,10 @@ SurfaceParams SurfaceParams::CreateForTexture(const FormatLookupTable& lookup_ta
params.height = tic.Height();
params.depth = tic.Depth();
params.pitch = params.is_tiled ? 0 : tic.Pitch();
- if (params.target == SurfaceTarget::TextureCubemap ||
- params.target == SurfaceTarget::TextureCubeArray) {
+ if (params.target == SurfaceTarget::Texture2D && params.depth > 1) {
+ params.depth = 1;
+ } else if (params.target == SurfaceTarget::TextureCubemap ||
+ params.target == SurfaceTarget::TextureCubeArray) {
params.depth *= 6;
}
params.num_levels = tic.max_mip_level + 1;