KhronosGroup / KhronosGroup/Vulkan-ValidationLayers
VK_EXT_full_screen_exclusive wrongly wrapped in WIN32 ifdef
- Dominant language
- C++
- Stars
- 1k
- Forks
- 504
- Avg merge
- 11h 35m
- Merged PRs (30d)
- 224
Description
I noticed things like `manual_PreCallValidateGetPhysicalDeviceSurfacePresentModes2EXT` and
```
#ifdef VK_USE_PLATFORM_WIN32_KHR
{"vkGetPhysicalDeviceSurfacePresentModes2EXT", (void*)GetPhysicalDeviceSurfacePresentModes2EXT},
{"vkAcquireFullScreenExclusiveModeEXT", (void*)AcquireFullScreenExclusiveModeEXT},
{"vkReleaseFullScreenExclusiveModeEXT", (void*)ReleaseFullScreenExclusiveModeEXT},
{"vkGetDeviceGroupSurfacePresentModes2EXT", (void*)GetDeviceGroupSurfacePresentModes2EXT},
#endif // VK_USE_PLATFORM_WIN32_KHR
```
have `VK_USE_PLATFORM_WIN32_KHR`, but shouldn't
There is an interaction with `VK_KHR_win32_surface`, but the extension can be used with any platform that wants to support it
Contributor guide
Research direction
Search the repository for manual_PreCallValidateGetPhysicalDeviceSurfacePresentModes2EXT and the listed dispatch entries, then trace where their platform guards are defined or generated. Confirm that the full-screen-exclusive commands are not unnecessarily restricted to VK_USE_PLATFORM_WIN32_KHR, and verify the corrected guards with the relevant validation-layer build or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-graphics, devtools
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100