LoginSignup
0
0

More than 3 years have passed since last update.

初めてのVulkanプログラミング step7 フレームバッファーの作成

Last updated at Posted at 2019-12-24

次にフレームバッファーを
作成します。vulkanにおけるフレームバッファーは、1度のDrawCallで描写するバッファーをまとめたオブジェクトです。
これは、事前に何枚の描写バッファーを利用するかという情報を元に作成する必要があります。
フレームバッファーを生成するには、vkCreateFramebuffer関数を用います。

    std::vector <VkFramebuffer> framebuffers;

    for (size_t i = 0; i < 2; i++) {
        VkFramebufferCreateInfo framebufferCreateinfo[2];
        framebufferCreateinfo[i].sType = VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO;
        framebufferCreateinfo[i].pNext = nullptr;
        framebufferCreateinfo[i].flags = 0;
        framebufferCreateinfo[i].renderPass = _renderPass;
        framebufferCreateinfo[i].attachmentCount = 1;
        framebufferCreateinfo[i].pAttachments = &(_imageview[i]);
        framebufferCreateinfo[i].width = 600;
        framebufferCreateinfo[i].height = 800;
        framebufferCreateinfo[i].layers = 1;

        vkCreateFramebuffer(_device, &framebufferCreateinfo[i], nullptr, &framebuffers[i]);

    }
  • stype 構造体のタイプ
  • pNext は、Nullまたは、拡張機能のポインター
  • renderPassは、フレームバッファーと互換性のあるレンダーパス。前回作成した、レンダーパスを当てています。
  • attachmentCoutは、Attachmentの数です。前々回参照
  • pAttachmentsは、VKImageViewのハンドルポインターです。
  • width height は、フレームバッファーの寸法を示しています。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0