MCPcopy Create free account
hub / github.com/Overv/VulkanTutorial / HelloTriangleApplication

Class HelloTriangleApplication

code/28_model_loading.cpp:139–1608  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

137};
138
139class HelloTriangleApplication {
140public:
141 void run() {
142 initWindow();
143 initVulkan();
144 mainLoop();
145 cleanup();
146 }
147
148private:
149 GLFWwindow* window;
150
151 VkInstance instance;
152 VkDebugUtilsMessengerEXT debugMessenger;
153 VkSurfaceKHR surface;
154
155 VkPhysicalDevice physicalDevice = VK_NULL_HANDLE;
156 VkDevice device;
157
158 VkQueue graphicsQueue;
159 VkQueue presentQueue;
160
161 VkSwapchainKHR swapChain;
162 std::vector<VkImage> swapChainImages;
163 VkFormat swapChainImageFormat;
164 VkExtent2D swapChainExtent;
165 std::vector<VkImageView> swapChainImageViews;
166 std::vector<VkFramebuffer> swapChainFramebuffers;
167
168 VkRenderPass renderPass;
169 VkDescriptorSetLayout descriptorSetLayout;
170 VkPipelineLayout pipelineLayout;
171 VkPipeline graphicsPipeline;
172
173 VkCommandPool commandPool;
174
175 VkImage depthImage;
176 VkDeviceMemory depthImageMemory;
177 VkImageView depthImageView;
178
179 VkImage textureImage;
180 VkDeviceMemory textureImageMemory;
181 VkImageView textureImageView;
182 VkSampler textureSampler;
183
184 std::vector<Vertex> vertices;
185 std::vector<uint32_t> indices;
186 VkBuffer vertexBuffer;
187 VkDeviceMemory vertexBufferMemory;
188 VkBuffer indexBuffer;
189 VkDeviceMemory indexBufferMemory;
190
191 std::vector<VkBuffer> uniformBuffers;
192 std::vector<VkDeviceMemory> uniformBuffersMemory;
193 std::vector<void*> uniformBuffersMapped;
194
195 VkDescriptorPool descriptorPool;
196 std::vector<VkDescriptorSet> descriptorSets;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected