@@ -46,7 +46,7 @@ bool IGPUCommandBuffer::checkStateBeforeRecording(const core::bitflag<queue_flag
46
46
bool IGPUCommandBuffer::begin (const core::bitflag<USAGE> flags, const SInheritanceInfo* inheritanceInfo)
47
47
{
48
48
// Using Vulkan 1.2 VUIDs here because we don't want to confuse ourselves with Dynamic Rendering being core
49
- // https://vulkan.lunarg.com/doc/view /1.2.176.1/linux/1.2 -extensions/vkspec.html#VUID-vkBeginCommandBuffer-commandBuffer-00049
49
+ // https://registry.khronos.org/vulkan/specs /1.3 -extensions/html /vkspec.html#VUID-vkBeginCommandBuffer-commandBuffer-00049
50
50
if (m_state == STATE::RECORDING || m_state == STATE::PENDING)
51
51
{
52
52
m_logger.log (" Failed to begin command buffer: command buffer must not be in RECORDING or PENDING state." , system::ILogger::ELL_ERROR);
@@ -57,7 +57,7 @@ bool IGPUCommandBuffer::begin(const core::bitflag<USAGE> flags, const SInheritan
57
57
const auto physDev = getOriginDevice ()->getPhysicalDevice ();
58
58
if (m_level==IGPUCommandPool::BUFFER_LEVEL::PRIMARY)
59
59
{
60
- // https://vulkan.lunarg.com/doc/view /1.2.176.1/linux/1.2 -extensions/vkspec.html#VUID-vkBeginCommandBuffer-commandBuffer-02840
60
+ // https://registry.khronos.org/vulkan/specs /1.3 -extensions/html /vkspec.html#VUID-vkBeginCommandBuffer-commandBuffer-02840
61
61
if (flags.hasFlags (USAGE::ONE_TIME_SUBMIT_BIT|USAGE::SIMULTANEOUS_USE_BIT))
62
62
{
63
63
m_logger.log (" Failed to begin command buffer: a primary command buffer must not have both USAGE::ONE_TIME_SUBMIT_BIT and USAGE::SIMULTANEOUS_USE_BIT set." , system::ILogger::ELL_ERROR);
@@ -76,14 +76,14 @@ bool IGPUCommandBuffer::begin(const core::bitflag<USAGE> flags, const SInheritan
76
76
}
77
77
else if (inheritanceInfo)
78
78
{
79
- // https://vulkan.lunarg.com/doc/view /1.2.176.1/linux/1.2 -extensions/vkspec.html#VUID-vkBeginCommandBuffer-commandBuffer-00052
79
+ // https://registry.khronos.org/vulkan/specs /1.3 -extensions/html /vkspec.html#VUID-vkBeginCommandBuffer-commandBuffer-00052
80
80
if (inheritanceInfo->queryFlags .hasFlags (QUERY_CONTROL_FLAGS::PRECISE_BIT) && (!inheritanceInfo->occlusionQueryEnable /* || TODO: precise occlusion queries limit/feature*/ ))
81
81
{
82
82
m_logger.log (" Failed to begin command buffer: Precise Occlusion Queries cannot be used!" , system::ILogger::ELL_ERROR);
83
83
return false ;
84
84
}
85
85
}
86
- // https://vulkan.lunarg.com/doc/view /1.2.176.1/linux/1.2 -extensions/vkspec.html#VUID-vkBeginCommandBuffer-commandBuffer-00051
86
+ // https://registry.khronos.org/vulkan/specs /1.3 -extensions/html /vkspec.html#VUID-vkBeginCommandBuffer-commandBuffer-00051
87
87
else
88
88
{
89
89
m_logger.log (" Failed to begin command buffer: a secondary command buffer requires an inheritance info structure!" , system::ILogger::ELL_ERROR);
@@ -98,15 +98,15 @@ bool IGPUCommandBuffer::begin(const core::bitflag<USAGE> flags, const SInheritan
98
98
return false ;
99
99
}
100
100
101
- // https://vulkan.lunarg.com/doc/view /1.2.176.1/linux/1.2 -extensions/vkspec.html#VUID-VkCommandBufferBeginInfo-flags-00053
102
- // https://vulkan.lunarg.com/doc/view /1.2.176.1/linux/1.2 -extensions/vkspec.html#VUID-VkCommandBufferBeginInfo-flags-00054
101
+ // https://registry.khronos.org/vulkan/specs /1.3 -extensions/html /vkspec.html#VUID-VkCommandBufferBeginInfo-flags-00053
102
+ // https://registry.khronos.org/vulkan/specs /1.3 -extensions/html /vkspec.html#VUID-VkCommandBufferBeginInfo-flags-00054
103
103
if (!inheritanceInfo || !inheritanceInfo->renderpass || !inheritanceInfo->renderpass ->isCompatibleDevicewise (this ) || inheritanceInfo->subpass <inheritanceInfo->renderpass ->getSubpassCount ())
104
104
{
105
105
m_logger.log (" Failed to begin command buffer: a secondary command buffer must have valid inheritance info with a valid renderpass." , system::ILogger::ELL_ERROR);
106
106
return false ;
107
107
}
108
108
109
- // https://vulkan.lunarg.com/doc/view /1.2.176.1/linux/1.2 -extensions/vkspec.html#VUID-VkCommandBufferBeginInfo-flags-00055
109
+ // https://registry.khronos.org/vulkan/specs /1.3 -extensions/html /vkspec.html#VUID-VkCommandBufferBeginInfo-flags-00055
110
110
if (inheritanceInfo->framebuffer && !inheritanceInfo->framebuffer ->isCompatibleDevicewise (this )/* TODO: better check needed || inheritanceInfo->framebuffer->getCreationParameters().renderpass != inheritanceInfo->renderpass*/ )
111
111
return false ;
112
112
}
0 commit comments