summaryrefslogtreecommitdiff
path: root/appendices/VK_KHR_ray_tracing_position_fetch.adoc
blob: ea5ad60e5b8db1fc0314918ac24052cbf38848a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
// Copyright 2021-2024 The Khronos Group Inc.
//
// SPDX-License-Identifier: CC-BY-4.0

include::{generated}/meta/{refprefix}VK_KHR_ray_tracing_position_fetch.adoc[]

=== Other Extension Metadata

*Last Modified Date*::
    2023-02-17
*Interactions and External Dependencies*::
  - This extension provides API support for
    {GLSLregistry}/ext/GLSL_EXT_ray_tracing_position_fetch.txt[`GLSL_EXT_ray_tracing_position_fetch`]
  - Interacts with `apiext:VK_KHR_ray_tracing_pipeline`
  - Interacts with `apiext: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
ename:VK_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.

include::{generated}/interfaces/VK_KHR_ray_tracing_position_fetch.adoc[]

=== New Built-In Variables

  * <<interfaces-builtin-variables-hittrianglevertexpositions,code:HitTriangleVertexPositionsKHR>>

=== New SPIR-V Capabilities

  * <<spirvenv-capabilities-table-RayTracingPositionFetchKHR,RayTracingPositionFetchKHR>>
  * <<spirvenv-capabilities-table-RayQueryPositionFetchKHR,RayQueryPositionFetchKHR>>

=== Issues

None Yet!

=== Version History

  * Revision 1, 2023-02-17 (Eric Werness)
  ** internal revisions