diff --git a/projects/core/src/output_device/gryphn_physical_device.c b/projects/core/src/output_device/gryphn_physical_device.c index 8910726..6418db2 100644 --- a/projects/core/src/output_device/gryphn_physical_device.c +++ b/projects/core/src/output_device/gryphn_physical_device.c @@ -6,6 +6,10 @@ gnPhysicalDeviceProperties gnQueryPhysicalDeviceProperties(gnInstanceHandle inst return instance->functions->getPhysicalDeviceProperties(instance, device, instance->functions->next); } +gnPhysicalDeviceProperties gnQueryPhysicalDeviceFeatures(gnInstanceHandle instance, gnPhysicalDeviceHandle device) { + return instance->functions->getPhysicalDeviceFeatures(instance, device, instance->functions->next); +} + gnBool gnPhysicalDeviceCanPresentToSurface(gnInstanceHandle instance, gnPhysicalDeviceHandle device, gnWindowSurfaceHandle windowSurface) { return instance->callingLayer->instanceFunctions._gnPhysicalDeviceCanPresentToSurface(device, windowSurface); } diff --git a/projects/core/src/output_device/gryphn_physical_device.h b/projects/core/src/output_device/gryphn_physical_device.h index d9fad10..662e12a 100644 --- a/projects/core/src/output_device/gryphn_physical_device.h +++ b/projects/core/src/output_device/gryphn_physical_device.h @@ -40,7 +40,7 @@ typedef struct gnPhysicalDeviceFeatures { gnBool samplerAnisotropy; } gnPhysicalDeviceFeatures; -gnPhysicalDeviceProperties gnQueryPhysicalDeviceFeatures(gnInstanceHandle instance, gnPhysicalDeviceHandle device); gnPhysicalDeviceProperties gnQueryPhysicalDeviceProperties(gnInstanceHandle instance, gnPhysicalDeviceHandle device); +gnPhysicalDeviceProperties gnQueryPhysicalDeviceFeatures(gnInstanceHandle instance, gnPhysicalDeviceHandle device); gnBool gnPhysicalDeviceCanPresentToSurface(gnInstance instance, gnPhysicalDeviceHandle device, gnWindowSurfaceHandle windowSurface); diff --git a/projects/loader/src/gryphn_instance_functions.h b/projects/loader/src/gryphn_instance_functions.h index 3cfa865..0daaa75 100644 --- a/projects/loader/src/gryphn_instance_functions.h +++ b/projects/loader/src/gryphn_instance_functions.h @@ -26,6 +26,7 @@ typedef gnBool (*PFN_gnIsInstanceSuitable)(gnInstanceHandle, gnSuitableField, gr typedef gnReturnCode (*PFN_gnInstanceQueryDevices)(gnInstanceHandle, uint32_t*, gnPhysicalDeviceHandle*, gryphnInstanceFunctionLayers*); typedef void (*PFN_gnDestroyInstance)(gnInstanceHandle, gryphnInstanceFunctionLayers*, gnAllocators*); +typedef gnPhysicalDeviceProperties (*PFN_gnQueryPhysicalDeviceFeatures)(gnInstanceHandle, gnPhysicalDeviceHandle, gryphnInstanceFunctionLayers*); typedef gnPhysicalDeviceProperties (*PFN_gnQueryPhysicalDeviceProperties)(gnInstance, gnPhysicalDeviceHandle, gryphnInstanceFunctionLayers*); typedef struct gnInstanceFunctions { diff --git a/projects/loader/src/gryphn_loader.h b/projects/loader/src/gryphn_loader.h index fb09213..eb16c46 100644 --- a/projects/loader/src/gryphn_loader.h +++ b/projects/loader/src/gryphn_loader.h @@ -18,6 +18,7 @@ typedef struct gryphnInstanceFunctionLayers { PFN_gnIsInstanceSuitable isSuitable; PFN_gnInstanceQueryDevices queryDevices; PFN_gnDestroyInstance destroyInstance; + PFN_gnQueryPhysicalDeviceFeatures getPhysicalDeviceFeatures; PFN_gnQueryPhysicalDeviceProperties getPhysicalDeviceProperties; struct gryphnInstanceFunctionLayers* next; } gryphnInstanceFunctionLayers;