diff options
Diffstat (limited to 'src/video_core')
| -rw-r--r-- | src/video_core/renderer_vulkan/maxwell_to_vk.cpp | 10 | ||||
| -rw-r--r-- | src/video_core/renderer_vulkan/maxwell_to_vk.h | 3 |
2 files changed, 11 insertions, 2 deletions
diff --git a/src/video_core/renderer_vulkan/maxwell_to_vk.cpp b/src/video_core/renderer_vulkan/maxwell_to_vk.cpp index a1dc8dfd8..65b9a8cf7 100644 --- a/src/video_core/renderer_vulkan/maxwell_to_vk.cpp +++ b/src/video_core/renderer_vulkan/maxwell_to_vk.cpp | |||
| @@ -221,7 +221,8 @@ vk::ShaderStageFlagBits ShaderStage(Tegra::Engines::ShaderType stage) { | |||
| 221 | return {}; | 221 | return {}; |
| 222 | } | 222 | } |
| 223 | 223 | ||
| 224 | vk::PrimitiveTopology PrimitiveTopology(Maxwell::PrimitiveTopology topology) { | 224 | vk::PrimitiveTopology PrimitiveTopology([[maybe_unused]] const VKDevice& device, |
| 225 | Maxwell::PrimitiveTopology topology) { | ||
| 225 | switch (topology) { | 226 | switch (topology) { |
| 226 | case Maxwell::PrimitiveTopology::Points: | 227 | case Maxwell::PrimitiveTopology::Points: |
| 227 | return vk::PrimitiveTopology::ePointList; | 228 | return vk::PrimitiveTopology::ePointList; |
| @@ -233,6 +234,13 @@ vk::PrimitiveTopology PrimitiveTopology(Maxwell::PrimitiveTopology topology) { | |||
| 233 | return vk::PrimitiveTopology::eTriangleList; | 234 | return vk::PrimitiveTopology::eTriangleList; |
| 234 | case Maxwell::PrimitiveTopology::TriangleStrip: | 235 | case Maxwell::PrimitiveTopology::TriangleStrip: |
| 235 | return vk::PrimitiveTopology::eTriangleStrip; | 236 | return vk::PrimitiveTopology::eTriangleStrip; |
| 237 | case Maxwell::PrimitiveTopology::TriangleFan: | ||
| 238 | return vk::PrimitiveTopology::eTriangleFan; | ||
| 239 | case Maxwell::PrimitiveTopology::Quads: | ||
| 240 | // TODO(Rodrigo): Use VK_PRIMITIVE_TOPOLOGY_QUAD_LIST_EXT whenever it releases | ||
| 241 | return vk::PrimitiveTopology::eTriangleList; | ||
| 242 | case Maxwell::PrimitiveTopology::Patches: | ||
| 243 | return vk::PrimitiveTopology::ePatchList; | ||
| 236 | default: | 244 | default: |
| 237 | UNIMPLEMENTED_MSG("Unimplemented topology={}", static_cast<u32>(topology)); | 245 | UNIMPLEMENTED_MSG("Unimplemented topology={}", static_cast<u32>(topology)); |
| 238 | return {}; | 246 | return {}; |
diff --git a/src/video_core/renderer_vulkan/maxwell_to_vk.h b/src/video_core/renderer_vulkan/maxwell_to_vk.h index dd9de1d24..8b5e3415c 100644 --- a/src/video_core/renderer_vulkan/maxwell_to_vk.h +++ b/src/video_core/renderer_vulkan/maxwell_to_vk.h | |||
| @@ -35,7 +35,8 @@ std::pair<vk::Format, bool> SurfaceFormat(const VKDevice& device, FormatType for | |||
| 35 | 35 | ||
| 36 | vk::ShaderStageFlagBits ShaderStage(Tegra::Engines::ShaderType stage); | 36 | vk::ShaderStageFlagBits ShaderStage(Tegra::Engines::ShaderType stage); |
| 37 | 37 | ||
| 38 | vk::PrimitiveTopology PrimitiveTopology(Maxwell::PrimitiveTopology topology); | 38 | vk::PrimitiveTopology PrimitiveTopology(const VKDevice& device, |
| 39 | Maxwell::PrimitiveTopology topology); | ||
| 39 | 40 | ||
| 40 | vk::Format VertexFormat(Maxwell::VertexAttribute::Type type, Maxwell::VertexAttribute::Size size); | 41 | vk::Format VertexFormat(Maxwell::VertexAttribute::Type type, Maxwell::VertexAttribute::Size size); |
| 41 | 42 | ||