scop
a small 3D object loader
Loading...
Searching...
No Matches
VulkanApp.hpp File Reference
#include <GLFW/glfw3.h>
#include <unordered_map>
#include <filesystem>
#include <algorithm>
#include <stdexcept>
#include <optional>
#include <iostream>
#include <fstream>
#include <cstring>
#include <cstdlib>
#include <cstdint>
#include <sstream>
#include <iomanip>
#include <vector>
#include <chrono>
#include <limits>
#include <array>
#include <set>
#include "Math.hpp"
#include "Image.hpp"
Include dependency graph for VulkanApp.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  QueueFamilyIndices
 
struct  SwapChainSupportDetails
 
struct  Camera
 
struct  Material
 
struct  Vertex
 
struct  UniformBufferObject
 
class  VulkanApp
 

Macros

#define GLFW_INCLUDE_VULKAN
 
#define MATH_FORCE_DEPTH_ZERO_TO_ONE
 

Functions

VkResult CreateDebugUtilsMessengerEXT (VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkDebugUtilsMessengerEXT *pDebugMessenger)
 
void DestroyDebugUtilsMessengerEXT (VkInstance instance, VkDebugUtilsMessengerEXT debugMessenger, const VkAllocationCallbacks *pAllocator)
 

Variables

const char * TITLE = "scop"
 
const uint32_t WIDTH = 800
 
const uint32_t HEIGHT = 600
 
const int MAX_FRAMES_IN_FLIGHT = 2
 
const std::vector< const char * > validationLayers
 
const std::vector< const char * > deviceExtensions
 
constexpr bool debugMode = false
 

Macro Definition Documentation

◆ GLFW_INCLUDE_VULKAN

#define GLFW_INCLUDE_VULKAN

Definition at line 16 of file VulkanApp.hpp.

◆ MATH_FORCE_DEPTH_ZERO_TO_ONE

#define MATH_FORCE_DEPTH_ZERO_TO_ONE

Definition at line 37 of file VulkanApp.hpp.

Function Documentation

◆ CreateDebugUtilsMessengerEXT()

VkResult CreateDebugUtilsMessengerEXT ( VkInstance instance,
const VkDebugUtilsMessengerCreateInfoEXT * pCreateInfo,
const VkAllocationCallbacks * pAllocator,
VkDebugUtilsMessengerEXT * pDebugMessenger )

Definition at line 15 of file VulkanDebug.cpp.

Here is the caller graph for this function:

◆ DestroyDebugUtilsMessengerEXT()

void DestroyDebugUtilsMessengerEXT ( VkInstance instance,
VkDebugUtilsMessengerEXT debugMessenger,
const VkAllocationCallbacks * pAllocator )

Definition at line 24 of file VulkanDebug.cpp.

Here is the caller graph for this function:

Variable Documentation

◆ debugMode

constexpr bool debugMode = false
constexpr

Definition at line 61 of file VulkanApp.hpp.

◆ deviceExtensions

const std::vector<const char*> deviceExtensions
Initial value:
= {
VK_KHR_SWAPCHAIN_EXTENSION_NAME
}

Definition at line 54 of file VulkanApp.hpp.

◆ HEIGHT

const uint32_t HEIGHT = 600

Definition at line 43 of file VulkanApp.hpp.

◆ MAX_FRAMES_IN_FLIGHT

const int MAX_FRAMES_IN_FLIGHT = 2

Definition at line 45 of file VulkanApp.hpp.

◆ TITLE

const char* TITLE = "scop"
inline

Definition at line 41 of file VulkanApp.hpp.

◆ validationLayers

const std::vector<const char*> validationLayers
Initial value:
= {
"VK_LAYER_KHRONOS_validation",
}

Definition at line 47 of file VulkanApp.hpp.

◆ WIDTH

const uint32_t WIDTH = 800

Definition at line 42 of file VulkanApp.hpp.