The Vulkan Guide is designed to help developers get up and going with the world of Vulkan. It is aimed to be a light read that leads to many other useful links depending on what a developer is looking for. All information is intended to help better fill the gaps about the many nuances of Vulkan.
Note
|
The Vulkan Guide can be built as a single page using |
1.1. What is Vulkan?
1.3. Vulkan Spec
1.4. Platforms
1.5. Checking for Support
1.6. Versions
1.8. What is SPIR-V?
1.10. Vulkan CTS
1.11. Vulkan Development Tools
2.1. Loader
2.2. Layers
2.3.1. Enabling Vulkan Extensions
2.3.2. Enabling Vulkan Features
2.3.3. Using SPIR-V Extension
2.3.4. Formats
2.5. WSI
2.6. pNext and sType
2.8.1. Sparse Resources
2.8.2. Protected Memory
2.8.3. Buffer Device Address
-
VK_KHR_buffer_device_address
,VK_EXT_buffer_device_address
2.10. Threading
2.11. Depth
-
VK_EXT_depth_range_unrestricted
,VK_EXT_depth_clip_enable
,VK_EXT_depth_clip_control
2.12. Primitive Topology
2.13. Mapping Data to Shaders
2.13.1. Vertex Input Data Processing
2.13.2. Descriptor Arrays
2.13.3. Descriptor Dynamic Offset
2.13.4. Location and Component Interface
2.13.5. Push Constants
2.13.6. Ways to Provide SPIR-V
2.14. Robustness
-
VK_EXT_image_robustness
,VK_KHR_robustness2
,VK_EXT_pipeline_robustness
2.15. Dynamic State
-
VK_EXT_extended_dynamic_state
,VK_EXT_extended_dynamic_state2
,VK_EXT_extended_dynamic_state3
,VK_EXT_vertex_input_dynamic_state
,VK_EXT_color_write_enable
,VK_EXT_attachment_feedback_loop_dynamic_state
2.15.1. Dynamic State Map
2.16. Subgroups
-
VK_EXT_subgroup_size_control
,VK_KHR_shader_subgroup_extended_types
,VK_EXT_shader_subgroup_ballot
,VK_EXT_shader_subgroup_vote
2.17. Shader Memory Layout
-
VK_KHR_uniform_buffer_standard_layout
,VK_KHR_relaxed_block_layout
,VK_EXT_scalar_block_layout
2.18. Atomics
-
VK_KHR_shader_atomic_int64
,VK_EXT_shader_image_atomic_int64
,VK_EXT_shader_atomic_float
,VK_EXT_shader_atomic_float2
2.19. Image Copies
2.20. Common Pitfalls
2.21. Using HLSL shaders
Note
|
These are supplemental references for the various Vulkan Extensions. Please consult the Vulkan Spec for further details on any extension |
3.1. Cleanup Extensions
-
VK_EXT_4444_formats
,VK_KHR_bind_memory2
,VK_KHR_create_renderpass2
,VK_KHR_dedicated_allocation
,VK_KHR_driver_properties
,VK_KHR_get_memory_requirements2
,VK_KHR_get_physical_device_properties2
,VK_EXT_host_query_reset
,VK_KHR_maintenance1
,VK_KHR_maintenance2
,VK_KHR_maintenance3
,VK_KHR_maintenance4
,VK_KHR_maintenance5
,VK_KHR_maintenance6
,VK_KHR_separate_depth_stencil_layouts
,VK_KHR_depth_stencil_resolve
,VK_EXT_separate_stencil_usage
,VK_EXT_sampler_filter_minmax
,VK_KHR_sampler_mirror_clamp_to_edge
,VK_EXT_ycbcr_2plane_444_formats
,VK_KHR_format_feature_flags2
,VK_EXT_rgba10x6_formats
,VK_KHR_copy_commands2
3.2. Device Groups
-
VK_KHR_device_group
,VK_KHR_device_group_creation
-
VK_KHR_external_fence
,VK_KHR_external_memory
,VK_KHR_external_semaphore
3.4. Ray Tracing
-
VK_KHR_acceleration_structure
,VK_KHR_ray_tracing_pipeline
,VK_KHR_ray_query
,VK_KHR_pipeline_library
,VK_KHR_deferred_host_operations
3.5. Shader Features
-
VK_KHR_8bit_storage
,VK_KHR_16bit_storage
,VK_KHR_shader_clock
,VK_EXT_shader_demote_to_helper_invocation
,VK_KHR_shader_draw_parameters
,VK_KHR_shader_float16_int8
,VK_KHR_shader_float_controls
,VK_KHR_shader_non_semantic_info
,VK_EXT_shader_stencil_export
,VK_KHR_shader_terminate_invocation
,VK_EXT_shader_viewport_index_layer
,VK_KHR_spirv_1_4
,VK_KHR_storage_buffer_storage_class
,VK_KHR_variable_pointers
,VK_KHR_vulkan_memory_model
,VK_KHR_workgroup_memory_explicit_layout
,VK_KHR_zero_initialize_workgroup_memory
-
VK_EXT_custom_border_color
,VK_EXT_border_color_swizzle
,VK_EXT_depth_clip_enable
,VK_EXT_depth_clip_control
,VK_EXT_provoking_vertex
,VK_EXT_transform_feedback
,VK_EXT_image_view_min_lod