14 class GraphicsPipeline :
public DeviceComponent
17 VkPipelineInputAssemblyStateCreateInfo createInputAssemblyStateInfo();
18 VkPipelineViewportStateCreateInfo createViewportStateInfo();
19 VkPipelineDepthStencilStateCreateInfo createDepthStencilStateInfo();
20 VkPipelineRasterizationStateCreateInfo createRasterizationStateInfo();
21 VkPipelineMultisampleStateCreateInfo createMultisampleStateInfo();
22 VkPipelineColorBlendAttachmentState createColorBlendAttachmentState();
23 VkPipelineColorBlendStateCreateInfo createColorBlendStateInfo(
const VkPipelineColorBlendAttachmentState& colorBlendAttachment);
24 VkPipelineDynamicStateCreateInfo createDynamicStateInfo(
const std::vector<VkDynamicState>& dynamicStates);
25 VkPipelineLayoutCreateInfo createLayoutInfo(
const VkDescriptorSetLayout* descriptorSetLayout);
26 explicit GraphicsPipeline(
const SwapChain* swapChain,
const VkDescriptorSetLayout* descriptorSetLayout);
29 GETTER VkPipelineLayout getLayout()
const {
return m_pipelineLayout; }
34 VkPipeline m_pipeline;
35 VkPipelineLayout m_pipelineLayout;
37 VkPipelineVertexInputStateCreateInfo createPipelineVertexInputInfo(VkVertexInputBindingDescription vertexDescriptions,
38 const std::array<VkVertexInputAttributeDescription, 3>& attributeDescription);