-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathFramebuffers.cpp
More file actions
35 lines (30 loc) · 1.2 KB
/
Framebuffers.cpp
File metadata and controls
35 lines (30 loc) · 1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include "Framebuffers.hpp"
Framebuffers::Framebuffers(
Swapchain& swapchain, RenderPass& renderPass, Device& device)
{
vk::Extent2D swapchainExtent = swapchain.GetExtent();
std::vector<vk::raii::ImageView>& swapchainImageViews =
swapchain.GetImageViews();
m_Framebuffers.reserve(swapchainImageViews.size());
for (auto& imageView : swapchainImageViews)
{
vk::FramebufferCreateInfo framebufferCreateInfo(
{}, *renderPass.Get(), *imageView, swapchainExtent.width,
swapchainExtent.height, 1);
m_Framebuffers.emplace_back(device.Get(), framebufferCreateInfo);
}
// for shits and giggles
// std::ranges::transform(
// swapchainImageViews, std::back_inserter(m_Framebuffers),
// [&](vk::raii::ImageView& imageView)
// {
// vk::FramebufferCreateInfo framebufferCreateInfo(
// {}, *renderPass.Get(), *imageView, swapchainExtent.width,
// swapchainExtent.height, 1);
// return vk::raii::Framebuffer(device.Get(), framebufferCreateInfo);
// });
}
vk::raii::Framebuffer& Framebuffers::operator[](size_t index)
{
return m_Framebuffers.at(index);
}