Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
vulkan_raw
Usage
-
Almost names are the same as the Vulkan C API. But for some simplification reasons, a little change must be taken. The
enumvariant name is changed to withoutVK_prefix and enum name. For example theVkFormat.VK_FORMAT_UNDEFINEDis changed toVkFormat::UNDEFINED. Because of language limitations, some exceptions exist. They are the following:C version Corresponding vulkan_raw version VkImageCreateFlagBits.VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BITVkImageCreateFlagBits::IC_2D_ARRAY_COMPATIBLE_BITVkQueryResultFlagBits.VK_QUERY_RESULT_64_BITVkQueryResultFlagBits::U64_BITVkSampleCountFlagBits.VK_SAMPLE_COUNT_1_BITVkSampleCountFlagBits::SC_1_BITVkSampleCountFlagBits.VK_SAMPLE_COUNT_2_BITVkSampleCountFlagBits::SC_2_BITVkSampleCountFlagBits.VK_SAMPLE_COUNT_4_BITVkSampleCountFlagBits::SC_4_BITVkSampleCountFlagBits.VK_SAMPLE_COUNT_8_BITVkSampleCountFlagBits::SC_8_BITVkSampleCountFlagBits.VK_SAMPLE_COUNT_16_BITVkSampleCountFlagBits::SC_16_BITVkSampleCountFlagBits.VK_SAMPLE_COUNT_32_BITVkSampleCountFlagBits::SC_32_BITVkSampleCountFlagBits.VK_SAMPLE_COUNT_64_BITVkSampleCountFlagBits::SC_64_BITVkImageType.VK_IMAGE_TYPE_1DVkImageType::IT_1DVkImageType.VK_IMAGE_TYPE_2DVkImageType::IT_2DVkImageType.VK_IMAGE_TYPE_3DVkImageType::IT_3DVkImageViewType.VK_IMAGE_VIEW_TYPE_1DVkImageViewType::IVT_1DVkImageViewType.VK_IMAGE_VIEW_TYPE_2DVkImageViewType::IVT_2DVkImageViewType.VK_IMAGE_VIEW_TYPE_3DVkImageViewType::IVT_3DVkImageViewType.VK_IMAGE_VIEW_TYPE_1D_ARRAYVkImageViewType::IVT_1D_ARRAYVkImageViewType.VK_IMAGE_VIEW_TYPE_2D_ARRAYVkImageViewType::IVT_2D_ARRAYVkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLYVkShaderFloatControlsIndependence::F32_BIT_ONLY -
Most functions must need to obtain a corresponding function pointer before use. We provide
InstanceLevelFunctionsobject and/orDeviceLevelFunctionsobject to do this on every module, each one corresponding to the module's functions set. TheInstanceLevelFunctionsonly can be loaded fromVkInstance, but theDeviceLevelFunctionsalso can be loaded fromVkDevice. -
All structures have
Debugtrait andDefaulttrait. You don't need to set thesTypefield manually if it contains.
Example
use CStr;
use ptr;
use *;
Supported API
- Vulkan 1.2 core API
- VK_KHR_external_fence_fd(Revision: 1)
- VK_KHR_external_fence_win32(Revision: 1)
- VK_KHR_surface(Revision: 25)
- VK_KHR_swapchain(Revision: 70)
- VK_KHR_win32_surface(Revision: 6)
- VK_KHR_pipeline_library(Revision: 1)
- VK_KHR_deferred_host_operations(Revision: 4)
- VK_KHR_acceleration_structure(Revision: 13)
- VK_KHR_ray_tracing_pipeline(Revision: 1)
- VK_KHR_ray_query(Revision: 1)
- VK_EXT_debug_utils(Revision: 2)
- VK_EXT_index_type_uint8(Revision: 1)
- VK_EXT_memory_budget(Revision: 1)