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