Animación Vulkan 1.0
Animación de tiro libre baloncesto con motor gráfico desarrollado en clase
Cargando...
Buscando...
Nada coincide
GEGraphicsContext.h
Ir a la documentación de este archivo.
1
5
6#pragma once
7
8#define GLFW_INCLUDE_VULKAN
9#include <GLFW/glfw3.h>
10#include <vulkan/vulkan.h>
11
17{
18public:
19 VkInstance instance;
20 VkSurfaceKHR surface;
21 VkPhysicalDevice physicalDevice;
22 VkDevice device;
25
26private:
27 VkPhysicalDeviceMemoryProperties memProperties;
28
29public:
34 GEGraphicsContext(GLFWwindow* window);
35
40
47 uint32_t findMemoryType(uint32_t typeFilter, VkMemoryPropertyFlags properties);
48
53 VkFormat findDepthFormat();
54
55private:
56 // ===== Métodos de inicialización de Vulkan =====
60 void createInstance();
61
66 void createSurface(GLFWwindow* window);
67
71 void pickPhysicalDevice();
72
77
78 // ===== Métodos auxiliares =====
83
89 bool isDeviceSuitable(VkPhysicalDevice pDevice);
90
94 void showDevices();
95
101 void resumeDeviceProperties(VkPhysicalDevice pDevice, int index);
102};
103
VkDevice device
Dispositivo lógico.
Definition GEGraphicsContext.h:22
VkFormat findDepthFormat()
Busca el formato de imagen adecuado para el buffer de profundidad.
Definition GEGraphicsContext.cpp:65
void pickPhysicalDevice()
Selecciona el dispositivo físico adecuado.
Definition GEGraphicsContext.cpp:141
uint32_t presentQueueFamilyIndex
Índice de la familia de colas para presentación.
Definition GEGraphicsContext.h:24
VkPhysicalDeviceMemoryProperties memProperties
Propiedades de memoria del dispositivo.
Definition GEGraphicsContext.h:27
VkInstance instance
Instancia de Vulkan.
Definition GEGraphicsContext.h:19
VkPhysicalDevice physicalDevice
Dispositivo físico seleccionado.
Definition GEGraphicsContext.h:21
void createInstance()
Crea la instancia de Vulkan.
Definition GEGraphicsContext.cpp:98
uint32_t graphicsQueueFamilyIndex
Índice de la familia de colas para gráficos.
Definition GEGraphicsContext.h:23
void createSurface(GLFWwindow *window)
Crea la superficie para la ventana GLFW.
Definition GEGraphicsContext.cpp:130
bool isDeviceSuitable(VkPhysicalDevice pDevice)
Comprueba si un dispositivo físico es adecuado.
Definition GEGraphicsContext.cpp:292
void showDevices()
Muestra y escribe en fichero las propiedades de los dispositivos detectados.
Definition GEGraphicsContext.cpp:342
void showInstanceProperties()
Muestra propiedades de la instancia Vulkan (depuración).
Definition GEGraphicsContext.cpp:263
void resumeDeviceProperties(VkPhysicalDevice pDevice, int index)
Escribe en fichero las características detalladas de un dispositivo.
Definition GEGraphicsContext.cpp:372
VkSurfaceKHR surface
Superficie de presentación.
Definition GEGraphicsContext.h:20
GEGraphicsContext(GLFWwindow *window)
Construye el contexto gráfico de Vulkan.
Definition GEGraphicsContext.cpp:22
uint32_t findMemoryType(uint32_t typeFilter, VkMemoryPropertyFlags properties)
Busca el tipo de memoria adecuado para un filtro y propiedades dadas.
Definition GEGraphicsContext.cpp:48
void createLogicalDevice()
Crea el dispositivo lógico y configura las colas.
Definition GEGraphicsContext.cpp:189
~GEGraphicsContext()
Destruye el contexto gráfico y libera recursos.
Definition GEGraphicsContext.cpp:35