yum-mirror/slang
Making it easier to work with shaders
git clone https://git.yummers.dev/yum-mirror/slang
f02b08490
master
1// hit-object-make-nop.slang 2 3//TEST:SIMPLE: -target dxil -entry rayGenerationMain -stage raygeneration -profile sm_6_5 -DNV_SHADER_EXTN_SLOT=u0 4//TEST:SIMPLE(filecheck=SPIRV): -target spirv -entry rayGenerationMain -stage raygeneration -profile sm_6_5 -line-directive-mode none 5//TEST:SIMPLE(filecheck=SPIRV): -target spirv -entry rayGenerationMain -stage raygeneration -emit-spirv-directly 6 7//DISABLE_TEST(compute):COMPARE_COMPUTE:-d3d12 -output-using-type -profile sm_6_5 -render-feature ray-query 8//DISABLE_TEST(compute):COMPARE_COMPUTE:-vk -output-using-type -render-feature ray-query 9 10//TEST_INPUT:set outputBuffer = out ubuffer(data=[0, 0, 0, 0], stride=4) 11RWStructuredBuffer<uint> outputBuffer; 12 13void rayGenerationMain() 14{ 15 int2 launchID = int2(DispatchRaysIndex().xy); 16 int2 launchSize = int2(DispatchRaysDimensions().xy); 17 18 int idx = launchID.x; 19 20 // SPIRV: OpHitObjectRecordEmptyNV 21 HitObject hit = HitObject::MakeNop(); 22 23 outputBuffer[idx] = uint(hit.IsNop()); 24}