Skip to content

Commit d4b75b3

Browse files
Merge pull request #229 from KhronosGroup/blend_initializers
Use designated initializers
2 parents 7c312a2 + 86a6eca commit d4b75b3

File tree

9 files changed

+43
-60
lines changed

9 files changed

+43
-60
lines changed

attachments/27_depth_buffering.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -464,8 +464,8 @@ class HelloTriangleApplication
464464
.polygonMode = vk::PolygonMode::eFill,
465465
.cullMode = vk::CullModeFlagBits::eBack,
466466
.frontFace = vk::FrontFace::eCounterClockwise,
467-
.depthBiasEnable = vk::False};
468-
rasterizer.lineWidth = 1.0f;
467+
.depthBiasEnable = vk::False,
468+
.lineWidth = 1.0f};
469469
vk::PipelineMultisampleStateCreateInfo multisampling{
470470
.rasterizationSamples = vk::SampleCountFlagBits::e1,
471471
.sampleShadingEnable = vk::False};
@@ -475,16 +475,14 @@ class HelloTriangleApplication
475475
.depthCompareOp = vk::CompareOp::eLess,
476476
.depthBoundsTestEnable = vk::False,
477477
.stencilTestEnable = vk::False};
478-
vk::PipelineColorBlendAttachmentState colorBlendAttachment;
479-
colorBlendAttachment.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA;
480-
colorBlendAttachment.blendEnable = vk::False;
481-
478+
vk::PipelineColorBlendAttachmentState colorBlendAttachment{
479+
.blendEnable = vk::False,
480+
.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA};
482481
vk::PipelineColorBlendStateCreateInfo colorBlending{
483482
.logicOpEnable = vk::False,
484483
.logicOp = vk::LogicOp::eCopy,
485484
.attachmentCount = 1,
486485
.pAttachments = &colorBlendAttachment};
487-
488486
std::vector dynamicStates = {
489487
vk::DynamicState::eViewport,
490488
vk::DynamicState::eScissor};

attachments/28_model_loading.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -473,8 +473,8 @@ class HelloTriangleApplication
473473
.polygonMode = vk::PolygonMode::eFill,
474474
.cullMode = vk::CullModeFlagBits::eBack,
475475
.frontFace = vk::FrontFace::eCounterClockwise,
476-
.depthBiasEnable = vk::False};
477-
rasterizer.lineWidth = 1.0f;
476+
.depthBiasEnable = vk::False,
477+
.lineWidth = 1.0f};
478478
vk::PipelineMultisampleStateCreateInfo multisampling{
479479
.rasterizationSamples = vk::SampleCountFlagBits::e1,
480480
.sampleShadingEnable = vk::False};
@@ -484,16 +484,14 @@ class HelloTriangleApplication
484484
.depthCompareOp = vk::CompareOp::eLess,
485485
.depthBoundsTestEnable = vk::False,
486486
.stencilTestEnable = vk::False};
487-
vk::PipelineColorBlendAttachmentState colorBlendAttachment;
488-
colorBlendAttachment.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA;
489-
colorBlendAttachment.blendEnable = vk::False;
490-
487+
vk::PipelineColorBlendAttachmentState colorBlendAttachment{
488+
.blendEnable = vk::False,
489+
.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA};
491490
vk::PipelineColorBlendStateCreateInfo colorBlending{
492491
.logicOpEnable = vk::False,
493492
.logicOp = vk::LogicOp::eCopy,
494493
.attachmentCount = 1,
495494
.pAttachments = &colorBlendAttachment};
496-
497495
std::vector dynamicStates = {
498496
vk::DynamicState::eViewport,
499497
vk::DynamicState::eScissor};

attachments/29_mipmapping.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -473,8 +473,8 @@ class HelloTriangleApplication
473473
.polygonMode = vk::PolygonMode::eFill,
474474
.cullMode = vk::CullModeFlagBits::eBack,
475475
.frontFace = vk::FrontFace::eCounterClockwise,
476-
.depthBiasEnable = vk::False};
477-
rasterizer.lineWidth = 1.0f;
476+
.depthBiasEnable = vk::False,
477+
.lineWidth = 1.0f};
478478
vk::PipelineMultisampleStateCreateInfo multisampling{
479479
.rasterizationSamples = vk::SampleCountFlagBits::e1,
480480
.sampleShadingEnable = vk::False};
@@ -484,16 +484,14 @@ class HelloTriangleApplication
484484
.depthCompareOp = vk::CompareOp::eLess,
485485
.depthBoundsTestEnable = vk::False,
486486
.stencilTestEnable = vk::False};
487-
vk::PipelineColorBlendAttachmentState colorBlendAttachment;
488-
colorBlendAttachment.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA;
489-
colorBlendAttachment.blendEnable = vk::False;
490-
487+
vk::PipelineColorBlendAttachmentState colorBlendAttachment{
488+
.blendEnable = vk::False,
489+
.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA};
491490
vk::PipelineColorBlendStateCreateInfo colorBlending{
492491
.logicOpEnable = vk::False,
493492
.logicOp = vk::LogicOp::eCopy,
494493
.attachmentCount = 1,
495494
.pAttachments = &colorBlendAttachment};
496-
497495
std::vector dynamicStates = {
498496
vk::DynamicState::eViewport,
499497
vk::DynamicState::eScissor};

