Vulkan SDK for Windows Release Notes
Vulkan SDK 1.0.54 Release Notes
Version 1.0.54 for Windows
July 12, 2017
This SDK supports Vulkan API revision 1.0.54. The prior SDK supported Vulkan API revision 1.0.51.
Update to Compiled Binaries: Starting with this SDK, all binaries in the SDK and Runtime packages are now being generated using Visual Studio 2015 in order to allow building the Runtime with Control Flow Guard protection. This may cause some incompatibility if you continue to use Visual Studio 2013 in the following situations:
- Linking a project built with Visual Studio 2013 to the static Vulkan runtime library or shaderc included in the SDK, may no longer succeed.
- Attempting to debug an executable or library included with this SDK may not provide all debug information available.
If either of these usage scenarios is important to you, we suggest that you upgrade to using Visual Studio 2015, or newer.
Drivers: LunarG recommends that you update your Vulkan-capable hardware drivers to the latest recommended version from your hardware vendor. A list of Known Driver Issues appears at the end of this document with more information.
Overview of new features in SDK 1.0.54
-
Update loader and docs to Vulkan version 1.0.54
-
Scores of bug fixes, validation coverage and accuracy improvements, and many feature additions
-
Extensions introduced since the 1.0.51 SDK include several groups of functionality:
- External fence extensions:
- VK_KHR_external_fence
- VK_KHR_external_fence_capabilities
- VK_KHR_external_fence_fd
- VK_KHR_external_fence_win32
- External semaphore extensions:
- VK_KHR_external_semaphore *
- VK_KHR_external_semaphore_capabilities *
- VK_KHR_external_semaphore_fd *
- VK_KHR_external_semaphore_win32 *
- External memory extensions:
- VK_KHR_dedicated_allocation *
- VK_KHR_external_memory *
- VK_KHR_external_memory_capabilities *
- VK_KHR_external_memory_fd *
- VK_KHR_external_memory_win32 *
- VK_KHR_get_memory_requirements2
- VK_KHR_win32_keyed_mutex *
- Storage buffer extensions:
- VK_KHR_16bit_storage
- VK_KHR_storage_buffer_storage_class
- VK_KHR_variable_pointers
- Additional vendor and cross-vendor extensions:
- VK_EXT_blend_operation_advanced
- VK_EXT_sampler_filter_minmax
- VK_AMD_gpu_shader_int16
- VK_NV_fill_rectangle
- VK_NV_fragment_coverage_to_color
- VK_NV_framebuffer_mixed_samples
- External fence extensions:
-
The above extensions that have an asterisk (*) after their name are extensions that were previously released as experimental Khronos extensions using the
VK_KHX_
prefix. The extensions have been renamed as follows:
Deprecated Experimental Extension Name | New Khronos Extension Name |
---|---|
VK_KHX_external_memory | VK_KHR_external_memory |
VK_KHX_external_memory_capabilities | VK_KHR_external_memory_capabilities |
VK_KHX_external_memory_fd | VK_KHR_external_memory_fd |
VK_KHX_external_memory_win32 | VK_KHR_external_memory_win32 |
VK_KHX_external_semaphore | VK_KHR_external_semaphore |
VK_KHX_external_semaphore_fd | VK_KHR_external_semaphore_fd |
VK_KHX_external_semaphore_capabilities | VK_KHR_external_semaphore_capabilities |
VK_KHX_external_semaphore_win32 | VK_KHR_external_semaphore_win32 |
VK_KHX_win32_keyed_mutex | VK_KHR_win32_keyed_mutex |
Important Notes About Experimental Extensions
The KHX
and NVX
identifiers in the name indicate that the extension is experimental, and is being considered for
future standardization. In the case of a KHX
extension, this extension is being considered as either a KHR
extension
or core Vulkan API functionality. NVX
extensions are being considered for either a final NV
or a more general
(EXT
, KHR
) extension.
As experimental extensions:
- Developers are encouraged to experiment with them and provide feedback, but should not use them as the basis for production applications.
- These experimental extensions are expected to be supported for a limited time only.
- They may change their interfaces and behavior in significant ways as a result of feedback
- They may be withdrawn or replaced with a different stable (
KHR
,EXT
, ...) extension or core functionality at any time. - Implementations of these extensions receive limited or no testing when submitted to the Khronos conformance process.
- Using experimental extensions with the validation layers may produce inaccurate validation results.
SDK Components
This version of the SDK components are based on the following specifications and source code repositories:
Last Commits are designated by the following Git Tags in the respective repositories:
- LoaderAndValidationLayers: sdk-1.0.54.0
- VulkanTools: sdk-1.0.54.0
- VulkanSamples: sdk-1.0.54.0
Fixed Issues
Fixed Vulkan-LoaderAndValidationLayers Github Issues:
- #1926 Some comments in C header files are not C-style
- #1922 CMake out of tree build has errors
- #1909 CMake generation code fails since commit 227aa78
- #1894 Cube built for XLIB gets seg fault at exit
- #1890 Building on ARM fails with latest code
- #1889 No warning if using VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE without enabling VK_KHR_sampler_mirror_clamp_to_edge
- #1878 tests: vkvalidatelayerdoc.sh hardcodes path to the layer directory
- #1869 DescriptorSets: Use shared_ptr for DescriptorSetLayout data instead of copies
- #1846 Bad memory behavior in ExceedMemoryAllocationCount
- #1827 Tests: fix general confusion about supported vs enabled extensions
- #1781 VkLayerTest.VALIDATION_ERROR_01412 fails on AMD
- #1683 Remove remaining husk of Swapchain layer
- #1682 Layer combinations causing some scene objects to not render
- #1600 SC layer: GS output to FS input not taken into account (refs VS instead)
- #1546 Complex types trip up interface mismatch
- #1376 Layers: vkCmdBlitImage does not appear to have image bound checking
- #372 Improve device limits checking to use a "device profile" to check against, instead of the actual device limits
Fixed LunarXchange Issues:
- #690 1.0.51 links to 49 release notes
- #695 Could NOT find Vulkan (missing: Vulkan_LIBRARY)
- #697 Vulkan Runtime Packaging on Windows NT 6.1+
Fixed VulkanTools Github issues:
- #261 Could not find Vulkan (missing: Vulkan_LIBRARY)
Fixed VulkanSamples Github issues:
- #147 Draw multiple cubes using vulkan
- #146 Linker Error while trying to run the Vulcan API Samples on Android Studio
- #143 Detected Visual Studio Version as 00 0000
- #139 Android Samples with latest ndk update fails due to deprecated app_dummy() call
- #137 Android Samples are not allowing the debugger to attach.
- #136 Hologram crashes when resizing window
Known Issues
- Loader and validation layer open issues are available in the Vulkan-LoaderAndValidationLayers Github Repository
- VkTrace and other tool-related open issues are available in the VulkanTools Github Repository
- Vulkan Sample-related open issues are available in the VulkanSamples Github Repository
Known Driver Issues
None