mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-03-06 20:58:37 +01:00
[meta] Use Vulkan-Headers repository as a submodule
This commit is contained in:
parent
c258eb05d2
commit
aa554f1166
7 changed files with 7 additions and 15474 deletions
3
.gitmodules
vendored
3
.gitmodules
vendored
|
@ -1,3 +1,6 @@
|
||||||
[submodule "include/native/directx"]
|
[submodule "include/native/directx"]
|
||||||
path = include/native/directx
|
path = include/native/directx
|
||||||
url = https://github.com/Joshua-Ashton/mingw-directx-headers
|
url = https://github.com/Joshua-Ashton/mingw-directx-headers
|
||||||
|
[submodule "include/vulkan"]
|
||||||
|
path = include/vulkan
|
||||||
|
url = https://github.com/KhronosGroup/Vulkan-Headers
|
||||||
|
|
1
include/vulkan
Submodule
1
include/vulkan
Submodule
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 715673702f5b18ffb8e5832e67cf731468d32ac6
|
|
@ -1,84 +0,0 @@
|
||||||
//
|
|
||||||
// File: vk_platform.h
|
|
||||||
//
|
|
||||||
/*
|
|
||||||
** Copyright 2014-2022 The Khronos Group Inc.
|
|
||||||
**
|
|
||||||
** SPDX-License-Identifier: Apache-2.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef VK_PLATFORM_H_
|
|
||||||
#define VK_PLATFORM_H_
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C"
|
|
||||||
{
|
|
||||||
#endif // __cplusplus
|
|
||||||
|
|
||||||
/*
|
|
||||||
***************************************************************************************************
|
|
||||||
* Platform-specific directives and type declarations
|
|
||||||
***************************************************************************************************
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Platform-specific calling convention macros.
|
|
||||||
*
|
|
||||||
* Platforms should define these so that Vulkan clients call Vulkan commands
|
|
||||||
* with the same calling conventions that the Vulkan implementation expects.
|
|
||||||
*
|
|
||||||
* VKAPI_ATTR - Placed before the return type in function declarations.
|
|
||||||
* Useful for C++11 and GCC/Clang-style function attribute syntax.
|
|
||||||
* VKAPI_CALL - Placed after the return type in function declarations.
|
|
||||||
* Useful for MSVC-style calling convention syntax.
|
|
||||||
* VKAPI_PTR - Placed between the '(' and '*' in function pointer types.
|
|
||||||
*
|
|
||||||
* Function declaration: VKAPI_ATTR void VKAPI_CALL vkCommand(void);
|
|
||||||
* Function pointer type: typedef void (VKAPI_PTR *PFN_vkCommand)(void);
|
|
||||||
*/
|
|
||||||
#if defined(_WIN32)
|
|
||||||
// On Windows, Vulkan commands use the stdcall convention
|
|
||||||
#define VKAPI_ATTR
|
|
||||||
#define VKAPI_CALL __stdcall
|
|
||||||
#define VKAPI_PTR VKAPI_CALL
|
|
||||||
#elif defined(__ANDROID__) && defined(__ARM_ARCH) && __ARM_ARCH < 7
|
|
||||||
#error "Vulkan is not supported for the 'armeabi' NDK ABI"
|
|
||||||
#elif defined(__ANDROID__) && defined(__ARM_ARCH) && __ARM_ARCH >= 7 && defined(__ARM_32BIT_STATE)
|
|
||||||
// On Android 32-bit ARM targets, Vulkan functions use the "hardfloat"
|
|
||||||
// calling convention, i.e. float parameters are passed in registers. This
|
|
||||||
// is true even if the rest of the application passes floats on the stack,
|
|
||||||
// as it does by default when compiling for the armeabi-v7a NDK ABI.
|
|
||||||
#define VKAPI_ATTR __attribute__((pcs("aapcs-vfp")))
|
|
||||||
#define VKAPI_CALL
|
|
||||||
#define VKAPI_PTR VKAPI_ATTR
|
|
||||||
#else
|
|
||||||
// On other platforms, use the default calling convention
|
|
||||||
#define VKAPI_ATTR
|
|
||||||
#define VKAPI_CALL
|
|
||||||
#define VKAPI_PTR
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(VK_NO_STDDEF_H)
|
|
||||||
#include <stddef.h>
|
|
||||||
#endif // !defined(VK_NO_STDDEF_H)
|
|
||||||
|
|
||||||
#if !defined(VK_NO_STDINT_H)
|
|
||||||
#if defined(_MSC_VER) && (_MSC_VER < 1600)
|
|
||||||
typedef signed __int8 int8_t;
|
|
||||||
typedef unsigned __int8 uint8_t;
|
|
||||||
typedef signed __int16 int16_t;
|
|
||||||
typedef unsigned __int16 uint16_t;
|
|
||||||
typedef signed __int32 int32_t;
|
|
||||||
typedef unsigned __int32 uint32_t;
|
|
||||||
typedef signed __int64 int64_t;
|
|
||||||
typedef unsigned __int64 uint64_t;
|
|
||||||
#else
|
|
||||||
#include <stdint.h>
|
|
||||||
#endif
|
|
||||||
#endif // !defined(VK_NO_STDINT_H)
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
} // extern "C"
|
|
||||||
#endif // __cplusplus
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -1,92 +0,0 @@
|
||||||
#ifndef VULKAN_H_
|
|
||||||
#define VULKAN_H_ 1
|
|
||||||
|
|
||||||
/*
|
|
||||||
** Copyright 2015-2022 The Khronos Group Inc.
|
|
||||||
**
|
|
||||||
** SPDX-License-Identifier: Apache-2.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "vk_platform.h"
|
|
||||||
#include "vulkan_core.h"
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_ANDROID_KHR
|
|
||||||
#include "vulkan_android.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_FUCHSIA
|
|
||||||
#include <zircon/types.h>
|
|
||||||
#include "vulkan_fuchsia.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_IOS_MVK
|
|
||||||
#include "vulkan_ios.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_MACOS_MVK
|
|
||||||
#include "vulkan_macos.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_METAL_EXT
|
|
||||||
#include "vulkan_metal.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_VI_NN
|
|
||||||
#include "vulkan_vi.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
|
|
||||||
#include <wayland-client.h>
|
|
||||||
#include "vulkan_wayland.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_WIN32_KHR
|
|
||||||
#include <windows.h>
|
|
||||||
#include "vulkan_win32.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_XCB_KHR
|
|
||||||
#include <xcb/xcb.h>
|
|
||||||
#include "vulkan_xcb.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_XLIB_KHR
|
|
||||||
#include <X11/Xlib.h>
|
|
||||||
#include "vulkan_xlib.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_DIRECTFB_EXT
|
|
||||||
#include <directfb.h>
|
|
||||||
#include "vulkan_directfb.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
|
|
||||||
#include <X11/Xlib.h>
|
|
||||||
#include <X11/extensions/Xrandr.h>
|
|
||||||
#include "vulkan_xlib_xrandr.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_GGP
|
|
||||||
#include <ggp_c/vulkan_types.h>
|
|
||||||
#include "vulkan_ggp.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_SCREEN_QNX
|
|
||||||
#include <screen/screen.h>
|
|
||||||
#include "vulkan_screen.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef VK_ENABLE_BETA_EXTENSIONS
|
|
||||||
#include "vulkan_beta.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // VULKAN_H_
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,315 +0,0 @@
|
||||||
#ifndef VULKAN_WIN32_H_
|
|
||||||
#define VULKAN_WIN32_H_ 1
|
|
||||||
|
|
||||||
/*
|
|
||||||
** Copyright 2015-2022 The Khronos Group Inc.
|
|
||||||
**
|
|
||||||
** SPDX-License-Identifier: Apache-2.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
** This header is generated from the Khronos Vulkan XML API Registry.
|
|
||||||
**
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define VK_KHR_win32_surface 1
|
|
||||||
#define VK_KHR_WIN32_SURFACE_SPEC_VERSION 6
|
|
||||||
#define VK_KHR_WIN32_SURFACE_EXTENSION_NAME "VK_KHR_win32_surface"
|
|
||||||
typedef VkFlags VkWin32SurfaceCreateFlagsKHR;
|
|
||||||
typedef struct VkWin32SurfaceCreateInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
VkWin32SurfaceCreateFlagsKHR flags;
|
|
||||||
HINSTANCE hinstance;
|
|
||||||
HWND hwnd;
|
|
||||||
} VkWin32SurfaceCreateInfoKHR;
|
|
||||||
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkCreateWin32SurfaceKHR)(VkInstance instance, const VkWin32SurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
|
|
||||||
typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex);
|
|
||||||
|
|
||||||
#ifndef VK_NO_PROTOTYPES
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkCreateWin32SurfaceKHR(
|
|
||||||
VkInstance instance,
|
|
||||||
const VkWin32SurfaceCreateInfoKHR* pCreateInfo,
|
|
||||||
const VkAllocationCallbacks* pAllocator,
|
|
||||||
VkSurfaceKHR* pSurface);
|
|
||||||
|
|
||||||
VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWin32PresentationSupportKHR(
|
|
||||||
VkPhysicalDevice physicalDevice,
|
|
||||||
uint32_t queueFamilyIndex);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#define VK_KHR_external_memory_win32 1
|
|
||||||
#define VK_KHR_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1
|
|
||||||
#define VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_KHR_external_memory_win32"
|
|
||||||
typedef struct VkImportMemoryWin32HandleInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
VkExternalMemoryHandleTypeFlagBits handleType;
|
|
||||||
HANDLE handle;
|
|
||||||
LPCWSTR name;
|
|
||||||
} VkImportMemoryWin32HandleInfoKHR;
|
|
||||||
|
|
||||||
typedef struct VkExportMemoryWin32HandleInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
const SECURITY_ATTRIBUTES* pAttributes;
|
|
||||||
DWORD dwAccess;
|
|
||||||
LPCWSTR name;
|
|
||||||
} VkExportMemoryWin32HandleInfoKHR;
|
|
||||||
|
|
||||||
typedef struct VkMemoryWin32HandlePropertiesKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
void* pNext;
|
|
||||||
uint32_t memoryTypeBits;
|
|
||||||
} VkMemoryWin32HandlePropertiesKHR;
|
|
||||||
|
|
||||||
typedef struct VkMemoryGetWin32HandleInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
VkDeviceMemory memory;
|
|
||||||
VkExternalMemoryHandleTypeFlagBits handleType;
|
|
||||||
} VkMemoryGetWin32HandleInfoKHR;
|
|
||||||
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleKHR)(VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle);
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandlePropertiesKHR)(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, HANDLE handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties);
|
|
||||||
|
|
||||||
#ifndef VK_NO_PROTOTYPES
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleKHR(
|
|
||||||
VkDevice device,
|
|
||||||
const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo,
|
|
||||||
HANDLE* pHandle);
|
|
||||||
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandlePropertiesKHR(
|
|
||||||
VkDevice device,
|
|
||||||
VkExternalMemoryHandleTypeFlagBits handleType,
|
|
||||||
HANDLE handle,
|
|
||||||
VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#define VK_KHR_win32_keyed_mutex 1
|
|
||||||
#define VK_KHR_WIN32_KEYED_MUTEX_SPEC_VERSION 1
|
|
||||||
#define VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_KHR_win32_keyed_mutex"
|
|
||||||
typedef struct VkWin32KeyedMutexAcquireReleaseInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
uint32_t acquireCount;
|
|
||||||
const VkDeviceMemory* pAcquireSyncs;
|
|
||||||
const uint64_t* pAcquireKeys;
|
|
||||||
const uint32_t* pAcquireTimeouts;
|
|
||||||
uint32_t releaseCount;
|
|
||||||
const VkDeviceMemory* pReleaseSyncs;
|
|
||||||
const uint64_t* pReleaseKeys;
|
|
||||||
} VkWin32KeyedMutexAcquireReleaseInfoKHR;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define VK_KHR_external_semaphore_win32 1
|
|
||||||
#define VK_KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION 1
|
|
||||||
#define VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME "VK_KHR_external_semaphore_win32"
|
|
||||||
typedef struct VkImportSemaphoreWin32HandleInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
VkSemaphore semaphore;
|
|
||||||
VkSemaphoreImportFlags flags;
|
|
||||||
VkExternalSemaphoreHandleTypeFlagBits handleType;
|
|
||||||
HANDLE handle;
|
|
||||||
LPCWSTR name;
|
|
||||||
} VkImportSemaphoreWin32HandleInfoKHR;
|
|
||||||
|
|
||||||
typedef struct VkExportSemaphoreWin32HandleInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
const SECURITY_ATTRIBUTES* pAttributes;
|
|
||||||
DWORD dwAccess;
|
|
||||||
LPCWSTR name;
|
|
||||||
} VkExportSemaphoreWin32HandleInfoKHR;
|
|
||||||
|
|
||||||
typedef struct VkD3D12FenceSubmitInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
uint32_t waitSemaphoreValuesCount;
|
|
||||||
const uint64_t* pWaitSemaphoreValues;
|
|
||||||
uint32_t signalSemaphoreValuesCount;
|
|
||||||
const uint64_t* pSignalSemaphoreValues;
|
|
||||||
} VkD3D12FenceSubmitInfoKHR;
|
|
||||||
|
|
||||||
typedef struct VkSemaphoreGetWin32HandleInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
VkSemaphore semaphore;
|
|
||||||
VkExternalSemaphoreHandleTypeFlagBits handleType;
|
|
||||||
} VkSemaphoreGetWin32HandleInfoKHR;
|
|
||||||
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreWin32HandleKHR)(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo);
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreWin32HandleKHR)(VkDevice device, const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle);
|
|
||||||
|
|
||||||
#ifndef VK_NO_PROTOTYPES
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreWin32HandleKHR(
|
|
||||||
VkDevice device,
|
|
||||||
const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo);
|
|
||||||
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreWin32HandleKHR(
|
|
||||||
VkDevice device,
|
|
||||||
const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo,
|
|
||||||
HANDLE* pHandle);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#define VK_KHR_external_fence_win32 1
|
|
||||||
#define VK_KHR_EXTERNAL_FENCE_WIN32_SPEC_VERSION 1
|
|
||||||
#define VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME "VK_KHR_external_fence_win32"
|
|
||||||
typedef struct VkImportFenceWin32HandleInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
VkFence fence;
|
|
||||||
VkFenceImportFlags flags;
|
|
||||||
VkExternalFenceHandleTypeFlagBits handleType;
|
|
||||||
HANDLE handle;
|
|
||||||
LPCWSTR name;
|
|
||||||
} VkImportFenceWin32HandleInfoKHR;
|
|
||||||
|
|
||||||
typedef struct VkExportFenceWin32HandleInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
const SECURITY_ATTRIBUTES* pAttributes;
|
|
||||||
DWORD dwAccess;
|
|
||||||
LPCWSTR name;
|
|
||||||
} VkExportFenceWin32HandleInfoKHR;
|
|
||||||
|
|
||||||
typedef struct VkFenceGetWin32HandleInfoKHR {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
VkFence fence;
|
|
||||||
VkExternalFenceHandleTypeFlagBits handleType;
|
|
||||||
} VkFenceGetWin32HandleInfoKHR;
|
|
||||||
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkImportFenceWin32HandleKHR)(VkDevice device, const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo);
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkGetFenceWin32HandleKHR)(VkDevice device, const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle);
|
|
||||||
|
|
||||||
#ifndef VK_NO_PROTOTYPES
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkImportFenceWin32HandleKHR(
|
|
||||||
VkDevice device,
|
|
||||||
const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo);
|
|
||||||
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkGetFenceWin32HandleKHR(
|
|
||||||
VkDevice device,
|
|
||||||
const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo,
|
|
||||||
HANDLE* pHandle);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#define VK_NV_external_memory_win32 1
|
|
||||||
#define VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1
|
|
||||||
#define VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_NV_external_memory_win32"
|
|
||||||
typedef struct VkImportMemoryWin32HandleInfoNV {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
VkExternalMemoryHandleTypeFlagsNV handleType;
|
|
||||||
HANDLE handle;
|
|
||||||
} VkImportMemoryWin32HandleInfoNV;
|
|
||||||
|
|
||||||
typedef struct VkExportMemoryWin32HandleInfoNV {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
const SECURITY_ATTRIBUTES* pAttributes;
|
|
||||||
DWORD dwAccess;
|
|
||||||
} VkExportMemoryWin32HandleInfoNV;
|
|
||||||
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleNV)(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, HANDLE* pHandle);
|
|
||||||
|
|
||||||
#ifndef VK_NO_PROTOTYPES
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleNV(
|
|
||||||
VkDevice device,
|
|
||||||
VkDeviceMemory memory,
|
|
||||||
VkExternalMemoryHandleTypeFlagsNV handleType,
|
|
||||||
HANDLE* pHandle);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#define VK_NV_win32_keyed_mutex 1
|
|
||||||
#define VK_NV_WIN32_KEYED_MUTEX_SPEC_VERSION 2
|
|
||||||
#define VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_NV_win32_keyed_mutex"
|
|
||||||
typedef struct VkWin32KeyedMutexAcquireReleaseInfoNV {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
uint32_t acquireCount;
|
|
||||||
const VkDeviceMemory* pAcquireSyncs;
|
|
||||||
const uint64_t* pAcquireKeys;
|
|
||||||
const uint32_t* pAcquireTimeoutMilliseconds;
|
|
||||||
uint32_t releaseCount;
|
|
||||||
const VkDeviceMemory* pReleaseSyncs;
|
|
||||||
const uint64_t* pReleaseKeys;
|
|
||||||
} VkWin32KeyedMutexAcquireReleaseInfoNV;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define VK_EXT_full_screen_exclusive 1
|
|
||||||
#define VK_EXT_FULL_SCREEN_EXCLUSIVE_SPEC_VERSION 4
|
|
||||||
#define VK_EXT_FULL_SCREEN_EXCLUSIVE_EXTENSION_NAME "VK_EXT_full_screen_exclusive"
|
|
||||||
|
|
||||||
typedef enum VkFullScreenExclusiveEXT {
|
|
||||||
VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT = 0,
|
|
||||||
VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT = 1,
|
|
||||||
VK_FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT = 2,
|
|
||||||
VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT = 3,
|
|
||||||
VK_FULL_SCREEN_EXCLUSIVE_MAX_ENUM_EXT = 0x7FFFFFFF
|
|
||||||
} VkFullScreenExclusiveEXT;
|
|
||||||
typedef struct VkSurfaceFullScreenExclusiveInfoEXT {
|
|
||||||
VkStructureType sType;
|
|
||||||
void* pNext;
|
|
||||||
VkFullScreenExclusiveEXT fullScreenExclusive;
|
|
||||||
} VkSurfaceFullScreenExclusiveInfoEXT;
|
|
||||||
|
|
||||||
typedef struct VkSurfaceCapabilitiesFullScreenExclusiveEXT {
|
|
||||||
VkStructureType sType;
|
|
||||||
void* pNext;
|
|
||||||
VkBool32 fullScreenExclusiveSupported;
|
|
||||||
} VkSurfaceCapabilitiesFullScreenExclusiveEXT;
|
|
||||||
|
|
||||||
typedef struct VkSurfaceFullScreenExclusiveWin32InfoEXT {
|
|
||||||
VkStructureType sType;
|
|
||||||
const void* pNext;
|
|
||||||
HMONITOR hmonitor;
|
|
||||||
} VkSurfaceFullScreenExclusiveWin32InfoEXT;
|
|
||||||
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes);
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkAcquireFullScreenExclusiveModeEXT)(VkDevice device, VkSwapchainKHR swapchain);
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkReleaseFullScreenExclusiveModeEXT)(VkDevice device, VkSwapchainKHR swapchain);
|
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceGroupSurfacePresentModes2EXT)(VkDevice device, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkDeviceGroupPresentModeFlagsKHR* pModes);
|
|
||||||
|
|
||||||
#ifndef VK_NO_PROTOTYPES
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfacePresentModes2EXT(
|
|
||||||
VkPhysicalDevice physicalDevice,
|
|
||||||
const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
|
|
||||||
uint32_t* pPresentModeCount,
|
|
||||||
VkPresentModeKHR* pPresentModes);
|
|
||||||
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkAcquireFullScreenExclusiveModeEXT(
|
|
||||||
VkDevice device,
|
|
||||||
VkSwapchainKHR swapchain);
|
|
||||||
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkReleaseFullScreenExclusiveModeEXT(
|
|
||||||
VkDevice device,
|
|
||||||
VkSwapchainKHR swapchain);
|
|
||||||
|
|
||||||
VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceGroupSurfacePresentModes2EXT(
|
|
||||||
VkDevice device,
|
|
||||||
const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
|
|
||||||
VkDeviceGroupPresentModeFlagsKHR* pModes);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -26,6 +26,8 @@ if get_option('build_id')
|
||||||
]
|
]
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
dxvk_include_path = include_directories('./include', './include/vulkan/include')
|
||||||
|
|
||||||
if platform == 'windows'
|
if platform == 'windows'
|
||||||
compiler_args += [
|
compiler_args += [
|
||||||
'-DNOMINMAX',
|
'-DNOMINMAX',
|
||||||
|
@ -91,8 +93,6 @@ if platform == 'windows'
|
||||||
)
|
)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
dxvk_include_path = include_directories('./include')
|
|
||||||
|
|
||||||
dxvk_wsi = 'win32'
|
dxvk_wsi = 'win32'
|
||||||
compiler_args += ['-DDXVK_WSI_WIN32']
|
compiler_args += ['-DDXVK_WSI_WIN32']
|
||||||
else
|
else
|
||||||
|
@ -102,7 +102,7 @@ else
|
||||||
wrc = find_program('touch')
|
wrc = find_program('touch')
|
||||||
wrc_generator = generator(wrc, output : [ '@BASENAME@_ignored.h' ], arguments : [ '@OUTPUT@' ] )
|
wrc_generator = generator(wrc, output : [ '@BASENAME@_ignored.h' ], arguments : [ '@OUTPUT@' ] )
|
||||||
|
|
||||||
dxvk_include_path = include_directories('./include', './include/native', './include/native/windows', './include/native/directx')
|
dxvk_include_path += include_directories('./include/native', './include/native/windows', './include/native/directx')
|
||||||
|
|
||||||
dxvk_wsi = 'sdl2'
|
dxvk_wsi = 'sdl2'
|
||||||
compiler_args += ['-DDXVK_WSI_SDL2']
|
compiler_args += ['-DDXVK_WSI_SDL2']
|
||||||
|
|
Loading…
Add table
Reference in a new issue