yum-mirror/slang
Making it easier to work with shaders
git clone https://git.yummers.dev/yum-mirror/slang
14764896c
master
1#version 460 2#extension GL_EXT_ray_tracing : require 3layout (row_major )uniform ; 4layout (row_major )buffer ; 5layout (std430 ,binding = 1 )readonly buffer StructuredBuffer_float_t_0 { 6float _data []; 7}gParamBlock_sbuf_0 ; 8float rcp_0 (float x_0 ) 9{ 10return 1.0 /x_0 ; 11} 12 13struct RayHitInfoPacked_0 14{ 15vec4 PackedHitInfoA_0 ; 16}; 17 18rayPayloadInEXT RayHitInfoPacked_0 _S1 ; 19 20struct BuiltInTriangleIntersectionAttributes_0 21{ 22vec2 barycentrics_0 ; 23}; 24 25hitAttributeEXT BuiltInTriangleIntersectionAttributes_0 _S2 ; 26 27void main () 28{ 29float HitT_0 = ((gl_RayTmaxEXT )); 30_S1 .PackedHitInfoA_0 [0 ]= HitT_0 ; 31 32float offsfloat_0 = gParamBlock_sbuf_0 ._data [0 ]; 33uint use_rcp_0 = 0U |uint (HitT_0 > 0.0 ); 34if (use_rcp_0 != 0U ) 35 { 36_S1 .PackedHitInfoA_0 [1 ]= rcp_0 (offsfloat_0 ); 37 } 38else 39 { 40if (use_rcp_0 > 0U && offsfloat_0 == 0.0 ) 41 { 42_S1 .PackedHitInfoA_0 [1 ]= (inversesqrt ((offsfloat_0 + 1.0 ))); 43 } 44else 45 { 46_S1 .PackedHitInfoA_0 [1 ]= (inversesqrt ((offsfloat_0 ))); 47 } 48 } 49return ; 50}