mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-08 11:30:06 +00:00
ffccefddfd
* Fix traceRay/executeCallable to have id instead of constant. Update to final (non-provisional) SPIR-V capabilities (includes review feedback) - Change visibilty of findLinkerObjects. See merge request GLSL/glslang!78 * Add support for OpConvertUToAccelerationStructureKHR. GLSL : https://gitlab.khronos.org/GLSL/GLSL/-/merge_requests/60 SPV : https://gitlab.khronos.org/spirv/spirv-extensions/-/merge_requests/182 See merge request GLSL/glslang!77 * Add volatile qualifier to certain builtins for ray tracing. See merge request GLSL/glslang!81 * make gl_RayTmaxEXT volatile in intersection shader Vulkan Issue #2268 * Add testing for layouts on SBT vulkan/vulkan#2230 - no layout specified should be same as std430 - explicitly test std140, std430, scalar layouts See merge request GLSL/glslang!86 * Support for new opcodes OpIgnoreIntersectionKHR and OpTerminateRayKHR vulkan/vulkan#2374 Add support for ignoreIntersectionEXT and terminateRayEXT as block terminator statements. See merge request GLSL/glslang!87 * Fix code-generation issues with global ray query variables See merge request GLSL/glslang!88 * update dependencies for spirv-headers and tools And update mesh shader results * Fix indeterminate argument ordering Authored-by: David Neto <dneto@google.com> Co-authored-by: Ashwin Lele (NVIDIA Corporation) <alele@nvidia.com> Co-authored-by: Neslisah <Neslisah.Torosdagli@amd.com>
43 lines
2.7 KiB
Plaintext
43 lines
2.7 KiB
Plaintext
#version 460
|
|
#extension GL_EXT_ray_tracing : enable
|
|
hitAttributeEXT vec4 payload; // ERROR, hitattributeEXT unsupported in this stage
|
|
rayPayloadInEXT vec4 payloadIn; // ERROR, rayPayloadIn unsupported in this stage
|
|
layout(shaderRecordEXT) uniform ublock // ERROR, shaderRecordEXT unsupported on uniform blocks
|
|
{
|
|
float a;
|
|
};
|
|
layout(binding = 0, shaderRecordEXT) buffer bblock { // ERROR, binding unsupported on shaderRecordEXT blocks
|
|
float b;
|
|
};
|
|
layout(set = 0, shaderRecordEXT) buffer bblock2 { // ERROR, set unsupported on shaderRecordEXT blocks
|
|
float c;
|
|
};
|
|
layout(shaderRecordEXT) buffer bblock3 {
|
|
float d;
|
|
};
|
|
layout(shaderRecordEXT) buffer bblock4 { // ERROR, cannot have more than one shaderRecordEXTX block
|
|
float e;
|
|
};
|
|
void main()
|
|
{
|
|
accelerationStructureEXT a = accelerationStructureEXT(c);
|
|
int e0 = gl_PrimitiveID; // ERROR, unsupported builtin in stage
|
|
int e1 = gl_InstanceID; // ERROR, unsupported builtin in stage
|
|
int e3 = gl_InstanceCustomIndexEXT; // ERROR, unsupported builtin in stage
|
|
vec3 e4 = gl_WorldRayOriginEXT; // ERROR, unsupported builtin in stage
|
|
vec3 e5 = gl_WorldRayDirectionEXT; // ERROR, unsupported builtin in stage
|
|
vec3 e6 = gl_ObjectRayOriginEXT; // ERROR, unsupported builtin in stage
|
|
vec3 e7 = gl_ObjectRayDirectionEXT; // ERROR, unsupported builtin in stage
|
|
float e8 = gl_RayTminEXT; // ERROR, unsupported builtin in stage
|
|
float e9 = gl_RayTmaxEXT; // ERROR, unsupported builtin in stage
|
|
mat4x3 e10 = gl_ObjectToWorldEXT; // ERROR, unsupported builtin in stage
|
|
mat4x3 e11 = gl_WorldToObjectEXT; // ERROR, unsupported builtin in stage
|
|
float e12 = gl_HitTEXT; // ERROR, unsupported builtin in stage
|
|
float e13 = gl_HitKindEXT; // ERROR, unsupported builtin in stage
|
|
int e14 = gl_RayFlagsSkipAABBEXT; // ERROR, unsupported builtin in stage
|
|
reportIntersectionEXT(1.0, 1U); // ERROR, unsupported builtin in stage
|
|
ignoreIntersectionEXT; // ERROR, unsupported builtin in stage
|
|
terminateRayEXT; // ERROR, unsupported builtin in stage
|
|
d = 1.0f; // ERROR, can't modify shaderRecordEXT block
|
|
}
|