source: GTP/trunk/App/Demos/Illum/Ogre/Media/materials/programs/GameTools_HPS_Smoke_L.hlsl @ 1424

Revision 1424, 1.0 KB checked in by szirmay, 18 years ago (diff)
Line 
1
2struct VS_OUT
3{
4        float4 hPosition        : POSITION;
5        float4 cPosition        : TEXCOORD1;
6        float2 texCoord         : TEXCOORD0;
7        float r                         : TEXCOORD2;   
8        float4 center           : TEXCOORD3;
9        float4 Color            : TEXCOORD4;   
10};
11
12VS_OUT HPS_Smoke_L_VS (float4 position : POSITION,     
13                float4 texCoord : TEXCOORD0,
14                float4 Color: COLOR0,
15                uniform float baseRadius,
16                uniform float4x4 worldView,
17                uniform float4x4 Proj,
18                uniform float4x4 worldViewProj)
19{
20        VS_OUT OUT;
21    float2 offset = texCoord.zw * baseRadius;
22        float4 cPosition;   
23        cPosition = mul(worldView, position);
24        OUT.center = cPosition;
25        cPosition.xy += offset;                         
26        OUT.cPosition = cPosition;
27        OUT.r = abs(offset.x);         
28 
29    OUT.hPosition = mul( Proj, cPosition );
30     
31    OUT.texCoord = texCoord.xy; 
32    OUT.Color = Color; 
33        return OUT;
34}
35
36
37float4 HPS_Smoke_L_PS(VS_OUT IN,
38                                                uniform float4x4 Proj,
39                                                uniform sampler2D Texture       ) : COLOR
40{
41        float4 Color = 0;
42        Color = tex2D(Texture, IN.texCoord);
43        Color = float4(1, 1, 1, Color.a) * IN.Color;
44        return Color;
45}
Note: See TracBrowser for help on using the repository browser.