fix surface creation
This commit is contained in:
Submodule depends/Dispatcher deleted from c08c8f94ef
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
#include "window_surface/gryphn_surface.h"
|
||||
#include "window_surface/gryphn_surface_create_functions.h"
|
||||
#import <QuartzCore/QuartzCore.h>
|
||||
|
||||
typedef struct gnPlatformWindowSurface_t {
|
||||
|
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
#include <window_surface/gryphn_surface.h>
|
||||
#include <window_surface/gryphn_surface_create_functions.h>
|
||||
#include <vulkan/vulkan.h>
|
||||
|
||||
typedef struct gnPlatformWindowSurface_t {
|
||||
|
@@ -1,4 +1,5 @@
|
||||
#include "gryphn_surface.h"
|
||||
#include "loader/src/gryphn_instance_functions.h"
|
||||
|
||||
void gnDestroyWindowSurface(gnWindowSurfaceHandle windowSurface) {
|
||||
windowSurface->instance->callingLayer->instanceFunctions._gnDestroyWindowSurface(windowSurface);
|
||||
@@ -9,7 +10,7 @@ gnSurfaceFormat* gnGetSupportedSurfaceFormats(
|
||||
gnPhysicalDevice device,
|
||||
uint32_t* formatCount
|
||||
) {
|
||||
gnSurfaceDetails surfaceDetails = windowSurface->instance->callingLayer->instanceFunctions._gnGetSurfaceDetails(windowSurface, device);
|
||||
gnSurfaceDetails surfaceDetails = gnGetSurfaceDetails(windowSurface, device);
|
||||
*formatCount = surfaceDetails.formatCount;
|
||||
return surfaceDetails.formats;
|
||||
}
|
||||
@@ -53,17 +54,16 @@ gnSurfaceFormat gnGetPreferredSurfaceFormat(
|
||||
}
|
||||
|
||||
uint32_t gnGetMinImageCount(gnWindowSurfaceHandle surface, gnPhysicalDevice device) {
|
||||
gnSurfaceDetails surfaceDetails = surface->instance->callingLayer->instanceFunctions._gnGetSurfaceDetails(surface, device);
|
||||
gnSurfaceDetails surfaceDetails = gnGetSurfaceDetails(surface, device);
|
||||
return surfaceDetails.minImageCount;
|
||||
}
|
||||
uint32_t gnGetMaxImageCount(gnWindowSurfaceHandle surface, gnPhysicalDevice device) {
|
||||
gnSurfaceDetails surfaceDetails = surface->instance->callingLayer->instanceFunctions._gnGetSurfaceDetails(surface, device);
|
||||
gnSurfaceDetails surfaceDetails = gnGetSurfaceDetails(surface, device);
|
||||
return surfaceDetails.maxImageCount;
|
||||
}
|
||||
|
||||
uint32_t gnGetPreferredImageCount(gnWindowSurfaceHandle surface, gnPhysicalDevice device) {
|
||||
gnSurfaceDetails surfaceDetails = surface->instance->callingLayer->instanceFunctions._gnGetSurfaceDetails(surface, device);
|
||||
|
||||
gnSurfaceDetails surfaceDetails = gnGetSurfaceDetails(surface, device);
|
||||
uint32_t imageCount = surfaceDetails.minImageCount + 1;
|
||||
if (surfaceDetails.maxImageCount > 0 && imageCount > surfaceDetails.maxImageCount) {
|
||||
imageCount = surfaceDetails.maxImageCount;
|
||||
@@ -71,4 +71,6 @@ uint32_t gnGetPreferredImageCount(gnWindowSurfaceHandle surface, gnPhysicalDevi
|
||||
return imageCount;
|
||||
}
|
||||
|
||||
gnSurfaceDetails gnGetSurfaceDetails(gnWindowSurfaceHandle surface, gnPhysicalDevice device) { return surface->instance->callingLayer->instanceFunctions._gnGetSurfaceDetails(surface, device); }
|
||||
gnSurfaceDetails gnGetSurfaceDetails(gnWindowSurfaceHandle surface, gnPhysicalDevice device) {
|
||||
return surface->instance->callingLayer->instanceFunctions._gnGetSurfaceDetails(surface, device);
|
||||
}
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#include "gryphn_surface_create_functions.h"
|
||||
#include "gryphn_surface.h"
|
||||
#include "instance/gryphn_instance.h"
|
||||
#include "loader/src/gryphn_instance_functions.h"
|
||||
|
||||
#ifdef GN_PLATFORM_LINUX
|
||||
#ifdef GN_WINDOW_X11
|
||||
|
Reference in New Issue
Block a user