2025-08-04 21:50:28 -05:00
|
|
|
[require]
|
|
|
|
shader model < 3.0
|
|
|
|
|
|
|
|
[sampler 0]
|
|
|
|
filter point point point
|
|
|
|
address wrap wrap wrap
|
|
|
|
|
|
|
|
[srv 0]
|
|
|
|
size (2d, 2, 2)
|
|
|
|
1.0 0.0 0.0 0.0 1.0 1.0 0.0 0.0
|
|
|
|
1.0 0.0 1.0 0.0 1.0 1.0 1.0 0.0
|
|
|
|
|
|
|
|
[vertex shader]
|
|
|
|
void main(inout float4 pos : position, out float4 tex : texcoord)
|
|
|
|
{
|
|
|
|
tex = pos + 0.75;
|
|
|
|
}
|
|
|
|
|
|
|
|
[pixel shader d3dbc-hex]
|
|
|
|
% TODO: Convert to assembly or HLSL.
|
|
|
|
ffff0104 % ps_1_4
|
|
|
|
00000042 800f0000 b0e40000 % texld r0, t0
|
|
|
|
0000ffff % end
|
|
|
|
|
|
|
|
[test]
|
|
|
|
draw quad
|
|
|
|
probe (320, 240) f32(1, 1, 1, 0)
|
|
|
|
probe (480, 240) f32(1, 0, 1, 0)
|
|
|
|
probe (320, 360) f32(1, 1, 0, 0)
|
|
|
|
probe (480, 360) f32(1, 0, 0, 0)
|
2025-08-04 22:18:32 -05:00
|
|
|
|
|
|
|
[vertex shader]
|
|
|
|
void main(inout float4 pos : position, out float4 tex : texcoord)
|
|
|
|
{
|
|
|
|
tex = pos;
|
|
|
|
}
|
|
|
|
|
|
|
|
[pixel shader d3dbc-hex]
|
|
|
|
% TODO: Convert to assembly or HLSL.
|
|
|
|
ffff0104 % ps_1_4
|
|
|
|
00000051 a00f0000 3e4ccccd 3e4ccccd 3e4ccccd 3e4ccccd % def c0, 0.2, 0.2, 0.2, 0.2
|
|
|
|
00000040 80070000 b0e40000 % texcrd r0.xyz, t0
|
|
|
|
00000001 80080000 a0e40000 % mov r0.w, c0
|
|
|
|
00000002 800f0000 80e40000 a0e40000 % add r0, r0, c0
|
|
|
|
0000ffff % end
|
|
|
|
|
|
|
|
[test]
|
|
|
|
draw quad
|
|
|
|
probe (160, 120) f32(0.0, 0.7, 0.2, 0.4) 32
|
|
|
|
probe (480, 120) f32(0.7, 0.7, 0.2, 0.4) 32
|
|
|
|
probe (160, 360) f32(0.0, 0.0, 0.2, 0.4) 8
|
|
|
|
probe (480, 360) f32(0.7, 0.0, 0.2, 0.4) 8
|