:material-chevron-right-circle: vkCmdBeginQuery
函数原型
void vkCmdBeginQuery(
VkCommandBuffer commandBuffer,
VkQueryPool queryPool,
uint32_t query,
VkQueryControlFlags flags);
描述
开始查询操作。
参数
commandBuffer
: 录制指令的命令缓冲区。queryPool
: 管理查询结果的查询池。query
: 在查询池中的索引。flags
:VkQueryControlFlagBits
的掩码,指定查询的约束。
补充
VkQueryControlFlagBits
枚举定义:
typedef enum VkQueryControlFlagBits {
VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001,
} VkQueryControlFlagBits;
VK_QUERY_CONTROL_PRECISE_BIT
: 指定occlusion query(遮挡查询)结果的精度-
启用时(PRECISE_BIT):查询结果保证精确,但可能会降低性能。
-
禁用时(默认):查询结果可能是近似值,但性能更高。
适用场景:当需要准确的像素通过数(例如精确的遮挡剔除、性能分析)时启用。
-
返回值
无