33 std::vector<vk::VertexInputBindingDescription>
const &descs,
34 std::vector<vk::VertexInputAttributeDescription>
const &attrs)
36 vk::PipelineVertexInputStateCreateInfo vertexInfo{};
38 vertexInfo.vertexBindingDescriptionCount = descs.size();
39 if (descs.size() > 0) {
42 auto pDescs =
new vk::VertexInputBindingDescription[descs.size()];
43 for (
int i = 0; i < descs.size(); ++i) {
46 vertexInfo.pVertexBindingDescriptions = pDescs;
49 vertexInfo.vertexAttributeDescriptionCount = attrs.size();
50 if (attrs.size() > 0) {
51 auto pAttrs =
new vk::VertexInputAttributeDescription[attrs.size()];
52 for (
int i = 0; i < attrs.size(); ++i) {
55 vertexInfo.pVertexAttributeDescriptions = pAttrs;
65 if (info.pVertexBindingDescriptions !=
nullptr) {
66 delete info.pVertexBindingDescriptions;
67 info.pVertexBindingDescriptions =
nullptr;
69 if (info.pVertexAttributeDescriptions !=
nullptr) {
70 delete info.pVertexAttributeDescriptions;
71 info.pVertexAttributeDescriptions =
nullptr;
void destroyVertexInputInfo(vk::PipelineVertexInputStateCreateInfo &info)
release resources allocated by vertexInputInfo
Definition cs237-pipeline.hpp:63
vk::PipelineVertexInputStateCreateInfo vertexInputInfo(std::vector< vk::VertexInputBindingDescription > const &descs, std::vector< vk::VertexInputAttributeDescription > const &attrs)
initialize info for the vertex input stage of the pipeline
Definition cs237-pipeline.hpp:32