Commit b35a468a by Shahbaz Youssefi Committed by Commit Bot

Vulkan: Support geometry/tessellation primitive topologies

Bug: angleproject:5406 Change-Id: Ifb7553e87164c204353e1ed94b8d64f5fb4b7206 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2574822Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
parent f2a15485
......@@ -236,9 +236,10 @@ enum class PrimitiveMode : uint8_t
LineStripAdjacency = 0xB,
TrianglesAdjacency = 0xC,
TriangleStripAdjacency = 0xD,
Patches = 0xE,
InvalidEnum = 0xE,
EnumCount = 0xE,
InvalidEnum = 0xF,
EnumCount = 0xF,
};
template <>
......
......@@ -1091,6 +1091,16 @@ VkPrimitiveTopology GetPrimitiveTopology(gl::PrimitiveMode mode)
return VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP;
case gl::PrimitiveMode::LineLoop:
return VK_PRIMITIVE_TOPOLOGY_LINE_STRIP;
case gl::PrimitiveMode::LinesAdjacency:
return VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY;
case gl::PrimitiveMode::LineStripAdjacency:
return VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY;
case gl::PrimitiveMode::TrianglesAdjacency:
return VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY;
case gl::PrimitiveMode::TriangleStripAdjacency:
return VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY;
case gl::PrimitiveMode::Patches:
return VK_PRIMITIVE_TOPOLOGY_PATCH_LIST;
default:
UNREACHABLE();
return VK_PRIMITIVE_TOPOLOGY_POINT_LIST;
......
......@@ -186,7 +186,6 @@
// Geometry shader support:
3580 VULKAN : dEQP-GLES31.functional.shaders.linkage.es31.geometry.varying.types.float_struct = SKIP
5404 VULKAN : dEQP-GLES31.functional.geometry_shading.query.primitives_generated* = SKIP
5406 VULKAN : dEQP-GLES31.functional.geometry_shading.input.*adjacency* = SKIP
5407 VULKAN : dEQP-GLES31.functional.geometry_shading.layered.* = SKIP
5407 VULKAN : dEQP-GLES31.functional.geometry_shading.instanced.invocation_per_layer* = SKIP
5407 VULKAN : dEQP-GLES31.functional.geometry_shading.instanced.multiple_layers_per_invocation* = SKIP
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment