Mirror of Vulkan-Utility-Libraries
Find a file
Charles Giessen 85f06aeb61 util: Fix vku::GetObjectType() broken for 32 bit builds
Non Dispatchable handles are not typed in 32 bit builds, so the
vku::GetObjectHandle() helper fails to compile. The solution is to just
not define the helper in 32 bit builds.
2023-10-05 11:47:23 -06:00
.github/workflows ci: Ensure generated files are up to date 2023-09-27 15:21:00 -06:00
.reuse Add REUSE to CI 2023-07-25 16:11:18 -06:00
docs doc: Update README.md with project description 2023-09-20 13:25:56 -06:00
include util: Fix vku::GetObjectType() broken for 32 bit builds 2023-10-05 11:47:23 -06:00
LICENSES Add REUSE to CI 2023-07-25 16:11:18 -06:00
scripts util: Fix vku::GetObjectType() broken for 32 bit builds 2023-10-05 11:47:23 -06:00
src Fix Clang on Windows build 2023-09-27 14:24:39 -06:00
tests Add GetObjectType helper to struct_helper 2023-10-04 11:41:20 -06:00
.clang-format Add REUSE to CI 2023-07-25 16:11:18 -06:00
.gitattributes git: Add .gitattributes 2023-09-19 12:23:37 -06:00
.gitignore ci: Add chromium build 2023-09-20 22:00:48 -06:00
BUILD.gn gn: Add stub file to ensure header only files are checked 2023-09-21 10:42:16 -06:00
BUILD.md Add REUSE to CI 2023-07-25 16:11:18 -06:00
CMakeLists.txt build: API parameterization 2023-10-05 10:45:51 -06:00
CODE_OF_CONDUCT.md Add REUSE to CI 2023-07-25 16:11:18 -06:00
LICENSE.md Add REUSE to CI 2023-07-25 16:11:18 -06:00
README.md doc: Update README.md with project description 2023-09-20 13:25:56 -06:00

Vulkan-Utility-Libraries

This repo was created to share code across various Vulkan repositories, solving long standing issues for Vulkan SDK developers and users.

Historical Context

The Vulkan-ValidationLayers contained many libraries and utilities that were useful for other Vulkan repositories, and became the primary mechanism for code sharing in the Vulkan ecosystem.

This caused the Vulkan-ValidationLayers to have to maintain and export source code which was never intended for that purpose. This not only hindered development of the Vulkan-ValidationLayers, but would frequently break anyone depending on the source code due to the poorly located nature of it. On top of numerous other issues.

This repository was created to facilitate official source deliverables that can be reliably used by developers.

Vulkan::LayerSettings

The Vulkan::LayerSettings library was created to standardize layer configuration code for various SDK layer deliverables.

This is to ensure they all worked consistently with the 3 main methods of layer configuration.

For more information see layer_configuration.md.

Vulkan::UtilityHeaders

The Vulkan::UtilityHeaders library contains header only files that provide useful functionality to developers:

  • vk_dispatch_table.h: Initializing instance/device dispatch tables
  • vk_format_utils.h: Utilities for VkFormat
  • vk_struct_helper.hpp: Utilities for vulkan structs
  • vk_enum_string_helper.h: Converts Vulkan enums into strings