device present to surface checks
This commit is contained in:
@@ -2,15 +2,8 @@
|
||||
#include <output_device/vulkan_physical_device.h>
|
||||
#include <output_device/vulkan_output_devices.h>
|
||||
#include "vulkan_device_extensions.h"
|
||||
#include "debugger/vulkan_debugger.h"
|
||||
|
||||
#include <stdio.h>
|
||||
// #include "presentation_queue/vulkan_queue_families.h"
|
||||
// #include "presentation_queue/vulkan_swapchain.h"
|
||||
// #include "vulkan_output_devices.h"
|
||||
// #include <instance/vulkan_instance.h>
|
||||
// #include "vulkan_physical_device.h"
|
||||
// #include <set>
|
||||
|
||||
gnReturnCode gnCreateOutputDeviceFn(gnOutputDevice* outputDevice, gnInstance* instance, struct gnOutputDeviceInfo_t deviceInfo) {
|
||||
outputDevice->outputDevice = malloc(sizeof(gnPlatformOutputDevice));
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include "vulkan_physical_device.h"
|
||||
#include <instance/vulkan_instance.h>
|
||||
#include <output_device/vulkan_device_extensions.h>
|
||||
#include <vulkan_surface/vulkan_surface.h>
|
||||
|
||||
gnPhysicalDevice* gnGetPhysicalDevicesFn(gnInstance* instance, uint32_t* deviceCount) {
|
||||
vkEnumeratePhysicalDevices(instance->instance->vk_instance, deviceCount, NULL);
|
||||
@@ -39,3 +40,11 @@ gnPhysicalDevice* gnGetPhysicalDevicesFn(gnInstance* instance, uint32_t* deviceC
|
||||
|
||||
return outputDevices;
|
||||
}
|
||||
|
||||
gnBool gnQueueCanPresentToSurfaceFn(const struct gnPhysicalDevice_t device, uint32_t queueIndex, const struct gnWindowSurface_t windowSurface) {
|
||||
VkBool32 supportsPresent = false;
|
||||
vkGetPhysicalDeviceSurfaceSupportKHR(device.physicalDevice->device, queueIndex, windowSurface.windowSurface->surface, &supportsPresent);
|
||||
if (supportsPresent)
|
||||
return gnTrue;
|
||||
return gnFalse;
|
||||
}
|
||||
|
Reference in New Issue
Block a user