diff --git a/src/xenia/gpu/vulkan/vulkan_pipeline_cache.cc b/src/xenia/gpu/vulkan/vulkan_pipeline_cache.cc index f1af57a23..296969959 100644 --- a/src/xenia/gpu/vulkan/vulkan_pipeline_cache.cc +++ b/src/xenia/gpu/vulkan/vulkan_pipeline_cache.cc @@ -581,6 +581,7 @@ bool VulkanPipelineCache::GetCurrentStateDescription( primitive_processing_result.host_primitive_reset_enabled; description_out.depth_clamp_enable = + device_features.depthClamp && regs.Get().clip_disable; // TODO(Triang3l): Tessellation. @@ -825,6 +826,10 @@ bool VulkanPipelineCache::ArePipelineRequirementsMet( return false; } + if (!device_features.depthClamp && description.depth_clamp_enable) { + return false; + } + if (!device_features.fillModeNonSolid && description.polygon_mode != PipelinePolygonMode::kFill) { return false;