attachments/30_multisampling.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -482,8 +482,8 @@ class HelloTriangleApplication
482482
.polygonMode = vk::PolygonMode::eFill,
483483
.cullMode = vk::CullModeFlagBits::eBack,
484484
.frontFace = vk::FrontFace::eCounterClockwise,
485-
.depthBiasEnable = vk::False};
486-
rasterizer.lineWidth = 1.0f;
485+
.depthBiasEnable = vk::False,
486+
.lineWidth = 1.0f};
487487
vk::PipelineMultisampleStateCreateInfo multisampling{
488488
.rasterizationSamples = msaaSamples,
489489
.sampleShadingEnable = vk::False};
@@ -493,16 +493,14 @@ class HelloTriangleApplication
493493
.depthCompareOp = vk::CompareOp::eLess,
494494
.depthBoundsTestEnable = vk::False,
495495
.stencilTestEnable = vk::False};
496-
vk::PipelineColorBlendAttachmentState colorBlendAttachment;
497-
colorBlendAttachment.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA;
498-
colorBlendAttachment.blendEnable = vk::False;
499-
496+
vk::PipelineColorBlendAttachmentState colorBlendAttachment{
497+
.blendEnable = vk::False,
498+
.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA};
500499
vk::PipelineColorBlendStateCreateInfo colorBlending{
501500
.logicOpEnable = vk::False,
502501
.logicOp = vk::LogicOp::eCopy,
503502
.attachmentCount = 1,
504503
.pAttachments = &colorBlendAttachment};
505-
506504
std::vector dynamicStates = {
507505
vk::DynamicState::eViewport,
508506
vk::DynamicState::eScissor};

attachments/32_ecosystem_utilities.cpp

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -729,8 +729,8 @@ class HelloTriangleApplication
729729
.polygonMode = vk::PolygonMode::eFill,
730730
.cullMode = vk::CullModeFlagBits::eBack,
731731
.frontFace = vk::FrontFace::eCounterClockwise,
732-
.depthBiasEnable = vk::False};
733-
rasterizer.lineWidth = 1.0f;
732+
.depthBiasEnable = vk::False,
733+
.lineWidth = 1.0f};
734734
vk::PipelineMultisampleStateCreateInfo multisampling{
735735
.rasterizationSamples = msaaSamples,
736736
.sampleShadingEnable = vk::False};
@@ -740,21 +740,18 @@ class HelloTriangleApplication
740740
.depthCompareOp = vk::CompareOp::eLess,
741741
.depthBoundsTestEnable = vk::False,
742742
.stencilTestEnable = vk::False};
743-
vk::PipelineColorBlendAttachmentState colorBlendAttachment;
744-
colorBlendAttachment.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA;
745-
colorBlendAttachment.blendEnable = vk::False;
746-
743+
vk::PipelineColorBlendAttachmentState colorBlendAttachment{
744+
.blendEnable = vk::False,
745+
.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA};
747746
vk::PipelineColorBlendStateCreateInfo colorBlending{
748747
.logicOpEnable = vk::False,
749748
.logicOp = vk::LogicOp::eCopy,
750749
.attachmentCount = 1,
751750
.pAttachments = &colorBlendAttachment};
752-
753751
std::vector dynamicStates = {
754752
vk::DynamicState::eViewport,
755753
vk::DynamicState::eScissor};
756754
vk::PipelineDynamicStateCreateInfo dynamicState{.dynamicStateCount = static_cast<uint32_t>(dynamicStates.size()), .pDynamicStates = dynamicStates.data()};
757-
758755
vk::PipelineLayoutCreateInfo pipelineLayoutInfo{.setLayoutCount = 1, .pSetLayouts = &*descriptorSetLayout, .pushConstantRangeCount = 0};
759756

760757
pipelineLayout = vk::raii::PipelineLayout(device, pipelineLayoutInfo);

