aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/vk/GrVkPipeline.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/vk/GrVkPipeline.cpp')
-rw-r--r--src/gpu/vk/GrVkPipeline.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gpu/vk/GrVkPipeline.cpp b/src/gpu/vk/GrVkPipeline.cpp
index 7c0aeb4b15..8310199b39 100644
--- a/src/gpu/vk/GrVkPipeline.cpp
+++ b/src/gpu/vk/GrVkPipeline.cpp
@@ -375,6 +375,7 @@ static VkCullModeFlags draw_face_to_vk_cull_mode(GrDrawFace drawFace) {
}
static void setup_raster_state(const GrPipeline& pipeline,
+ const GrCaps* caps,
VkPipelineRasterizationStateCreateInfo* rasterInfo) {
memset(rasterInfo, 0, sizeof(VkPipelineRasterizationStateCreateInfo));
rasterInfo->sType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO;
@@ -382,7 +383,8 @@ static void setup_raster_state(const GrPipeline& pipeline,
rasterInfo->flags = 0;
rasterInfo->depthClampEnable = VK_FALSE;
rasterInfo->rasterizerDiscardEnable = VK_FALSE;
- rasterInfo->polygonMode = VK_POLYGON_MODE_FILL;
+ rasterInfo->polygonMode = caps->wireframeMode() ? VK_POLYGON_MODE_LINE
+ : VK_POLYGON_MODE_FILL;
rasterInfo->cullMode = draw_face_to_vk_cull_mode(pipeline.getDrawFace());
rasterInfo->frontFace = VK_FRONT_FACE_COUNTER_CLOCKWISE;
rasterInfo->depthBiasEnable = VK_FALSE;
@@ -439,7 +441,7 @@ GrVkPipeline* GrVkPipeline::Create(GrVkGpu* gpu, const GrPipeline& pipeline,
setup_color_blend_state(pipeline, &colorBlendInfo, attachmentStates);
VkPipelineRasterizationStateCreateInfo rasterInfo;
- setup_raster_state(pipeline, &rasterInfo);
+ setup_raster_state(pipeline, gpu->caps(), &rasterInfo);
VkDynamicState dynamicStates[3];
VkPipelineDynamicStateCreateInfo dynamicInfo;