我需要在Vulkan中绘制点云,点宽为4像素。我还需要绘制不同厚度的折线。我没有在Vulkan教程套件中看到任何这样的演示。有人能为我提供正确的构建命令,用于不同大小的点云和不同厚度的折线吗?
谢谢,
贝
答案 0 :(得分:2)
好吧,积分为VK_PRIMITIVE_TOPOLOGY_POINT_LIST
,而VK_PRIMITIVE_TOPOLOGY_LINE_STRIP
的换行符为VkPrimitiveTopology
。
GPU /驱动程序需要支持特殊尺寸。即只有在largePoints
时才可以轻松完成。来自VkPhysicalDeviceFeatures
的wideLines
受到支持。然后他们受到VkPhysicalDeviceLimits
的进一步限制。
然后,您可以通过在非片段着色器中编写gl_PointSize
(如果使用GLSL
)来更改磅值。
使用vkCreateGraphicsPipelines
在VkPipelineRasterizationStateCreateInfo
中创建管道(lineWidth
)时更改了线条大小。或者您可以将其设置为动态状态(VkPipelineDynamicStateCreateInfo
和VK_DYNAMIC_STATE_LINE_WIDTH
),在这种情况下,您可以稍后使用vkCmdSetLineWidth
在命令缓冲区录制时更改大小。
通过更改上面的内容(以及顶点数据),应该对典型的hello triangle应用程序进行相对简单的修改。