attachments/35_gltf_ktx.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -683,8 +683,8 @@ class VulkanApplication
683683
.polygonMode = vk::PolygonMode::eFill,
684684
.cullMode = vk::CullModeFlagBits::eBack, // Re-enabled culling for better performance
685685
.frontFace = vk::FrontFace::eClockwise, // Keeping Clockwise for glTF
686-
.depthBiasEnable = vk::False};
687-
rasterizer.lineWidth = 1.0f;
686+
.depthBiasEnable = vk::False,
687+
.lineWidth = 1.0f};
688688
vk::PipelineMultisampleStateCreateInfo multisampling{
689689
.rasterizationSamples = vk::SampleCountFlagBits::e1,
690690
.sampleShadingEnable = vk::False};
@@ -694,16 +694,14 @@ class VulkanApplication
694694
.depthCompareOp = vk::CompareOp::eLess,
695695
.depthBoundsTestEnable = vk::False,
696696
.stencilTestEnable = vk::False};
697-
vk::PipelineColorBlendAttachmentState colorBlendAttachment;
698-
colorBlendAttachment.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA;
699-
colorBlendAttachment.blendEnable = vk::False;
700-
697+
vk::PipelineColorBlendAttachmentState colorBlendAttachment{
698+
.blendEnable = vk::False,
699+
.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA};
701700
vk::PipelineColorBlendStateCreateInfo colorBlending{
702701
.logicOpEnable = vk::False,
703702
.logicOp = vk::LogicOp::eCopy,
704703
.attachmentCount = 1,
705704
.pAttachments = &colorBlendAttachment};
706-
707705
std::vector dynamicStates = {
708706
vk::DynamicState::eViewport,
709707
vk::DynamicState::eScissor};

attachments/36_multiple_objects.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -756,8 +756,8 @@ class VulkanApplication
756756
.polygonMode = vk::PolygonMode::eFill,
757757
.cullMode = vk::CullModeFlagBits::eBack,
758758
.frontFace = vk::FrontFace::eCounterClockwise,
759-
.depthBiasEnable = vk::False};
760-
rasterizer.lineWidth = 1.0f;
759+
.depthBiasEnable = vk::False,
760+
.lineWidth = 1.0f};
761761
vk::PipelineMultisampleStateCreateInfo multisampling{
762762
.rasterizationSamples = vk::SampleCountFlagBits::e1,
763763
.sampleShadingEnable = vk::False};
@@ -767,16 +767,14 @@ class VulkanApplication
767767
.depthCompareOp = vk::CompareOp::eLess,
768768
.depthBoundsTestEnable = vk::False,
769769
.stencilTestEnable = vk::False};
770-
vk::PipelineColorBlendAttachmentState colorBlendAttachment;
771-
colorBlendAttachment.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA;
772-
colorBlendAttachment.blendEnable = vk::False;
773-
770+
vk::PipelineColorBlendAttachmentState colorBlendAttachment{
771+
.blendEnable = vk::False,
772+
.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA};
774773
vk::PipelineColorBlendStateCreateInfo colorBlending{
775774
.logicOpEnable = vk::False,
776775
.logicOp = vk::LogicOp::eCopy,
777776
.attachmentCount = 1,
778777
.pAttachments = &colorBlendAttachment};
779-
780778
std::vector dynamicStates = {
781779
vk::DynamicState::eViewport,
782780
vk::DynamicState::eScissor};

attachments/38_ray_tracing.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -613,8 +613,8 @@ class VulkanRaytracingApplication
613613
.polygonMode = vk::PolygonMode::eFill,
614614
.cullMode = vk::CullModeFlagBits::eBack,
615615
.frontFace = vk::FrontFace::eCounterClockwise,
616-
.depthBiasEnable = vk::False};
617-
rasterizer.lineWidth = 1.0f;
616+
.depthBiasEnable = vk::False,
617+
.lineWidth = 1.0f};
618618
vk::PipelineMultisampleStateCreateInfo multisampling{
619619
.rasterizationSamples = vk::SampleCountFlagBits::e1,
620620
.sampleShadingEnable = vk::False};
@@ -624,16 +624,14 @@ class VulkanRaytracingApplication
624624
.depthCompareOp = vk::CompareOp::eLess,
625625
.depthBoundsTestEnable = vk::False,
626626
.stencilTestEnable = vk::False};
627-
vk::PipelineColorBlendAttachmentState colorBlendAttachment;
628-
colorBlendAttachment.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA;
629-
colorBlendAttachment.blendEnable = vk::False;
630-
627+
vk::PipelineColorBlendAttachmentState colorBlendAttachment{
628+
.blendEnable = vk::False,
629+
.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA};
631630
vk::PipelineColorBlendStateCreateInfo colorBlending{
632631
.logicOpEnable = vk::False,
633632
.logicOp = vk::LogicOp::eCopy,
634633
.attachmentCount = 1,
635634
.pAttachments = &colorBlendAttachment};
636-
637635
std::vector dynamicStates = {
638636
vk::DynamicState::eViewport,
639637
vk::DynamicState::eScissor};

en/03_Drawing_a_triangle/02_Graphics_pipeline_basics/02_Fixed_functions.adoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -244,9 +244,9 @@ In our case, we only have one framebuffer:
244244

245245
[,c++]
246246
----
247-
vk::PipelineColorBlendAttachmentState colorBlendAttachment;
248-
colorBlendAttachment.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA;
249-
colorBlendAttachment.blendEnable = vk::False;
247+
vk::PipelineColorBlendAttachmentState colorBlendAttachment{
248+
.blendEnable = vk::False,
249+
.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA};
250250
----
251251

252252
This per-framebuffer struct allows you to configure the first way of color blending.

0 commit comments

Comments
 (0)