ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libgender/vsh.cg
Revision: 1.15
Committed: Thu Oct 28 22:26:28 2004 UTC (19 years, 7 months ago) by root
Branch: MAIN
Changes since 1.14: +1 -1 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 struct vertexIn {
2 root 1.6 float4 Position : POSITION;
3     float4 Normal : NORMAL;
4     float4 UV : TEXCOORD0;
5 root 1.1 };
6 root 1.6
7 root 1.1 struct vertexOut {
8 root 1.6 float4 HPosition : POSITION;
9     float4 TexCoord : TEXCOORD0;
10     float3 LightVec : TEXCOORD1;
11     float3 EyeVec : TEXCOORD2;
12     float3 WorldNormal : TEXCOORD3;
13 root 1.9 float3 WorldView : TEXCOORD4;
14 root 1.10 float3 test1 : TEXCOORD5;
15     float3 test2 : TEXCOORD5;
16 root 1.1 };
17    
18 root 1.12 vertexOut main(vertexIn IN,
19     uniform float4 lightpos)
20 root 1.1 {
21 root 1.6 vertexOut OUT;
22    
23 root 1.15 float4 LightPos = float4 (0, 10, 0, 1);//lightpos;
24 root 1.6
25 root 1.8 float3 wpos = mul (glstate.matrix.modelview[0], IN.Position).xyz;
26    
27     OUT.WorldNormal = normalize (mul (glstate.matrix.invtrans.modelview[0], IN.Normal).xyz);
28 root 1.9 OUT.EyeVec = normalize (wpos);
29     OUT.WorldView = normalize (glstate.matrix.invtrans.projection[3].xyz - wpos);
30 root 1.13 OUT.LightVec = normalize (LightPos - wpos);
31 root 1.7 OUT.HPosition = mul (glstate.matrix.mvp, IN.Position);
32 root 1.6 OUT.TexCoord = IN.UV;
33 root 1.5
34 root 1.6 return OUT;
35 root 1.1 }
36