anv: implement VK_KHR_ray_tracing_position_fetch
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>
Thu, 1 Dec 2022 21:30:59 +0000 (23:30 +0200)
committerMarge Bot <emma+marge@anholt.net>
Thu, 4 May 2023 11:25:41 +0000 (11:25 +0000)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <f{merge_request.web_url}>

src/intel/vulkan/anv_device.c
src/intel/vulkan/anv_pipeline.c

index 1c45d7f..f65eca6 100644 (file)
@@ -253,6 +253,7 @@ get_device_extensions(const struct anv_physical_device *device,
       .KHR_ray_query                         = rt_enabled,
       .KHR_ray_tracing_maintenance1          = rt_enabled,
       .KHR_ray_tracing_pipeline              = rt_enabled,
+      .KHR_ray_tracing_position_fetch        = rt_enabled,
       .KHR_relaxed_block_layout              = true,
       .KHR_sampler_mirror_clamp_to_edge      = true,
       .KHR_sampler_ycbcr_conversion          = true,
@@ -796,6 +797,9 @@ get_features(const struct anv_physical_device *pdevice,
 
       /* VK_EXT_vertex_input_dynamic_state */
       .vertexInputDynamicState = true,
+
+      /* VK_KHR_ray_tracing_position_fetch */
+      .rayTracingPositionFetch = rt_enabled,
    };
 
    /* The new DOOM and Wolfenstein games require depthBounds without
index bea64f5..57c4651 100644 (file)
@@ -188,6 +188,7 @@ anv_shader_stage_to_nir(struct anv_device *device,
          .ray_cull_mask = rt_enabled,
          .ray_query = rt_enabled,
          .ray_tracing = rt_enabled,
+         .ray_tracing_position_fetch = rt_enabled,
          .shader_clock = true,
          .shader_viewport_index_layer = true,
          .stencil_export = true,