org.lwjgl.vulkan.KHRRayQuery Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of lwjgl-vulkan Show documentation
Show all versions of lwjgl-vulkan Show documentation
A new generation graphics and compute API that provides high-efficiency, cross-platform access to modern GPUs used in a wide variety of devices from PCs and consoles to mobile phones and embedded platforms.
/*
* Copyright LWJGL. All rights reserved.
* License terms: https://www.lwjgl.org/license
* MACHINE GENERATED FILE, DO NOT EDIT
*/
package org.lwjgl.vulkan;
/**
* Rasterization has been the dominant method to produce interactive graphics, but increasing performance of graphics hardware has made ray tracing a viable option for interactive rendering. Being able to integrate ray tracing with traditional rasterization makes it easier for applications to incrementally add ray traced effects to existing applications or to do hybrid approaches with rasterization for primary visibility and ray tracing for secondary queries.
*
* Ray queries are available to all shader types, including graphics, compute and ray tracing pipelines. Ray queries are not able to launch additional shaders, instead returning traversal results to the calling shader.
*
* This extension adds support for the following SPIR-V extension in Vulkan:
*
*
* - {@code SPV_KHR_ray_query}
*
*
* Sample Code
*
* Example of ray query in a GLSL shader
*
*
* rayQueryEXT rq;
*
* rayQueryInitializeEXT(rq, accStruct, gl_RayFlagsNoneEXT, 0, origin, tMin, direction, tMax);
*
* while(rayQueryProceedEXT(rq)) {
* if (rayQueryGetIntersectionTypeEXT(rq, false) == gl_RayQueryCandidateIntersectionTriangleEXT) {
* //...
* rayQueryConfirmIntersectionEXT(rq);
* }
* }
*
* if (rayQueryGetIntersectionTypeEXT(rq, true) == gl_RayQueryCommittedIntersectionNoneEXT) {
* //...
* }
*
* VK_KHR_ray_query
*
*
* - Name String
* - {@code VK_KHR_ray_query}
* - Extension Type
* - Device extension
* - Registered Extension Number
* - 349
* - Revision
* - 1
* - Extension and Version Dependencies
*
* - Requires Vulkan 1.1
* - Requires {@link KHRSpirv14 VK_KHR_spirv_1_4}
* - Requires {@link KHRAccelerationStructure VK_KHR_acceleration_structure}
*
* - Contact
*
* - Daniel Koch dgkoch
*
*
*
* Other Extension Metadata
*
*
* - Last Modified Date
* - 2020-11-12
* - Interactions and External Dependencies
*
* - This extension requires {@code SPV_KHR_ray_query}
* - This extension provides API support for {@code GLSL_EXT_ray_query}
*
* - Contributors
*
* - Matthäus Chajdas, AMD
* - Greg Grebe, AMD
* - Nicolai Hähnle, AMD
* - Tobias Hector, AMD
* - Dave Oldcorn, AMD
* - Skyler Saleh, AMD
* - Mathieu Robart, Arm
* - Marius Bjorge, Arm
* - Tom Olson, Arm
* - Sebastian Tafuri, EA
* - Henrik Rydgard, Embark
* - Juan Cañada, Epic Games
* - Patrick Kelly, Epic Games
* - Yuriy O’Donnell, Epic Games
* - Michael Doggett, Facebook/Oculus
* - Andrew Garrard, Imagination
* - Don Scorgie, Imagination
* - Dae Kim, Imagination
* - Joshua Barczak, Intel
* - Slawek Grajewski, Intel
* - Jeff Bolz, NVIDIA
* - Pascal Gautron, NVIDIA
* - Daniel Koch, NVIDIA
* - Christoph Kubisch, NVIDIA
* - Ashwin Lele, NVIDIA
* - Robert Stepinski, NVIDIA
* - Martin Stich, NVIDIA
* - Nuno Subtil, NVIDIA
* - Eric Werness, NVIDIA
* - Jon Leech, Khronos
* - Jeroen van Schijndel, OTOY
* - Juul Joosten, OTOY
* - Alex Bourd, Qualcomm
* - Roman Larionov, Qualcomm
* - David McAllister, Qualcomm
* - Spencer Fricke, Samsung
* - Lewis Gordon, Samsung
* - Ralph Potter, Samsung
* - Jasper Bekkers, Traverse Research
* - Jesse Barker, Unity
* - Baldur Karlsson, Valve
*
*
*/
public final class KHRRayQuery {
/** The extension specification version. */
public static final int VK_KHR_RAY_QUERY_SPEC_VERSION = 1;
/** The extension name. */
public static final String VK_KHR_RAY_QUERY_EXTENSION_NAME = "VK_KHR_ray_query";
/** Extends {@code VkStructureType}. */
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR = 1000348013;
private KHRRayQuery() {}
}