1 
2 #define SRC(...) #__VA_ARGS__
3 SRC(
4    struct UBO
5    {
6       float4x4 modelViewProj;
7       float2 Outputsize;
8       float time;
9    };
10    uniform UBO global;
11 
12    struct PSInput
13    {
14       float4 position : SV_POSITION;
15       float2 texcoord : TEXCOORD0;
16       float4 color : COLOR;
17    };
18    PSInput VSMain(float4 position : POSITION, float2 texcoord : TEXCOORD0, float4 color : COLOR)
19    {
20       PSInput result;
21       result.position = mul(global.modelViewProj, position);
22       result.texcoord = texcoord;
23       result.color = color;
24       return result;
25    }
26    uniform sampler s0;
27    uniform Texture2D <float4> t0;
28    float4 PSMain(PSInput input) : SV_TARGET
29    {
30       return input.color * t0.Sample(s0, input.texcoord);
31    };
32 )
33