mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-09-12 18:50:22 -07:00
63 lines
2.3 KiB
Plaintext
63 lines
2.3 KiB
Plaintext
[require]
|
|
shader model >= 4.0
|
|
|
|
[input layout]
|
|
0 r32g32-float sv_position
|
|
|
|
[vb 0]
|
|
-2.0 -2.0
|
|
2.0 -2.0
|
|
-2.0 2.0
|
|
|
|
2.0 -2.0
|
|
-2.0 2.0
|
|
2.0 2.0
|
|
|
|
[vertex shader]
|
|
void main(out uint a : A, inout float4 pos : sv_position)
|
|
{
|
|
a = 2;
|
|
}
|
|
|
|
[pixel shader]
|
|
float4 main(uint a : A, bool face : sv_isfrontface) : sv_target
|
|
{
|
|
return float4(a, face, 0, 0);
|
|
}
|
|
|
|
[test]
|
|
todo(msl & sm>=6) draw triangle list 6
|
|
probe (160, 240) f32(2.0, 0.0, 0.0, 0.0)
|
|
probe (480, 240) f32(2.0, 1.0, 0.0, 0.0)
|
|
|
|
[require]
|
|
shader model >= 4.0
|
|
shader model < 4.1
|
|
|
|
[pixel shader dxbc-tpf-hex]
|
|
% As above, but compiled with native d3dcompiler_43.
|
|
% Versions 43 and earlier will pack together "a" with "face".
|
|
43425844 5c2e1427 858794db 4ee8c03b c5723497 00000001 00000140 % DXBC header
|
|
00000003 0000002c 00000080 000000b4 %
|
|
4e475349 0000004c 00000002 00000008 % .input
|
|
00000038 00000000 00000000 00000001 00000000 00000101 % .param A.x, v0.x, uint
|
|
0000003a 00000000 00000009 00000001 00000000 00000202 % .param sv_isfrontface.y, v0.y, uint, FFACE
|
|
76730041 6673695f 746e6f72 65636166 ababab00 %
|
|
4e47534f 0000002c 00000001 00000008 % .output
|
|
00000020 00000000 00000000 00000003 00000000 0000000f % .param sv_target.xyzw, o0.xyzw, float, TARGET
|
|
745f7673 65677261 abab0074 %
|
|
52444853 00000084 00000040 00000021 % .text ps_4_0
|
|
03000862 00101012 00000000 % dcl_input_ps constant v0.x
|
|
04000863 00101022 00000000 00000009 % dcl_input_ps_sgv v0.y, is_front_face
|
|
03000065 001020f2 00000000 % dcl_output o0.xyzw
|
|
05000056 00102012 00000000 0010100a 00000000 % utof o0.x, v0.x
|
|
07000001 00102022 00000000 0010101a 00000000 00004001 3f800000 % and o0.y, v0.y, l(0x3f800000)
|
|
08000036 001020c2 00000000 00004002 00000000 00000000 00000000 00000000 % mov o0.zw, l(0, 0, 0, 0)
|
|
0100003e % ret
|
|
|
|
[test]
|
|
clear rtv 0 0.0 0.0 0.0 0.0
|
|
todo(msl) draw triangle list 6
|
|
probe (160, 240) f32(2.0, 0.0, 0.0, 0.0)
|
|
todo(glsl) probe (480, 240) f32(2.0, 1.0, 0.0, 0.0)
|