Browse Source

Vk: add missing enums and/or docs for VK_KHR_acceleration_structure.

pull/494/head
Vladimír Vondruš 5 years ago
parent
commit
b5a4fc03b0
  1. 19
      src/Magnum/Vk/BufferCreateInfo.h
  2. 12
      src/Magnum/Vk/Pipeline.h

19
src/Magnum/Vk/BufferCreateInfo.h

@ -77,7 +77,24 @@ enum class BufferUsage: UnsignedInt {
IndirectBuffer = VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT,
/** @todo VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT, 1.2 */
/** @todo RT-related usages */
/**
* Suitable for a ray tracing shader binding table
* @requires_vk_feature @ref DeviceFeature::RayTracingPipeline
*/
ShaderBindingTable = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR,
/**
* Suitable as a read-only input to an acceleration structure build
* @requires_vk_feature @ref DeviceFeature::AccelerationStructure
*/
AccelerationStructureBuildInputReadOnly = VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR,
/**
* Suitable for an acceleration structure storage space
* @requires_vk_feature @ref DeviceFeature::AccelerationStructure
*/
AccelerationStructureStorage = VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR
};
/**

12
src/Magnum/Vk/Pipeline.h

@ -132,10 +132,16 @@ enum class PipelineStage: UnsignedInt {
/** Execution of host read/writes of device memory */
Host = VK_PIPELINE_STAGE_HOST_BIT,
/** Execution of commands related to an acceleration structure */
/**
* Execution of commands related to an acceleration structure
* @requires_vk_feature @ref DeviceFeature::AccelerationStructure
*/
AccelerationStructureBuild = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
/** Execution of ray tracing shaders */
/**
* Execution of ray tracing shaders
* @requires_vk_feature @ref DeviceFeature::RayTracingPipeline
*/
RayTracingShader = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
/**
@ -350,6 +356,7 @@ enum class Access: UnsignedInt {
* @ref PipelineStage::TessellationEvaluationShader "TessellationEvaluationShader",
* @ref PipelineStage::ComputeShader "ComputeShader" and
* @ref PipelineStage::RayTracingShader "RayTracingShader".
* @requires_vk_feature @ref DeviceFeature::AccelerationStructure
*/
AccelerationStructureRead = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
@ -358,6 +365,7 @@ enum class Access: UnsignedInt {
* part of a build or copy command.
*
* Valid for @ref PipelineStage::AccelerationStructureBuild.
* @requires_vk_feature @ref DeviceFeature::AccelerationStructure
*/
AccelerationStructureWrite = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR
};

Loading…
Cancel
Save