diff options
Diffstat (limited to 'tests/pipeline')
| -rw-r--r-- | tests/pipeline/ray-tracing/trace-ray-inline.slang.glsl | 68 |
1 files changed, 27 insertions, 41 deletions
diff --git a/tests/pipeline/ray-tracing/trace-ray-inline.slang.glsl b/tests/pipeline/ray-tracing/trace-ray-inline.slang.glsl index fb94867a8..597236122 100644 --- a/tests/pipeline/ray-tracing/trace-ray-inline.slang.glsl +++ b/tests/pipeline/ray-tracing/trace-ray-inline.slang.glsl @@ -85,20 +85,23 @@ void myMiss_0(inout MyRayPayload_0 payload_4) layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in; void main() { - MyRayPayload_0 payload_5; MyProceduralHitAttrs_0 committedProceduralAttrs_0; MyProceduralHitAttrs_0 committedProceduralAttrs_1; - MyRayPayload_0 payload_6; MyProceduralHitAttrs_0 committedProceduralAttrs_2; - MyRayPayload_0 payload_7; MyProceduralHitAttrs_0 committedProceduralAttrs_3; + rayQueryEXT query_0; + + MyRayPayload_0 payload_5; MyRayPayload_0 _S2 = { -1 }; + payload_5 = _S2; + RayDesc_0 ray_1 = { C_0._data.origin_0, C_0._data.tMin_0, C_0._data.direction_0, C_0._data.tMax_0 }; RayQuery_TraceRayInline_0(query_0, myAccelerationStructure_0, C_0._data.rayFlags_0, C_0._data.instanceMask_0, ray_1); + MyProceduralHitAttrs_0 _S3; - payload_5 = _S2; committedProceduralAttrs_0 = _S3; + for(;;) { bool _S4 = rayQueryProceedEXT(query_0); @@ -111,23 +114,21 @@ void main() { case uint(1): { - MyProceduralHitAttrs_0 candidateProceduralAttrs_0 = { 0 }; - float _S6; - _S6 = 0.00000000000000000000; - MyProceduralHitAttrs_0 _S7; - _S7 = candidateProceduralAttrs_0; - bool _S8 = myProceduralIntersection_0(_S6, _S7); - float tHit_1 = _S6; - MyProceduralHitAttrs_0 candidateProceduralAttrs_1 = _S7; - if(_S8) + MyProceduralHitAttrs_0 candidateProceduralAttrs_0; + MyProceduralHitAttrs_0 _S6 = { 0 }; + candidateProceduralAttrs_0 = _S6; + + float tHit_1; + tHit_1 = 0.00000000000000000000; + + bool _S7 = myProceduralIntersection_0(tHit_1, candidateProceduralAttrs_0); + if(_S7) { - MyRayPayload_0 _S9; - _S9 = payload_5; - bool _S10 = myProceduralAnyHit_0(_S9); - MyRayPayload_0 _S11 = _S9; - if(_S10) + bool _S8 = myProceduralAnyHit_0(payload_5); + if(_S8) { rayQueryGenerateIntersectionEXT(query_0, tHit_1); + MyProceduralHitAttrs_0 _S9 = candidateProceduralAttrs_0; if(bool(C_0._data.shouldStopAtFirstHit_0)) { rayQueryTerminateEXT(query_0); @@ -135,31 +136,25 @@ void main() else { } - committedProceduralAttrs_1 = candidateProceduralAttrs_1; + committedProceduralAttrs_1 = _S9; } else { committedProceduralAttrs_1 = committedProceduralAttrs_0; } - payload_6 = _S11; committedProceduralAttrs_2 = committedProceduralAttrs_1; } else { - payload_6 = payload_5; committedProceduralAttrs_2 = committedProceduralAttrs_0; } - payload_7 = payload_6; committedProceduralAttrs_3 = committedProceduralAttrs_2; break; } case uint(0): { - MyRayPayload_0 _S12; - _S12 = payload_5; - bool _S13 = myTriangleAnyHit_0(_S12); - MyRayPayload_0 _S14 = _S12; - if(_S13) + bool _S10 = myTriangleAnyHit_0(payload_5); + if(_S10) { rayQueryConfirmIntersectionEXT(query_0); if(bool(C_0._data.shouldStopAtFirstHit_0)) @@ -173,42 +168,33 @@ void main() else { } - payload_7 = _S14; committedProceduralAttrs_3 = committedProceduralAttrs_0; break; } default: { - payload_7 = payload_5; committedProceduralAttrs_3 = committedProceduralAttrs_0; break; } } - payload_5 = payload_7; committedProceduralAttrs_0 = committedProceduralAttrs_3; } - uint _S15 = (rayQueryGetIntersectionTypeEXT((query_0), true)); - switch(_S15) + uint _S11 = (rayQueryGetIntersectionTypeEXT((query_0), true)); + switch(_S11) { case uint(1): { - MyRayPayload_0 _S16; - _S16 = payload_5; - myTriangleClosestHit_0(_S16); + myTriangleClosestHit_0(payload_5); break; } case uint(2): { - MyRayPayload_0 _S17; - _S17 = payload_5; - myProceduralClosestHit_0(_S17, committedProceduralAttrs_0); + myProceduralClosestHit_0(payload_5, committedProceduralAttrs_0); break; } case uint(0): { - MyRayPayload_0 _S18; - _S18 = payload_5; - myMiss_0(_S18); + myMiss_0(payload_5); break; } default: |
