ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libgender/fsh.cg
Revision: 1.13
Committed: Wed Oct 6 00:33:42 2004 UTC (19 years, 8 months ago) by root
Branch: MAIN
Changes since 1.12: +4 -5 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.2 struct vertexOut {
2 root 1.8 float4 HPosition : POSITION;
3     float4 TexCoord : TEXCOORD0;
4     float3 LightVec : TEXCOORD1;
5     float3 EyeVec : TEXCOORD2;
6     float3 WorldNormal : TEXCOORD3;
7 root 1.12 float3 WorldView : TEXCOORD4;
8 root 1.2 };
9 root 1.1
10     struct pixelOut {
11     float4 col : COLOR;
12     };
13 root 1.3
14 root 1.7 pixelOut main(vertexOut IN)
15 root 1.1 {
16 root 1.12 pixelOut OUT;
17 root 1.8
18 root 1.12 half SpecExpon = 200;
19 root 1.5 float4 LightColor = { 1, 1, 1, 1 };
20 root 1.3
21 root 1.12 half3 Ln = normalize (IN.LightVec);
22     half3 Nn = normalize (IN.WorldNormal);
23     half3 Vn = normalize (IN.WorldView);
24    
25     half3 Hn = normalize (Ln + Vn);
26     half ldn = dot (Ln, Nn);
27     half hdn = dot (Hn, Nn);
28 root 1.8
29 root 1.12 half4 litV = lit (ldn, hdn, SpecExpon);
30 root 1.13 //half4 diffContrib = glstate.material.diffuse * (litV.y * LightColor + glstate.lightmodel.ambient);
31     //half4 specContrib = litV.y * litV.z * LightColor;
32     //half4 result = diffContrib + specContrib;
33     half4 result = glstate.material.diffuse * litV.y + LightColor * litV.z;
34 root 1.8
35 root 1.5 OUT.col = result;
36 root 1.9 return OUT;
37 root 1.1 }
38