File: units3o.fp

package info (click to toggle)
spring 0.81.2.1%2Bdfsg1-6
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 28,496 kB
  • ctags: 37,096
  • sloc: cpp: 238,659; ansic: 13,784; java: 12,175; awk: 3,428; python: 1,159; xml: 738; perl: 405; sh: 297; makefile: 267; pascal: 228; objc: 192
file content (34 lines) | stat: -rw-r--r-- 1,025 bytes parent folder | download | duplicates (5)
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
33
34
!!ARBfp1.0
# S3O model rendering without shadows
OPTION ARB_fog_linear;

TEMP temp,reflect,texColor,extraColor,specular;
TEMP tempColor,shadeColor;

#get unit texture
TEX texColor, fragment.texcoord[1], texture[0], 2D;
TEX extraColor, fragment.texcoord[1], texture[1], 2D;

#normalize surface normal
DP3 temp.x, fragment.texcoord[2], fragment.texcoord[2];
RSQ temp.x, temp.x;
MUL temp, fragment.texcoord[2], temp.x;

#calc reflection dir
DP3 reflect.x, temp, fragment.texcoord[3];
MUL reflect.x, reflect.x,{-2};
MAD reflect, temp, reflect.x, fragment.texcoord[3];

#get specular highlight and remove if in shadow
TEX specular, reflect, texture[4], CUBE;
MUL specular, specular, {4,4,4,1};
MUL specular, specular, extraColor.y;

TEX reflect, reflect, texture[3], CUBE;
LRP shadeColor, extraColor.y, reflect, fragment.color;
LRP texColor, texColor.w, program.env[14], texColor;
ADD shadeColor, shadeColor, extraColor.x;

MAD result.color, texColor, shadeColor, specular;
MUL result.color.w, extraColor.w, program.env[14].w;
END