{-# language CPP #-} -- | = Name -- -- VK_KHR_ray_tracing_position_fetch - device extension -- -- == VK_KHR_ray_tracing_position_fetch -- -- [__Name String__] -- @VK_KHR_ray_tracing_position_fetch@ -- -- [__Extension Type__] -- Device extension -- -- [__Registered Extension Number__] -- 482 -- -- [__Revision__] -- 1 -- -- [__Ratification Status__] -- Ratified -- -- [__Extension and Version Dependencies__] -- -- -- [__Contact__] -- -- - Eric Werness -- -- [__Extension Proposal__] -- -- -- == Other Extension Metadata -- -- [__Last Modified Date__] -- 2023-02-17 -- -- [__Interactions and External Dependencies__] -- -- - This extension requires -- -- -- - This extension provides API support for -- -- -- - Interacts with @VK_KHR_ray_tracing_pipeline@ -- -- - Interacts with @VK_KHR_ray_query@ -- -- [__Contributors__] -- -- - Eric Werness, NVIDIA -- -- - Stu Smith, AMD -- -- - Yuriy O’Donnell, Epic Games -- -- - Ralph Potter, Samsung -- -- - Joshua Barczak, Intel -- -- - Lionel Landwerlin, Intel -- -- - Andrew Garrard, Imagination Technologies -- -- - Alex Bourd, Qualcomm -- -- - Yunpeng Zhu, Huawei Technologies -- -- - Marius Bjorge, Arm -- -- - Daniel Koch, NVIDIA -- -- == Description -- -- @VK_KHR_ray_tracing_position_fetch@ adds the ability to fetch the vertex -- positions in the shader from a hit triangle as stored in the -- acceleration structure. -- -- An application adds -- 'Vulkan.Extensions.VK_KHR_acceleration_structure.BUILD_ACCELERATION_STRUCTURE_ALLOW_DATA_ACCESS_KHR' -- to the acceleration structure at build time. Then, if the hit is a -- triangle geometry, the shader (any-hit or closest hit for ray pipelines -- or using ray query) /can/ fetch the three, three-component vertex -- positions in object space, of the triangle which was hit. -- -- == New Structures -- -- - Extending -- 'Vulkan.Core11.Promoted_From_VK_KHR_get_physical_device_properties2.PhysicalDeviceFeatures2', -- 'Vulkan.Core10.Device.DeviceCreateInfo': -- -- - 'PhysicalDeviceRayTracingPositionFetchFeaturesKHR' -- -- == New Enum Constants -- -- - 'KHR_RAY_TRACING_POSITION_FETCH_EXTENSION_NAME' -- -- - 'KHR_RAY_TRACING_POSITION_FETCH_SPEC_VERSION' -- -- - Extending -- 'Vulkan.Extensions.VK_KHR_acceleration_structure.BuildAccelerationStructureFlagBitsKHR': -- -- - 'Vulkan.Extensions.VK_KHR_acceleration_structure.BUILD_ACCELERATION_STRUCTURE_ALLOW_DATA_ACCESS_KHR' -- -- - Extending 'Vulkan.Core10.Enums.StructureType.StructureType': -- -- - 'Vulkan.Core10.Enums.StructureType.STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR' -- -- == New Built-In Variables -- -- - -- -- == New SPIR-V Capabilities -- -- - -- -- == Issues -- -- None Yet! -- -- == Version History -- -- - Revision 1, 2023-02-17 (Eric Werness) -- -- - internal revisions -- -- == See Also -- -- 'PhysicalDeviceRayTracingPositionFetchFeaturesKHR' -- -- == Document Notes -- -- For more information, see the -- -- -- This page is a generated document. Fixes and changes should be made to -- the generator scripts, not directly. module Vulkan.Extensions.VK_KHR_ray_tracing_position_fetch (PhysicalDeviceRayTracingPositionFetchFeaturesKHR) where import Vulkan.CStruct (FromCStruct) import Vulkan.CStruct (ToCStruct) import Data.Kind (Type) data PhysicalDeviceRayTracingPositionFetchFeaturesKHR instance ToCStruct PhysicalDeviceRayTracingPositionFetchFeaturesKHR instance Show PhysicalDeviceRayTracingPositionFetchFeaturesKHR instance FromCStruct PhysicalDeviceRayTracingPositionFetchFeaturesKHR