Index: vulkan-game.cpp
===================================================================
--- vulkan-game.cpp	(revision fd700156e5a5aca46cc18f426992984e8e9ae9f0)
+++ vulkan-game.cpp	(revision ebeb3aa06c69b63f0483c8192aaa3e976a9eb364)
@@ -116,4 +116,6 @@
       VkPipelineLayout pipelineLayout;
       VkPipeline graphicsPipeline;
+
+      vector<VkFramebuffer> swapChainFramebuffers;
 
       // both SDL and GLFW create window functions return NULL on failure
@@ -151,4 +153,5 @@
          createRenderPass();
          createGraphicsPipeline();
+         createFramebuffers();
       }
 
@@ -723,4 +726,27 @@
       }
 
+      void createFramebuffers() {
+         swapChainFramebuffers.resize(swapChainImageViews.size());
+
+         for (size_t i = 0; i < swapChainImageViews.size(); i++) {
+            VkImageView attachments[] = {
+               swapChainImageViews[i]
+            };
+
+            VkFramebufferCreateInfo framebufferInfo = {};
+            framebufferInfo.sType = VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO;
+            framebufferInfo.renderPass = renderPass;
+            framebufferInfo.attachmentCount = 1;
+            framebufferInfo.pAttachments = attachments;
+            framebufferInfo.width = swapChainExtent.width;
+            framebufferInfo.height = swapChainExtent.height;
+            framebufferInfo.layers = 1;
+
+            if (vkCreateFramebuffer(device, &framebufferInfo, nullptr, &swapChainFramebuffers[i]) != VK_SUCCESS) {
+               throw runtime_error("failed to create framebuffer!");
+            }
+         }
+      }
+
       void mainLoop() {
          // TODO: Create some generic event-handling functions in game-gui-*
@@ -750,4 +776,8 @@
 
       void cleanup() {
+         for (auto framebuffer : swapChainFramebuffers) {
+            vkDestroyFramebuffer(device, framebuffer, nullptr);
+         }
+
          vkDestroyPipeline(device, graphicsPipeline, nullptr);
          vkDestroyPipelineLayout(device, pipelineLayout, nullptr);
