mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-08-25 16:06:31 +00:00
Add support for VK_KHR_multiview extension
This commit is contained in:
@@ -623,6 +623,7 @@ DECLARE_REFLECTION_STRUCT(VkPipelineVertexInputDivisorStateCreateInfoEXT);
|
||||
DECLARE_REFLECTION_STRUCT(VkSamplerReductionModeCreateInfoEXT);
|
||||
DECLARE_REFLECTION_STRUCT(VkDebugUtilsLabelEXT);
|
||||
DECLARE_REFLECTION_STRUCT(VkSamplerYcbcrConversionCreateInfoKHR);
|
||||
DECLARE_REFLECTION_STRUCT(VkRenderPassMultiviewCreateInfoKHR);
|
||||
|
||||
DECLARE_DESERIALISE_TYPE(VkDeviceCreateInfo);
|
||||
DECLARE_DESERIALISE_TYPE(VkBufferCreateInfo);
|
||||
@@ -670,6 +671,7 @@ DECLARE_DESERIALISE_TYPE(VkPipelineVertexInputDivisorStateCreateInfoEXT);
|
||||
DECLARE_DESERIALISE_TYPE(VkSamplerReductionModeCreateInfoEXT);
|
||||
DECLARE_DESERIALISE_TYPE(VkDebugUtilsLabelEXT);
|
||||
DECLARE_DESERIALISE_TYPE(VkSamplerYcbcrConversionCreateInfoKHR);
|
||||
DECLARE_DESERIALISE_TYPE(VkRenderPassMultiviewCreateInfoKHR);
|
||||
|
||||
DECLARE_REFLECTION_ENUM(VkFlagWithNoBits);
|
||||
DECLARE_REFLECTION_ENUM(VkQueueFlagBits);
|
||||
|
||||
@@ -670,6 +670,9 @@ static const VkExtensionProperties supportedExtensions[] = {
|
||||
{
|
||||
VK_KHR_MAINTENANCE3_EXTENSION_NAME, VK_KHR_MAINTENANCE3_SPEC_VERSION,
|
||||
},
|
||||
{
|
||||
VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION,
|
||||
},
|
||||
{
|
||||
VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME, VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION,
|
||||
},
|
||||
|
||||
@@ -206,7 +206,11 @@ SERIALISE_VK_HANDLES();
|
||||
\
|
||||
/* VK_EXT_sampler_filter_minmax */ \
|
||||
PNEXT_STRUCT(VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT, \
|
||||
VkSamplerReductionModeCreateInfoEXT)
|
||||
VkSamplerReductionModeCreateInfoEXT) \
|
||||
\
|
||||
/* VK_KHR_multiview */ \
|
||||
PNEXT_STRUCT(VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR, \
|
||||
VkRenderPassMultiviewCreateInfoKHR)
|
||||
|
||||
template <typename SerialiserType>
|
||||
static void SerialiseNext(SerialiserType &ser, VkStructureType &sType, const void *&pNext)
|
||||
@@ -2408,6 +2412,29 @@ void Deserialise(const VkSamplerYcbcrConversionCreateInfoKHR &el)
|
||||
DeserialiseNext(el.pNext);
|
||||
}
|
||||
|
||||
template <typename SerialiserType>
|
||||
void DoSerialise(SerialiserType &ser, VkRenderPassMultiviewCreateInfoKHR &el)
|
||||
{
|
||||
RDCASSERT(ser.IsReading() || el.sType == VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR);
|
||||
SerialiseNext(ser, el.sType, el.pNext);
|
||||
|
||||
SERIALISE_MEMBER(subpassCount);
|
||||
SERIALISE_MEMBER_ARRAY(pViewMasks, subpassCount);
|
||||
SERIALISE_MEMBER(dependencyCount);
|
||||
SERIALISE_MEMBER_ARRAY(pViewOffsets, dependencyCount);
|
||||
SERIALISE_MEMBER(correlationMaskCount);
|
||||
SERIALISE_MEMBER_ARRAY(pCorrelationMasks, correlationMaskCount);
|
||||
}
|
||||
|
||||
template <>
|
||||
void Deserialise(const VkRenderPassMultiviewCreateInfoKHR &el)
|
||||
{
|
||||
DeserialiseNext(el.pNext);
|
||||
delete[] el.pViewMasks;
|
||||
delete[] el.pViewOffsets;
|
||||
delete[] el.pCorrelationMasks;
|
||||
}
|
||||
|
||||
INSTANTIATE_SERIALISE_TYPE(VkOffset2D);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkExtent2D);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkMemoryType);
|
||||
@@ -2513,6 +2540,7 @@ INSTANTIATE_SERIALISE_TYPE(VkPipelineVertexInputDivisorStateCreateInfoEXT);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkSamplerReductionModeCreateInfoEXT);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkDebugUtilsLabelEXT);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkSamplerYcbcrConversionCreateInfoKHR);
|
||||
INSTANTIATE_SERIALISE_TYPE(VkRenderPassMultiviewCreateInfoKHR);
|
||||
|
||||
INSTANTIATE_SERIALISE_TYPE(DescriptorSetSlot);
|
||||
INSTANTIATE_SERIALISE_TYPE(ImageRegionState);
|
||||
|
||||
Reference in New Issue
Block a user