[dxvk] Don't re-initialize 3D images when clearing render targets

Layout transitions apply to the full subresource, even if we only
render to one slice. Fixes #775 on Nvidia Kepler and Maxwell cards.
This commit is contained in:
Philip Rebohle 2018-12-04 23:20:40 +01:00
parent df667b7b0e
commit 171cf53bc0
1 changed files with 2 additions and 1 deletions

View File

@ -515,7 +515,8 @@ namespace dxvk {
if (clearAspects & VK_IMAGE_ASPECT_STENCIL_BIT)
depthOp.loadOpS = VK_ATTACHMENT_LOAD_OP_CLEAR;
if (clearAspects == imageView->info().aspect) {
if (clearAspects == imageView->info().aspect
&& imageView->imageInfo().type != VK_IMAGE_TYPE_3D) {
colorOp.loadLayout = VK_IMAGE_LAYOUT_UNDEFINED;
depthOp.loadLayout = VK_IMAGE_LAYOUT_UNDEFINED;
}