diff --git a/src/xenia/gpu/spirv_shader_translator.h b/src/xenia/gpu/spirv_shader_translator.h index 259b703c1..429ab5fe0 100644 --- a/src/xenia/gpu/spirv_shader_translator.h +++ b/src/xenia/gpu/spirv_shader_translator.h @@ -249,13 +249,13 @@ class SpirvShaderTranslator : public ShaderTranslator { bool IsSpirvVertexShader() const { return is_vertex_shader() && - GetSpirvShaderModification().vertex.host_vertex_shader_type == - Shader::HostVertexShaderType::kVertex; + !Shader::IsHostVertexShaderTypeDomain( + GetSpirvShaderModification().vertex.host_vertex_shader_type); } bool IsSpirvTessEvalShader() const { return is_vertex_shader() && - GetSpirvShaderModification().vertex.host_vertex_shader_type != - Shader::HostVertexShaderType::kVertex; + Shader::IsHostVertexShaderTypeDomain( + GetSpirvShaderModification().vertex.host_vertex_shader_type); } // Must be called before emitting any SPIR-V operations that must be in a diff --git a/src/xenia/gpu/vulkan/vulkan_command_processor.cc b/src/xenia/gpu/vulkan/vulkan_command_processor.cc index 74c7f3fe6..5e947b212 100644 --- a/src/xenia/gpu/vulkan/vulkan_command_processor.cc +++ b/src/xenia/gpu/vulkan/vulkan_command_processor.cc @@ -1379,7 +1379,8 @@ bool VulkanCommandProcessor::IssueDraw(xenos::PrimitiveType prim_type, // Nothing to draw. return true; } - // TODO(Triang3l): Tessellation. + // TODO(Triang3l): Tessellation, geometry-type-specific vertex shader, vertex + // shader as compute. if (primitive_processing_result.host_vertex_shader_type != Shader::HostVertexShaderType::kVertex) { return false;