Animación Vulkan 1.0
Animación de tiro libre baloncesto con motor gráfico desarrollado en clase
Cargando...
Buscando...
Nada coincide
Referencia de la clase GEGraphicsContext

Clase que almacena el contexto gráfico de Vulkan (instancia y dispositivo). Más...

#include <GEGraphicsContext.h>

Métodos públicos

 GEGraphicsContext (GLFWwindow *window)
 Construye el contexto gráfico de Vulkan.
 ~GEGraphicsContext ()
 Destruye el contexto gráfico y libera recursos.
uint32_t findMemoryType (uint32_t typeFilter, VkMemoryPropertyFlags properties)
 Busca el tipo de memoria adecuado para un filtro y propiedades dadas.
VkFormat findDepthFormat ()
 Busca el formato de imagen adecuado para el buffer de profundidad.

Atributos públicos

VkInstance instance
 Instancia de Vulkan.
VkSurfaceKHR surface
 Superficie de presentación.
VkPhysicalDevice physicalDevice
 Dispositivo físico seleccionado.
VkDevice device
 Dispositivo lógico.
uint32_t graphicsQueueFamilyIndex
 Índice de la familia de colas para gráficos.
uint32_t presentQueueFamilyIndex
 Índice de la familia de colas para presentación.

Métodos privados

void createInstance ()
 Crea la instancia de Vulkan.
void createSurface (GLFWwindow *window)
 Crea la superficie para la ventana GLFW.
void pickPhysicalDevice ()
 Selecciona el dispositivo físico adecuado.
void createLogicalDevice ()
 Crea el dispositivo lógico y configura las colas.
void showInstanceProperties ()
 Muestra propiedades de la instancia Vulkan (depuración).
bool isDeviceSuitable (VkPhysicalDevice pDevice)
 Comprueba si un dispositivo físico es adecuado.
void showDevices ()
 Muestra y escribe en fichero las propiedades de los dispositivos detectados.
void resumeDeviceProperties (VkPhysicalDevice pDevice, int index)
 Escribe en fichero las características detalladas de un dispositivo.

Atributos privados

VkPhysicalDeviceMemoryProperties memProperties
 Propiedades de memoria del dispositivo.

Descripción detallada

Clase que almacena el contexto gráfico de Vulkan (instancia y dispositivo).

Documentación de constructores y destructores

◆ GEGraphicsContext()

GEGraphicsContext::GEGraphicsContext ( GLFWwindow * window)

Construye el contexto gráfico de Vulkan.

Crea un contexto gráfico de Vulkan (instancia, dispositivo físico y lógico).

Parámetros
windowVentana GLFW sobre la que crear el contexto.
windowVentana GLFW sobre la que crear el contexto.
Ver también
GLFWwindow

Hace referencia a createInstance(), createLogicalDevice(), createSurface() y pickPhysicalDevice().

Gráfico de llamadas de esta función:

◆ ~GEGraphicsContext()

GEGraphicsContext::~GEGraphicsContext ( )

Destruye el contexto gráfico y libera recursos.

Destruye el contexto gráfico.

Hace referencia a device, instance y surface.

Documentación de funciones miembro

◆ createInstance()

void GEGraphicsContext::createInstance ( )
private

Crea la instancia de Vulkan.

Hace referencia a instance.

Referenciado por GEGraphicsContext().

Gráfico de llamadas a esta función:

◆ createLogicalDevice()

void GEGraphicsContext::createLogicalDevice ( )
private

Crea el dispositivo lógico y configura las colas.

Crea el dispositivo lógico sobre el que generar los gráficos y selecciona la familia de colas sobre el dispositivo.

Hace referencia a device, graphicsQueueFamilyIndex, physicalDevice y presentQueueFamilyIndex.

Referenciado por GEGraphicsContext().

Gráfico de llamadas a esta función:

◆ createSurface()

void GEGraphicsContext::createSurface ( GLFWwindow * window)
private

Crea la superficie para la ventana GLFW.

Crea la superficie sobre la que mostrar la representación gráfica.

Parámetros
windowVentana GLFW.
windowVentana GLFW sobre la que crear la superficie.
Ver también
GLFWwindow

Hace referencia a instance y surface.

Referenciado por GEGraphicsContext().

Gráfico de llamadas a esta función:

◆ findDepthFormat()

VkFormat GEGraphicsContext::findDepthFormat ( )

