diff --git a/projects/draw_indirect/src/main.cpp b/projects/draw_indirect/src/main.cpp index 2f93f497f89096f21c226a4b28abda994a09a990..385e78aab014d90e654267e5ce799ddc264592ef 100644 --- a/projects/draw_indirect/src/main.cpp +++ b/projects/draw_indirect/src/main.cpp @@ -227,12 +227,7 @@ int main(int argc, const char** argv) { // vertex layout for the pipeline. (assumed to be) used by all sponza meshes. const std::vector<vkcv::VertexAttachment> vertexAttachments = sponzaProgram.getVertexAttachments(); - std::vector<vkcv::VertexBinding> bindings; - for (size_t i = 0; i < vertexAttachments.size(); i++) - { - bindings.push_back(vkcv::VertexBinding(i, { vertexAttachments[i] })); - } - const vkcv::VertexLayout sponzaVertexLayout (bindings); + const vkcv::VertexLayout sponzaVertexLayout({ vkcv::VertexBinding(0, { vertexAttachments }) }); // recreation of VertexBufferBindings YET AGAIN, // since these are used in the command buffer to bind and draw from the vertex shaders @@ -247,7 +242,6 @@ int main(int argc, const char** argv) { compiledIndexBuffer, indexedIndirectCommands); - vkcv::Buffer<vk::DrawIndexedIndirectCommand> indirectBuffer = core.createBuffer<vk::DrawIndexedIndirectCommand>( vkcv::BufferType::INDIRECT, indexedIndirectCommands.size() * sizeof(vk::DrawIndexedIndirectCommand), diff --git a/src/vkcv/VertexLayout.cpp b/src/vkcv/VertexLayout.cpp index fa079a3264ae47b32461bda26485adb97b0be280..0edced571502bbaf0e89ff6d45d338ca38b229ca 100644 --- a/src/vkcv/VertexLayout.cpp +++ b/src/vkcv/VertexLayout.cpp @@ -46,8 +46,8 @@ namespace vkcv { uint32_t offset = 0; for (auto &attachment : vertexAttachments) { - offset += getFormatSize(attachment.format); attachment.offset = offset; + offset += getFormatSize(attachment.format); } stride = offset; }