Kaynağa Gözat

Vulkan: Force topology to PatchList for Tessellation (#7102)

Vulkan spec states that input topology should always be PatchList when a tessellation pipeline is present. The AMD GPU on windows crashes so hard it BSODs the machine if this isn't the case, so it's forced here just in case.

I'm not sure what providing a different topology here would even do, as you'd think it would always be a patch list input.
riperiperi 1 yıl önce
ebeveyn
işleme
698e36bbd2
1 değiştirilmiş dosya ile 1 ekleme ve 1 silme
  1. 1 1
      src/Ryujinx.Graphics.Vulkan/PipelineState.cs

+ 1 - 1
src/Ryujinx.Graphics.Vulkan/PipelineState.cs

@@ -439,7 +439,7 @@ namespace Ryujinx.Graphics.Vulkan
                 {
                     SType = StructureType.PipelineInputAssemblyStateCreateInfo,
                     PrimitiveRestartEnable = primitiveRestartEnable,
-                    Topology = Topology,
+                    Topology = HasTessellationControlShader ? PrimitiveTopology.PatchList : Topology,
                 };
 
                 var tessellationState = new PipelineTessellationStateCreateInfo