Try to fix vulkan-related crashes.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6141 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
Spoike 2021-12-20 10:07:24 +00:00
parent 9d6b599150
commit 4d2251a06b
2 changed files with 5 additions and 3 deletions

View file

@ -922,6 +922,8 @@ static qboolean Win32NVVK_AttachVulkan (rendererstate_t *info)
qglSignalVkSemaphoreNV = getglfunc("glSignalVkSemaphoreNV");
qglSignalVkFenceNV = getglfunc("glSignalVkFenceNV");
vkGetInstanceProcAddr = nvvkGetInstanceProcAddr(NULL, "vkGetInstanceProcAddr");
if (!vkGetInstanceProcAddr)
vkGetInstanceProcAddr = nvvkGetInstanceProcAddr;
// qwglMakeCurrent(maindc, NULL);
return VK_Init(info, NULL, Win32NVVK_CreateSurface, Win32NVVK_Present);

View file

@ -4640,7 +4640,7 @@ qboolean VK_EnumerateDevices (void *usercontext, void(*callback)(void *context,
//third set of functions...
#ifdef VK_NO_PROTOTYPES
vk_GetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)vk_GetInstanceProcAddr(vk_instance, "vkGetInstanceProcAddr");
//vk_GetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)vk_GetInstanceProcAddr(vk_instance, "vkGetInstanceProcAddr");
#define VKFunc(n) vk_##n = (PFN_vk##n)vk_GetInstanceProcAddr(vk_instance, "vk"#n);
VKFunc(DestroyInstance)
VKFunc(EnumeratePhysicalDevices)
@ -4849,7 +4849,7 @@ qboolean VK_Init(rendererstate_t *info, const char **sysextnames, qboolean (*cre
//third set of functions...
#ifdef VK_NO_PROTOTYPES
vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)vkGetInstanceProcAddr(vk.instance, "vkGetInstanceProcAddr");
//vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)vkGetInstanceProcAddr(vk.instance, "vkGetInstanceProcAddr");
#define VKFunc(n) vk##n = (PFN_vk##n)vkGetInstanceProcAddr(vk.instance, "vk"#n);
VKInst2Funcs
#undef VKFunc