Busca el formato de imagen adecuado para el buffer de profundidad.

Busca el formato adecuado para el buffer de profundidad.

Devuelve
Formato de profundidad soportado.

Hace referencia a physicalDevice.

Referenciado por GERenderingContext::createRenderPass() y GEDepthBuffer::GEDepthBuffer().

Gráfico de llamadas a esta función:

◆ findMemoryType()

uint32_t GEGraphicsContext::findMemoryType ( uint32_t typeFilter,
VkMemoryPropertyFlags properties )

Busca el tipo de memoria adecuado para un filtro y propiedades dadas.

Busca el tipo de memoria adecuado para el filtro indicado.

Parámetros
typeFilterMáscara de tipos de memoria disponibles.
propertiesPropiedades de memoria requeridas.
Devuelve
Índice del tipo de memoria adecuado.
Parámetros
typeFilterFiltro de tipos de memoria.
propertiesPropiedades de memoria requeridas.
Devuelve
Índice del tipo de memoria adecuado.

Hace referencia a memProperties.

Referenciado por GEDepthBuffer::GEDepthBuffer(), GEIndexBuffer::GEIndexBuffer(), GEUniformBuffer::GEUniformBuffer() y GEVertexBuffer::GEVertexBuffer().

Gráfico de llamadas a esta función:

◆ isDeviceSuitable()

bool GEGraphicsContext::isDeviceSuitable ( VkPhysicalDevice pDevice)
private

Comprueba si un dispositivo físico es adecuado.

Verifica si un dispositivo físico admite generación de gráficos.

Parámetros
pDeviceDispositivo físico a verificar.
Devuelve
true si es adecuado.
Parámetros
pDeviceDispositivo físico a verificar.
Devuelve
true si el dispositivo es adecuado, false en caso contrario.

Hace referencia a graphicsQueueFamilyIndex, presentQueueFamilyIndex y surface.

Referenciado por pickPhysicalDevice().

Gráfico de llamadas a esta función:

◆ pickPhysicalDevice()

void GEGraphicsContext::pickPhysicalDevice ( )
private

Selecciona el dispositivo físico adecuado.

Selecciona el dispositivo físico sobre el que generar los gráficos.

Hace referencia a instance, isDeviceSuitable(), memProperties y physicalDevice.

Referenciado por GEGraphicsContext().

Gráfico de llamadas de esta función:
Gráfico de llamadas a esta función:

◆ resumeDeviceProperties()

void GEGraphicsContext::resumeDeviceProperties ( VkPhysicalDevice pDevice,
int index )
private

Escribe en fichero las características detalladas de un dispositivo.

Parámetros
pDeviceDispositivo físico a describir.
indexÍndice del dispositivo.

Hace referencia a BOOL.

Referenciado por showDevices().

Gráfico de llamadas a esta función:

◆ showDevices()

void GEGraphicsContext::showDevices ( )
private

Muestra y escribe en fichero las propiedades de los dispositivos detectados.

Muestra los dispositivos físicos disponibles y genera un archivo con las propiedades de cada uno.

Hace referencia a instance, physicalDevice y resumeDeviceProperties().

Gráfico de llamadas de esta función:

◆ showInstanceProperties()

void GEGraphicsContext::showInstanceProperties ( )
private

Muestra propiedades de la instancia Vulkan (depuración).

Muestra las propiedades de la instancia.

Documentación de datos miembro

◆ device

◆ graphicsQueueFamilyIndex

uint32_t GEGraphicsContext::graphicsQueueFamilyIndex

◆ instance

VkInstance GEGraphicsContext::instance

◆ memProperties

VkPhysicalDeviceMemoryProperties GEGraphicsContext::memProperties
private

Propiedades de memoria del dispositivo.

Referenciado por findMemoryType() y pickPhysicalDevice().

◆ physicalDevice

VkPhysicalDevice GEGraphicsContext::physicalDevice

◆ presentQueueFamilyIndex

uint32_t GEGraphicsContext::presentQueueFamilyIndex

Índice de la familia de colas para presentación.

Referenciado por createLogicalDevice(), GEDrawingContext::createQueues(), GEDrawingContext::createSwapChain() y isDeviceSuitable().

◆ surface

VkSurfaceKHR GEGraphicsContext::surface

La documentación de esta clase está generada de los siguientes archivos: