Vulkan相当于gl_point和gl_linestrip

时间:2017-06-15 18:48:18

标签: cloud point polyline vulkan

我需要在Vulkan中绘制点云,点宽为4像素。我还需要绘制不同厚度的折线。我没有在Vulkan教程套件中看到任何这样的演示。有人能为我提供正确的构建命令,用于不同大小的点云和不同厚度的折线吗?

谢谢,

1 个答案:

答案 0 :(得分:2)

好吧,积分为VK_PRIMITIVE_TOPOLOGY_POINT_LIST,而VK_PRIMITIVE_TOPOLOGY_LINE_STRIP的换行符为VkPrimitiveTopology

GPU /驱动程序需要支持特殊尺寸。即只有在largePoints时才可以轻松完成。来自VkPhysicalDeviceFeatureswideLines受到支持。然后他们受到VkPhysicalDeviceLimits的进一步限制。

然后,您可以通过在非片段着色器中编写gl_PointSize(如果使用GLSL)来更改磅值。

使用vkCreateGraphicsPipelinesVkPipelineRasterizationStateCreateInfo中创建管道(lineWidth)时更改了线条大小。或者您可以将其设置为动态状态(VkPipelineDynamicStateCreateInfoVK_DYNAMIC_STATE_LINE_WIDTH),在这种情况下,您可以稍后使用vkCmdSetLineWidth在命令缓冲区录制时更改大小。

通过更改上面的内容(以及顶点数据),应该对典型的hello triangle应用程序进行相对简单的修改。