Return Loader-compatible structure for dispatchable Vulkan objects. Add Vulkan-LoaderAndValidationLayers repository as submodule.
3.9 KiB

Copyright (c) 2014-2017 The Brenwill Workshop Ltd.
This document is written in Markdown format. For best results, use a Markdown reader.
Table of Contents
-
Vulkan-Hpp
-
Vulkan-LoaderAndValidationLayers
Using the Vulkan-Hpp Spec Repository with MoltenVK
MoltenVK uses the official Khronos Vulkan specification repository to provide the standard Vulkan API header files and Vulkan Specification documentation.
To add the Khronos Vulkan specification repository to MoltenVK, open a Terminal session and perform the following command-line steps:
-
Ensure you have
python3
andasciidoctor
installed:brew install python3 sudo gem install asciidoctor
-
If you used the
--recursive
option when cloning theMoltenVK
repository, you should already have theVulkan-Hpp
submodule, and you can skip to Step 3 below. If you did not use the--recursive
option when cloning theMoltenVK
repository, retrieve theVulkan-Hpp
submodule into theExternal
directory as follows, from within theMoltenVK
repository directory:git submodule update --init --recursive External/Vulkan-Hpp
-
In the
Externals
folder within theMoltenVK
repository, build the spec and header files as follows from the main directory of thisMoltenVK
repository:cd External ./makeVulkanSpec
Updating the Vulkan-Hpp library version
If you are developing enhancements to MoltenVK, you can update the version of Vulkan-Hpp
used by MoltenVK to the latest version available by re-cloning and re-building the
Vulkan-Hpp
submodule using the getLatestVulkanSpec
script:
cd External
./getLatestVulkanSpec
The updated version will then be "locked in" the next time the MoltenVK
repository is committed to git
.
Using the Vulkan-LoaderAndValidationLayers Spec Repository with MoltenVK
MoltenVK uses the Khronos Vulkan Loader and Validation Layers repository to allow MoltenVK to act as an Installable Client Driver to support the Vulkan Loader API.
If you used the --recursive
option when cloning the MoltenVK
repository, you should already
have the Vulkan-LoaderAndValidationLayers
submodule. If you did not use the --recursive
option when cloning the MoltenVK
repository, retrieve the Vulkan-LoaderAndValidationLayers
submodule into the External
directory as follows, from within the MoltenVK
repository directory:
git submodule update --init External/Vulkan-LoaderAndValidationLayers
Updating the Vulkan-LoaderAndValidationLayers library version
If you are developing enhancements to MoltenVK, you can update the version of Vulkan-LoaderAndValidationLayers
used by MoltenVK to the latest version available by re-cloning and re-building the Vulkan-LoaderAndValidationLayers
submodule using the getLatestVulkanLVL
script:
cd External
./getLatestVulkanLVL
The updated version will then be "locked in" the next time the MoltenVK
repository is committed to git
.