accelerationStructureEXT - issue #2152

This commit is contained in:
Neslisah Torosdagli 2020-03-26 18:51:18 -04:00
parent 054b5e35eb
commit 915f119199
11 changed files with 16 additions and 16 deletions

View File

@ -18,13 +18,13 @@ rayQuery.rgen
Name 12 "tMin" Name 12 "tMin"
Name 14 "tMax" Name 14 "tMax"
Name 18 "localRayQuery" Name 18 "localRayQuery"
Name 21 "accNV0" Name 21 "acc0"
Name 26 "block" Name 26 "block"
MemberName 26(block) 0 "dir" MemberName 26(block) 0 "dir"
MemberName 26(block) 1 "origin" MemberName 26(block) 1 "origin"
Name 28 "" Name 28 ""
Decorate 21(accNV0) DescriptorSet 0 Decorate 21(acc0) DescriptorSet 0
Decorate 21(accNV0) Binding 0 Decorate 21(acc0) Binding 0
MemberDecorate 26(block) 0 Offset 0 MemberDecorate 26(block) 0 Offset 0
MemberDecorate 26(block) 1 Offset 16 MemberDecorate 26(block) 1 Offset 16
Decorate 26(block) BufferBlock Decorate 26(block) BufferBlock
@ -41,7 +41,7 @@ rayQuery.rgen
17: TypePointer Function 16 17: TypePointer Function 16
19: TypeAccelerationStructureKHR 19: TypeAccelerationStructureKHR
20: TypePointer UniformConstant 19 20: TypePointer UniformConstant 19
21(accNV0): 20(ptr) Variable UniformConstant 21(acc0): 20(ptr) Variable UniformConstant
24: 6(int) Constant 255 24: 6(int) Constant 255
25: TypeVector 10(float) 3 25: TypeVector 10(float) 3
26(block): TypeStruct 25(fvec3) 25(fvec3) 26(block): TypeStruct 25(fvec3) 25(fvec3)
@ -61,7 +61,7 @@ rayQuery.rgen
Store 8(rayFlags) 9 Store 8(rayFlags) 9
Store 12(tMin) 13 Store 12(tMin) 13
Store 14(tMax) 15 Store 14(tMax) 15
22: 19 Load 21(accNV0) 22: 19 Load 21(acc0)
23: 6(int) Load 8(rayFlags) 23: 6(int) Load 8(rayFlags)
32: 31(ptr) AccessChain 28 30 32: 31(ptr) AccessChain 28 30
33: 25(fvec3) Load 32 33: 25(fvec3) Load 32

View File

@ -16,7 +16,7 @@ layout(std430, set = 0, binding = 0) buffer Log
uint y; uint y;
}; };
layout(binding = 1, set = 0) uniform accelerationStructureNV rtas; layout(binding = 1, set = 0) uniform accelerationStructureEXT rtas;
layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; }; layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; };
void doSomething() void doSomething()

View File

@ -16,7 +16,7 @@ layout(std430, set = 0, binding = 0) buffer Log
uint y; uint y;
}; };
layout(binding = 1, set = 0) uniform accelerationStructureNV rtas; layout(binding = 1, set = 0) uniform accelerationStructureEXT rtas;
layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; }; layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; };
void doSomething() void doSomething()

View File

@ -16,7 +16,7 @@ layout(std430, set = 0, binding = 0) buffer Log
uint y; uint y;
}; };
layout(binding = 1, set = 0) uniform accelerationStructureNV rtas; layout(binding = 1, set = 0) uniform accelerationStructureEXT rtas;
layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; }; layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; };
void doSomething() void doSomething()

View File

@ -16,7 +16,7 @@ layout(std430, set = 0, binding = 0) buffer Log
uint y; uint y;
}; };
layout(binding = 1, set = 0) uniform accelerationStructureNV rtas; layout(binding = 1, set = 0) uniform accelerationStructureEXT rtas;
layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; }; layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; };
void doSomething() void doSomething()

View File

@ -16,7 +16,7 @@ layout(std430, set = 0, binding = 0) buffer Log
uint y; uint y;
}; };
layout(binding = 1, set = 0) uniform accelerationStructureNV rtas; layout(binding = 1, set = 0) uniform accelerationStructureEXT rtas;
layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; }; layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; };
void doSomething() void doSomething()

View File

@ -10,7 +10,7 @@ struct Ray
float tmax; float tmax;
}; };
layout(binding = 0, set = 0) uniform accelerationStructureNV rtas; layout(binding = 0, set = 0) uniform accelerationStructureEXT rtas;
layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; }; layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; };
layout(shaderRecordNV) buffer block layout(shaderRecordNV) buffer block
{ {

View File

@ -10,7 +10,7 @@ struct Ray
float tmax; float tmax;
}; };
layout(binding = 0, set = 0) uniform accelerationStructureNV rtas; layout(binding = 0, set = 0) uniform accelerationStructureEXT rtas;
layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; }; layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; };
uint launchIndex() uint launchIndex()

View File

@ -10,7 +10,7 @@ struct Ray
float tmax; float tmax;
}; };
layout(binding = 0, set = 0) uniform accelerationStructureNV rtas; layout(binding = 0, set = 0) uniform accelerationStructureEXT rtas;
layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; }; layout(std430, set = 0, binding = 2) buffer Rays { Ray rays[]; };
uint launchIndex() uint launchIndex()

View File

@ -1,7 +1,7 @@
#version 460 #version 460
#extension GL_NV_ray_tracing : enable #extension GL_NV_ray_tracing : enable
#extension GL_EXT_ray_query : enable #extension GL_EXT_ray_query : enable
layout(binding = 0, set = 0) uniform accelerationStructureNV accNV0; layout(binding = 0, set = 0) uniform accelerationStructureEXT acc0;
layout(shaderRecordNV) buffer block layout(shaderRecordNV) buffer block
{ {
@ -15,7 +15,7 @@ void main()
uint rayFlags = gl_RayFlagsOpaqueEXT | gl_RayFlagsSkipClosestHitShaderEXT; uint rayFlags = gl_RayFlagsOpaqueEXT | gl_RayFlagsSkipClosestHitShaderEXT;
float tMin = 0.f; float tMin = 0.f;
float tMax = 1000.f; float tMax = 1000.f;
rayQueryInitializeEXT(localRayQuery, accNV0, rayFlags, 0xFF , origin, tMin, dir, tMax); rayQueryInitializeEXT(localRayQuery, acc0, rayFlags, 0xFF , origin, tMin, dir, tMax);
if (!rayQueryProceedEXT(localRayQuery)) if (!rayQueryProceedEXT(localRayQuery))
{ {
rayQueryTerminateEXT(localRayQuery); rayQueryTerminateEXT(localRayQuery);

View File

@ -1030,7 +1030,7 @@ int TScanContext::tokenizeIdentifier()
case CALLDATAINEXT: case CALLDATAINEXT:
case ACCSTRUCTEXT: case ACCSTRUCTEXT:
if (parseContext.symbolTable.atBuiltInLevel() || if (parseContext.symbolTable.atBuiltInLevel() ||
parseContext.extensionTurnedOn(E_GL_EXT_ray_tracing)) parseContext.extensionTurnedOn(E_GL_EXT_ray_query))
return keyword; return keyword;
return identifierOrType(); return identifierOrType();
case RAYQUERYEXT: case RAYQUERYEXT: