mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-09-14 01:35:36 +00:00
attachment bind info isn't POD, can't serialise as POD array
This commit is contained in:
@@ -1263,6 +1263,15 @@ void Serialiser::Serialise(const char *name, VkImageViewCreateInfo &el)
|
||||
Serialise("subresourceRange", el.subresourceRange);
|
||||
}
|
||||
|
||||
template<>
|
||||
void Serialiser::Serialise(const char *name, VkAttachmentBindInfo &el)
|
||||
{
|
||||
ScopedContext scope(this, this, name, "VkAttachmentBindInfo", 0, true);
|
||||
|
||||
SerialiseObject(VkAttachmentView, "view", el.view);
|
||||
Serialise("layout", el.layout);
|
||||
}
|
||||
|
||||
template<>
|
||||
void Serialiser::Serialise(const char *name, VkFramebufferCreateInfo &el)
|
||||
{
|
||||
@@ -1274,9 +1283,10 @@ void Serialiser::Serialise(const char *name, VkFramebufferCreateInfo &el)
|
||||
|
||||
SerialiseObject(VkRenderPass, "renderPass", el.renderPass);
|
||||
Serialise("attachmentCount", el.attachmentCount);
|
||||
size_t sz = el.attachmentCount;
|
||||
if(m_Mode == READING) el.pAttachments = NULL;
|
||||
Serialise("pAttachments", (VkAttachmentBindInfo *&)el.pAttachments, sz);
|
||||
if(m_Mode == READING)
|
||||
el.pAttachments = el.attachmentCount ? new VkAttachmentBindInfo[el.attachmentCount] : NULL;
|
||||
for(uint32_t i=0; i < el.attachmentCount; i++)
|
||||
Serialise("pAttachments[]", (VkAttachmentBindInfo &)el.pAttachments[i]);
|
||||
Serialise("width", el.width);
|
||||
Serialise("height", el.height);
|
||||
Serialise("layers", el.layers);
|
||||
|
||||
@@ -53,6 +53,7 @@ template<> void Serialiser::Serialise(const char *name, VkBufferCreateInfo &el);
|
||||
template<> void Serialiser::Serialise(const char *name, VkBufferViewCreateInfo &el);
|
||||
template<> void Serialiser::Serialise(const char *name, VkImageCreateInfo &el);
|
||||
template<> void Serialiser::Serialise(const char *name, VkImageViewCreateInfo &el);
|
||||
template<> void Serialiser::Serialise(const char *name, VkAttachmentBindInfo &el);
|
||||
template<> void Serialiser::Serialise(const char *name, VkFramebufferCreateInfo &el);
|
||||
template<> void Serialiser::Serialise(const char *name, VkRenderPassCreateInfo &el);
|
||||
template<> void Serialiser::Serialise(const char *name, VkRenderPassBeginInfo &el);
|
||||
|
||||
Reference in New Issue
Block a user