summaryrefslogtreecommitdiff
path: root/materialsystem/stdshaders/filmgrain_vs20.fxc
blob: 5580015d94f885e125a416c9805be7fabeaf3235 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "common_vs_fxc.h"

struct VS_INPUT
{
	float3 vPos						: POSITION;
	float2 vInputImageCoord			: TEXCOORD0;
};

struct VS_OUTPUT
{
    float4 projPos					: POSITION;	
	float2 InputImageCoord			: TEXCOORD0;
	float2 FilmGrainCoord			: TEXCOORD1;
};

// 
const float4 cFilmGrainOffset	:  register( SHADER_SPECIFIC_CONST_0 );  // should be SHADER_SPECIFIC_CONST_0


VS_OUTPUT main( const VS_INPUT v )
{
	VS_OUTPUT o = ( VS_OUTPUT )0;

	// Just copy these through to the output...
	o.projPos = float4( v.vPos, 1.0f );
	o.InputImageCoord  = v.vInputImageCoord;

	// Scale and bias the input coordinates to get grain coordinates
	o.FilmGrainCoord.xy = v.vInputImageCoord.xy * cFilmGrainOffset.xy + cFilmGrainOffset.zw;

	return o;
}