mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
317 lines
3.6 KiB
Plaintext
317 lines
3.6 KiB
Plaintext
[pixel shader fail]
|
|
struct apple
|
|
{
|
|
float3 aa;
|
|
float bb;
|
|
};
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
float4 f = {1, 2, 3, 4};
|
|
struct apple a;
|
|
|
|
a = f;
|
|
return a.aa.xyzx;
|
|
}
|
|
|
|
|
|
[pixel shader fail]
|
|
struct apple
|
|
{
|
|
float aa;
|
|
float bb;
|
|
};
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
struct apple a = {1, 2};
|
|
float2 f;
|
|
|
|
f = a;
|
|
return f.xyxy;
|
|
}
|
|
|
|
|
|
[pixel shader fail(sm>=6)]
|
|
struct apple
|
|
{
|
|
float3 aa;
|
|
float bb;
|
|
};
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
float f[4] = {1, 2, 3, 4};
|
|
struct apple a;
|
|
|
|
a = f;
|
|
return a.aa.xyzx;
|
|
}
|
|
|
|
|
|
[test]
|
|
draw quad
|
|
probe (0, 0) rgba (1.0, 2.0, 3.0, 1.0)
|
|
|
|
|
|
[pixel shader fail]
|
|
struct apple
|
|
{
|
|
float3 aa;
|
|
int bb;
|
|
};
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
float f[4] = {1, 2, 3, 4};
|
|
struct apple a;
|
|
|
|
a = f;
|
|
return a.aa.xyzx;
|
|
}
|
|
|
|
|
|
[pixel shader fail(sm>=6)]
|
|
struct apple
|
|
{
|
|
float3 aa;
|
|
float bb;
|
|
};
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
struct apple a = {5, 6, 7, 8};
|
|
float f[4];
|
|
|
|
f = a;
|
|
return float4(f);
|
|
}
|
|
|
|
|
|
[test]
|
|
draw quad
|
|
probe (0, 0) rgba (5.0, 6.0, 7.0, 8.0)
|
|
|
|
|
|
[pixel shader fail(sm>=6)]
|
|
Texture2D tex;
|
|
|
|
struct apple
|
|
{
|
|
int2 aa;
|
|
Texture2D bb;
|
|
float cc;
|
|
};
|
|
|
|
struct banana
|
|
{
|
|
int aa[2];
|
|
Texture2D bb;
|
|
float cc;
|
|
};
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
struct apple a = {1, 2, tex, 4};
|
|
struct banana b;
|
|
|
|
b = a;
|
|
return b.cc;
|
|
}
|
|
|
|
[test]
|
|
draw quad
|
|
probe (0, 0) rgba (4.0, 4.0, 4.0, 4.0)
|
|
|
|
|
|
[pixel shader fail(sm>=6)]
|
|
Texture2D tex;
|
|
|
|
struct apple
|
|
{
|
|
int2 aa;
|
|
Texture2D bb;
|
|
float cc;
|
|
};
|
|
|
|
struct banana
|
|
{
|
|
int aa[2];
|
|
Texture2D bb;
|
|
float cc;
|
|
};
|
|
|
|
float4 fun(struct banana b)
|
|
{
|
|
return b.cc;
|
|
}
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
struct apple a = {1, 2, tex, 5};
|
|
|
|
return fun(a);
|
|
}
|
|
|
|
[test]
|
|
draw quad
|
|
probe (0, 0) rgba (5.0, 5.0, 5.0, 5.0)
|
|
|
|
|
|
[pixel shader fail(sm>=6)]
|
|
struct apple
|
|
{
|
|
float3 xx[2];
|
|
int4 yy;
|
|
};
|
|
|
|
struct banana
|
|
{
|
|
struct apple apples[2];
|
|
int3 bb[2];
|
|
int4 cc[3];
|
|
};
|
|
|
|
struct cherry
|
|
{
|
|
int2 xx;
|
|
int yy[3];
|
|
};
|
|
|
|
struct donut
|
|
{
|
|
float4 aa;
|
|
float2 bb;
|
|
int cc[4];
|
|
float dd[6];
|
|
struct cherry cherries[4];
|
|
int2 ee;
|
|
};
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
struct banana b = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
|
|
21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37};
|
|
struct donut d;
|
|
|
|
d = b;
|
|
return d.aa + d.cherries[3].yy[2] + d.ee.xyxx;
|
|
}
|
|
|
|
[test]
|
|
draw quad
|
|
probe (0, 0) rgba (71.0, 73.0, 73.0, 74.0)
|
|
|
|
|
|
[pixel shader fail]
|
|
struct apple
|
|
{
|
|
float3 aa;
|
|
int bb;
|
|
};
|
|
|
|
struct banana
|
|
{
|
|
float3 aa;
|
|
float bb;
|
|
};
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
struct apple a = {1, 2, 3, 4};
|
|
struct banana b;
|
|
|
|
b = a;
|
|
return b.bb;
|
|
}
|
|
|
|
|
|
[pixel shader fail]
|
|
float main() : SV_TARGET
|
|
{
|
|
float arr[3] = {1, 2, 3};
|
|
float v;
|
|
|
|
v = arr;
|
|
return 0;
|
|
}
|
|
|
|
|
|
[pixel shader fail]
|
|
float main() : SV_TARGET
|
|
{
|
|
float2 arr[3] = {1, 2, 3, 4, 5, 6};
|
|
float2 vec;
|
|
|
|
vec = arr;
|
|
return 0;
|
|
}
|
|
|
|
|
|
[pixel shader fail]
|
|
float4 main() : SV_TARGET
|
|
{
|
|
int arr1[4] = {1, 2, 3, 4};
|
|
float arr2[4];
|
|
|
|
arr2 = arr1;
|
|
return 0;
|
|
}
|
|
|
|
|
|
[pixel shader fail]
|
|
float4 main() : SV_TARGET
|
|
{
|
|
float2x2 mat = {1, 2, 3, 4};
|
|
float3 vec;
|
|
|
|
vec = mat;
|
|
return 0;
|
|
}
|
|
|
|
|
|
[pixel shader fail]
|
|
float4 main() : SV_TARGET
|
|
{
|
|
float4 f = {1, 2, 3, 4};
|
|
float arr[4];
|
|
|
|
arr = f;
|
|
return 0;
|
|
}
|
|
|
|
|
|
[pixel shader fail]
|
|
float4 main() : SV_TARGET
|
|
{
|
|
float arr[4] = {1, 2, 3, 4};
|
|
float4 f;
|
|
|
|
f = arr;
|
|
return 0;
|
|
}
|
|
|
|
|
|
[pixel shader fail]
|
|
float4 main() : SV_TARGET
|
|
{
|
|
float3x2 mat1 = {1, 2, 3, 4, 5, 6};
|
|
float2x3 mat2;
|
|
|
|
mat2 = mat1;
|
|
return 0;
|
|
}
|
|
|
|
|
|
[pixel shader fail]
|
|
struct apple {
|
|
float aa;
|
|
};
|
|
|
|
float4 main() : SV_TARGET
|
|
{
|
|
struct apple a = 3.0;
|
|
|
|
return 0;
|
|
}
|