!!ARBvp1.0
# cgc version 1.5.0014, build date Sep 18 2006 20:36:59
# command line args: -profile arbvp1
# source file: Lighting.cg
#vendor NVIDIA Corporation
#version 1.5.0.14
#profile arbvp1
#program v_L1s
#semantic v_L1s.WVPMatrix
#semantic v_L1s.WMatrix
#semantic v_L1s.CameraModelPosition
#semantic v_L1s.MaterialEmissive
#semantic v_L1s.MaterialAmbient
#semantic v_L1s.MaterialDiffuse
#semantic v_L1s.MaterialSpecular
#semantic v_L1s.Light0ModelPosition
#semantic v_L1s.Light0ModelDirection
#semantic v_L1s.Light0Ambient
#semantic v_L1s.Light0Diffuse
#semantic v_L1s.Light0Specular
#semantic v_L1s.Light0SpotCutoff
#semantic v_L1s.Light0Attenuation
#var float3 kModelPosition : $vin.POSITION : POSITION : 0 : 1
#var float3 kModelNormal : $vin.NORMAL : NORMAL : 1 : 1
#var float4 kClipPosition : $vout.POSITION : HPOS : 2 : 1
#var float4 kVertexColor : $vout.COLOR : COL0 : 3 : 1
#var float4x4 WVPMatrix :  : c[1], 4 : 4 : 1
#var float4x4 WMatrix :  : c[5], 4 : 5 : 1
#var float3 CameraModelPosition :  : c[9] : 6 : 1
#var float3 MaterialEmissive :  : c[10] : 7 : 1
#var float3 MaterialAmbient :  : c[11] : 8 : 1
#var float4 MaterialDiffuse :  : c[12] : 9 : 1
#var float4 MaterialSpecular :  : c[13] : 10 : 1
#var float3 Light0ModelPosition :  : c[14] : 11 : 1
#var float3 Light0ModelDirection :  : c[15] : 12 : 1
#var float3 Light0Ambient :  : c[16] : 13 : 1
#var float3 Light0Diffuse :  : c[17] : 14 : 1
#var float3 Light0Specular :  : c[18] : 15 : 1
#var float4 Light0SpotCutoff :  : c[19] : 16 : 1
#var float4 Light0Attenuation :  : c[20] : 17 : 1
#const c[0] = 0
PARAM c[21] = { { 0 },
		program.local[1..20] };
TEMP R0;
TEMP R1;
TEMP R2;
TEMP R3;
ADD R2.yzw, vertex.position.xxyz, -c[14].xxyz;
DP3 R0.x, R2.yzww, R2.yzww;
ADD R1.xyz, -vertex.position, c[9];
DP3 R0.w, R1, R1;
RSQ R0.x, R0.x;
MUL R0.xyz, R0.x, R2.yzww;
RSQ R0.w, R0.w;
MAD R1.xyz, R0.w, R1, -R0;
DP3 R0.w, R1, R1;
RSQ R0.w, R0.w;
MUL R1.xyz, R0.w, R1;
DP3 R1.x, vertex.normal, R1;
SLT R0.w, c[0].x, R1.x;
ABS R0.w, R0;
SGE R1.y, c[0].x, R0.w;
DP3 R0.w, R0, vertex.normal;
DP3 R0.x, R0, c[15];
SGE R0.y, R0.x, c[19];
SLT R0.z, c[0].x, -R0.w;
MUL R1.z, R0.y, R0;
ABS R0.z, R0;
SGE R0.z, c[0].x, R0;
MUL R1.w, R0.y, R0.z;
ABS R0.y, R0;
POW R0.x, R0.x, c[19].w;
SGE R2.x, c[0], R0.y;
MAD R0.x, -R0, R1.w, R0;
MAD R3.x, -R0, R2, R0;
MUL R1.y, R1.z, R1;
POW R1.x, R1.x, c[13].w;
MAD R1.x, -R1, R1.y, R1;
MAD R0.z, R1.w, -R1.x, R1.x;
MAD R3.y, R2.x, -R0.z, R0.z;
MUL R0.xyz, R2.z, c[6];
MAD R0.xyz, R2.y, c[5], R0;
MAD R0.xyz, R2.w, c[7], R0;
MUL R0.y, R0, R0;
MAD R0.x, R0, R0, R0.y;
MUL R1.x, R3, R3.y;
MUL R1.xyz, R1.x, c[13];
MAD R0.y, R1.w, R0.w, -R0.w;
MAD R0.z, R0, R0, R0.x;
MAD R0.x, R2, -R0.y, R0.y;
RSQ R0.y, R0.z;
SLT R0.w, c[0].x, R0.x;
SLT R0.z, c[0].x, R3.x;
MUL R1.w, R0.z, R0;
SLT R2.y, c[0].x, R3;
MUL R2.w, R1, R2.y;
MOV R2.xyz, c[16];
RCP R0.w, R0.y;
MUL R0.x, R3, R0;
MUL R0.xyz, R0.x, c[12];
MUL R1.xyz, R1, c[18];
MUL R2.xyz, R2, c[11];
MUL R0.xyz, R0, c[17];
MAD R0.xyz, R1.w, R0, R2;
MAD R1.w, R0, c[20].z, c[20].y;
MAD R0.w, R0, R1, c[20].x;
MAD R0.xyz, R1, R2.w, R0;
MUL R1, vertex.position.y, c[2];
RCP R0.w, R0.w;
MAD R1, vertex.position.x, c[1], R1;
MUL R0.w, R0, c[20];
MAD R1, vertex.position.z, c[3], R1;
MAD result.color.xyz, R0.w, R0, c[10];
ADD result.position, R1, c[4];
MOV result.color.w, c[12];
END
# 68 instructions, 4 R-regs
