1617a3babSopenharmony_ciTexture2D txDiffuseA : register( t0 );
2617a3babSopenharmony_ciTexture2D txDiffuseB : register( t1 );
3617a3babSopenharmony_ci
4617a3babSopenharmony_ciSamplerState samLinearA : register( s0 );
5617a3babSopenharmony_ciSamplerState samLinearB : register( s1 );
6617a3babSopenharmony_ci
7617a3babSopenharmony_cicbuffer cbNeverChanges : register( b0 )
8617a3babSopenharmony_ci{
9617a3babSopenharmony_ci    matrix View;
10617a3babSopenharmony_ci};
11617a3babSopenharmony_ci
12617a3babSopenharmony_cicbuffer cbChangeOnResize : register( b1 )
13617a3babSopenharmony_ci{
14617a3babSopenharmony_ci    matrix Projection;
15617a3babSopenharmony_ci};
16617a3babSopenharmony_ci
17617a3babSopenharmony_cicbuffer cbChangesEveryFrame : register( b2 )
18617a3babSopenharmony_ci{
19617a3babSopenharmony_ci    matrix World;
20617a3babSopenharmony_ci    float4 vMeshColor;
21617a3babSopenharmony_ci};
22617a3babSopenharmony_ci
23617a3babSopenharmony_ci
24617a3babSopenharmony_cistruct VS_INPUT
25617a3babSopenharmony_ci{
26617a3babSopenharmony_ci    float4 Pos : POSITION;
27617a3babSopenharmony_ci    float2 Tex : TEXCOORD0;
28617a3babSopenharmony_ci};
29617a3babSopenharmony_ci
30617a3babSopenharmony_cistruct PS_INPUT
31617a3babSopenharmony_ci{
32617a3babSopenharmony_ci    float4 Pos : SV_POSITION;
33617a3babSopenharmony_ci    float2 Tex : TEXCOORD0;
34617a3babSopenharmony_ci};
35617a3babSopenharmony_ci
36617a3babSopenharmony_ci
37617a3babSopenharmony_cifloat4 main( PS_INPUT input) : SV_Target
38617a3babSopenharmony_ci{
39617a3babSopenharmony_ci    PS_INPUT output = (PS_INPUT)0;
40617a3babSopenharmony_ci    output.Pos = mul( input.Pos, World );
41617a3babSopenharmony_ci    output.Pos = mul( output.Pos, View );
42617a3babSopenharmony_ci    output.Pos = mul( output.Pos, Projection );
43617a3babSopenharmony_ci    output.Tex = input.Tex;
44617a3babSopenharmony_ci    return txDiffuseA.Sample( samLinearA, output.Tex ) * vMeshColor;
45617a3babSopenharmony_ci}
46