yum-mirror/slang

Making it easier to work with shaders

git clone https://git.yummers.dev/yum-mirror/slang

Harsh Aggarwal (NVIDIA)Fix#8085: Batch-9: Enable cuda tests (#8269)bf607e2f3

master
864 B36 linesraw
1//TEST(compute):COMPARE_COMPUTE: -shaderobj
2//TEST(compute):COMPARE_COMPUTE: -shaderobj -cuda
3
4struct Param
5{
6    Texture2D tex;
7    SamplerState samplerState;
8    float base;
9};
10
11//TEST_INPUT:Texture2D(size=4, content = one):name=diffuseMap
12Texture2D diffuseMap;
13//TEST_INPUT: Sampler:name=samplerState
14SamplerState samplerState;
15//TEST_INPUT: ubuffer(data=[0 0 0 0], stride=4):out,name=outputBuffer
16RWStructuredBuffer<float> outputBuffer;
17
18float4 run(Param p)
19{
20    return p.tex.SampleLevel(p.samplerState, float2(0.0), 0) + p.base;
21}
22
23[numthreads(1, 1, 1)]
24void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
25{
26    Param p;
27    p.tex = diffuseMap;
28    p.samplerState = samplerState;
29    p.base = -0.5;
30	float4 outVal = run(p);
31	
32    outputBuffer[0] = outVal.x;
33	outputBuffer[1] = outVal.y;
34	outputBuffer[2] = outVal.z;
35	outputBuffer[3] = outVal.w;
36}