Просмотр исходного кода

Fix mip offset/size for full 3D texture upload on Vulkan (#6294)

gdkchan 2 лет назад
Родитель
Сommit
6a8ac389e5
1 измененных файлов с 3 добавлено и 1 удалено
  1. 3 1
      src/Ryujinx.Graphics.Vulkan/TextureView.cs

+ 3 - 1
src/Ryujinx.Graphics.Vulkan/TextureView.cs

@@ -839,7 +839,9 @@ namespace Ryujinx.Graphics.Vulkan
 
 
             for (int level = 0; level < levels; level++)
             for (int level = 0; level < levels; level++)
             {
             {
-                int mipSize = GetBufferDataLength(Info.GetMipSize2D(dstLevel + level) * dstLayers);
+                int mipSize = GetBufferDataLength(is3D && !singleSlice
+                    ? Info.GetMipSize(dstLevel + level)
+                    : Info.GetMipSize2D(dstLevel + level) * dstLayers);
 
 
                 int endOffset = offset + mipSize;
                 int endOffset = offset + mipSize;