Khronos Vulkan

Creative Commons

Vulkan SDK 1.3.283.0 Release Notes

Version 1.3.283.0 for macOS
May 14, 2024

This release adds symbolic links to the /include and /bin folders in the /iOS install directory and a version of setup-env.sh for use with iOS, also in the /iOS folder. The shader toolchain in the linked /bin folder is compatible with iOS as is the /headers folder. The setup-env.sh script (run source setup-env.sh from the /iOS folder) sets up the VULKAN_SDK environment variable to point to the iOS libraries and frameworks. Users of cmake version 3.29.0 or later on macOS will find that cmake should be able to find the appropriate version of the vulkan header framework for iOS development and using the Xcode generator with cmake will produce usable iOS projects. The Vulkan Samples SDK has also recently been updated with compatability with this SDK.

Deprecation Notice

Future versions of the Apple Vulkan SDK will no longer be distributed as a .DMG (mountable device volume). Instead a notarized .zip file containing the installer executable will be posted. This is due to some developer requests, and will streamline automation of downloading, extracting, and running the installer executable in a scripted fashion.

Removal Notice (Repeated from last SDK release)

The /MoltenVK folder in the root of the SDK has been removed. This folder contained duplicate headers that are found in /macOS/include. The MoltenVK specific internal headers have been moved to /macOS/include as well so that all required headers for Vulkan development on Apple platforms are in one location. In additon, the libraries and .xcFramework in /MoltenVK has been moved to macOS/lib, so that again, all libraries needed for macOS development are in one location.

In addtion, iOS support is moving out of Beta. Part of this transition is the removal of all .dylib's for iOS as they conflict with Apple's rules for App Store distribution. The loader, MoltenVK, and layers are now provided as dynamic frameworks for this reason. Shader toolchain libraries are now static only as well. Also as part of this restructuring tvOS is no longer a separate component, but is still supported in the xcFrameworks that are a part of the base macOS SDK installation.

Overview of new features in SDK 1.3.283.0

Platform Support Matrix

Feature Windows Linux tarball Ubuntu Packages macOS SDK (iOS)
Tools
Vulkan Configurator X X X X
Vulkaninfo X X X X
VIA (Vulkan Installation Analyzer) X X X X
Vulkan Profiles API Library X X X X
VOLK (a meta-loader for Vulkan) X X X X (*)
AMD Memory Allocator X X X X (*)
Validation Layers
Validation X X X X (*)
Best Practices X X X X (*)
GPU Assisted Validation X X X
Debug Printf X X X
Synchronization Validation X X X X (*)
Utility Layers
Profiles Layer X X X X (*)
API Dump X X X X (*)
Monitor X X X
Screenshot X X X X
GFXReconstruct X X X
Extension Layers
Synchronization 2 X X X X (*)
Shader object X X X X (*)
Shader Tools
glslangValidator X X X X (*)
SPIR-V Optimizer X X X X (*)
SPIR-V Disassembler, Assembler, Validator X X X X (*)
SPIR-V Remapper X X X X (*)
SPIR-V Control Flow Visualization X X X X (*)
SPIR-V Cross-Compilation and Reflection X X X X (*)
shaderc X X X X (*)
DXC (DirectX Shader Compiler) X X X X
SPIRV-reflect X X X X (*)
MoltenVKConvertShader X (*)

SDK Components

This version of the SDK is based on the following specifications, source code repositories, and commits:

LunarG would like to thank all of the many contributors to all of the above repositories and the contributions they are making to the Vulkan Ecosystem.

Submitting Issues

If while using the tools and layers included in the SDK you find a defect in that tool or layer, the most expedient way to get a resolution is to submit to its corresponding repository. For example, if you believe you have found a defect in the Validation Layers, submit an issue at the repository for Validation Layers. The only exception to this is for the shader tool chain (glslang, SPIRV-Cross, SPIRV-Tools, shaderc). For these repositories you can submit issues against the SDK at vulkan.lunarg.com.

Developer Notes

The new installation app optionally (but by default) runs the script install_vulkan.py with administrative privileges. This copies the Vulkan Loader, MoltenVK, and command line utilities into system folders (/usr/local) for easier access during development.

Known Issues