mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
d3ba810c98
This is simply unnecessary and wastes time. As part of this, simply remove the "all" directive. Only for a couple of tests is it even potentially interesting to validate all pixels (e.g. nointerpolation.shader_test), and for those "all" is replaced with an explicit (0, 0, 640, 480) rect. In all other cases we just probe (0, 0).
64 lines
1.1 KiB
Plaintext
64 lines
1.1 KiB
Plaintext
% The texel offset argument to Load() must resolve to a constant integer;
|
|
% make sure that we can do so.
|
|
|
|
[require]
|
|
shader model >= 4.0
|
|
|
|
|
|
[srv 0]
|
|
size (2d, 4, 4)
|
|
1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4
|
|
5 5 5 5 6 6 6 6 7 7 7 7 8 8 8 8
|
|
9 9 9 9 10 10 10 10 11 11 11 11 12 12 12 12
|
|
13 13 13 13 14 14 14 14 14 15 15 15 16 16 16 16
|
|
|
|
|
|
[pixel shader]
|
|
Texture2D tex;
|
|
uniform int i;
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
int4 a = {1, 2, i, i};
|
|
return 100 * a + tex.Load(int3(0, 0, 0), a.xy);
|
|
}
|
|
|
|
[test]
|
|
uniform 0 int 4
|
|
todo(glsl) draw quad
|
|
probe (0, 0) rgba (110, 210, 410, 410)
|
|
|
|
|
|
[pixel shader]
|
|
Texture2D tex;
|
|
uniform int i;
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
int4 a = {0, 1, 2, i};
|
|
int4 b = a.yxww;
|
|
int3 c = b.wyx;
|
|
return 100 * b + tex.Load(int3(0, 0, 0), c.yz);
|
|
}
|
|
|
|
[test]
|
|
uniform 0 int 3
|
|
todo(glsl) draw quad
|
|
probe (0, 0) rgba (105, 5, 305, 305)
|
|
|
|
|
|
[pixel shader]
|
|
Texture2D tex;
|
|
uniform int i;
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
int4 a = {1, 2, 3, i};
|
|
return tex.Load(int3(0, 0, 0), a.wzxx.yxw.zx);
|
|
}
|
|
|
|
[test]
|
|
uniform 0 int 1
|
|
todo(glsl) draw quad
|
|
probe (0, 0) rgba (14.0, 14.0, 14.0, 14.0)
|