!!ARBvp1.0
# cgc version 1.5.0014, build date Sep 18 2006 20:36:59
# command line args: -profile arbvp1
# source file: RipplingOcean.cg
#vendor NVIDIA Corporation
#version 1.5.0.14
#profile arbvp1
#program v_RipplingOcean
#semantic v_RipplingOcean.WVPMatrix
#semantic v_RipplingOcean.CameraWorldPosition
#semantic v_RipplingOcean.LightDir
#semantic v_RipplingOcean.WaveDirX
#semantic v_RipplingOcean.WaveDirY
#semantic v_RipplingOcean.WaveSpeed
#semantic v_RipplingOcean.WaveOffset
#semantic v_RipplingOcean.WaveHeight
#semantic v_RipplingOcean.BumpSpeed
#semantic v_RipplingOcean.Constants
#var float3 kModelPosition : $vin.POSITION : POSITION : 0 : 1
#var float3 kModelNormal : $vin.NORMAL : NORMAL : 1 : 1
#var float3 kModelTangent : $vin.COLOR : COLOR0 : 2 : 1
#var float2 kWaveTCoord : $vin.TEXCOORD0 : TEXCOORD0 : 3 : 1
#var float4 kClipPosition : $vout.POSITION : HPOS : 4 : 1
#var float2 kBumpTCoord0 : $vout.TEXCOORD0 : TEX0 : 5 : 1
#var float2 kBumpTCoord1 : $vout.TEXCOORD1 : TEX1 : 6 : 1
#var float3 kViewDir : $vout.TEXCOORD2 : TEX2 : 7 : 1
#var float3 kTangent : $vout.TEXCOORD3 : TEX3 : 8 : 1
#var float3 kBinormal : $vout.TEXCOORD4 : TEX4 : 9 : 1
#var float3 kNormal : $vout.TEXCOORD5 : TEX5 : 10 : 1
#var float4 kLightDirPlusAmbient : $vout.TEXCOORD6 : TEX6 : 11 : 1
#var float4x4 WVPMatrix :  : c[1], 4 : 12 : 1
#var float3 CameraWorldPosition :  : c[5] : 13 : 1
#var float3 LightDir :  : c[6] : 14 : 1
#var float4 WaveDirX :  : c[7] : 15 : 1
#var float4 WaveDirY :  : c[8] : 16 : 1
#var float4 WaveSpeed :  : c[9] : 17 : 1
#var float4 WaveOffset :  : c[10] : 18 : 1
#var float4 WaveHeight :  : c[11] : 19 : 1
#var float4 BumpSpeed :  : c[12] : 20 : 1
#var float4 Constants :  : c[13] : 21 : 1
#const c[0] = 0.5 6.283185 0.1591549 1
#const c[14] = 0.25 0.5 0.75 1
#const c[15] = 1 -1 -24.9808 60.14581
#const c[16] = -85.45379 64.93935 -19.73921 1
#const c[17] = 0 2
PARAM c[18] = { { 0.5, 6.2831855, 0.15915494, 1 },
		program.local[1..13],
		{ 0.25, 0.5, 0.75, 1 },
		{ 1, -1, -24.980804, 60.145809 },
		{ -85.453789, 64.939354, -19.739208, 1 },
		{ 0, 2 } };
TEMP R0;
TEMP R1;
TEMP R2;
TEMP R3;
TEMP R4;
TEMP R5;
TEMP R6;
MUL R0, vertex.texcoord[0].y, c[8];
MAD R1, vertex.texcoord[0].x, c[7], R0;
MOV R0.x, c[13].w;
MAD R0, R0.x, c[9], R1;
ADD R0, R0, c[10];
FRC R0, R0;
ADD R0, R0, -c[0].x;
MUL R4, R0, c[0].y;
MUL R0.x, R4.w, c[0].z;
FRC R2.x, R0;
SLT R1, R2.x, c[14];
ADD R0.xyz, R1.yzww, -R1;
MOV R1.yzw, R0.xxyz;
MUL R2.y, R4.z, c[0].z;
FRC R2.w, R2.y;
DP4 R0.w, R1, c[14].xxzz;
DP3 R0.z, R0, c[0].xxww;
ADD R2.xy, R2.x, -R0.zwzw;
MUL R5.zw, R2.xyxy, R2.xyxy;
SLT R0, R2.w, c[14];
ADD R2.xyz, R0.yzww, -R0;
MOV R0.yzw, R2.xxyz;
MUL R3.xy, R5.zwzw, R5.zwzw;
DP4 R3.w, R0, c[14].xxzz;
DP3 R3.z, R2, c[0].xxww;
ADD R3.zw, R2.w, -R3;
MUL R5.xy, R3.zwzw, R3.zwzw;
MUL R2, R3.xxyy, c[15].zwzw;
ADD R2, R2, c[16].xyxy;
MAD R2, R2, R3.xxyy, c[16].zwzw;
MUL R4.zw, R5.xyxy, R5.xyxy;
MUL R3, R4.zzww, c[15].zwzw;
MAD R5.zw, R2.xyxz, R5, R2.xyyw;
ADD R2, R3, c[16].xyxy;
DP4 R3.y, R1, c[15].xxyy;
DP4 R3.x, R1, c[15].xyyx;
MAD R1, R2, R4.zzww, c[16].zwzw;
MAD R1.xy, R1.xzzw, R5, R1.ywzw;
MUL R6.zw, R3.xyxy, R5;
DP4 R1.w, R0, c[15].xxyy;
DP4 R1.z, R0, c[15].xyyx;
MUL R0.x, R4, c[0].z;
FRC R2.z, R0.x;
MOV R4.w, R6.z;
MUL R6.xz, R1.zyww, R1.xyyw;
SLT R0, R2.z, c[14];
ADD R1.xyz, R0.yzww, -R0;
MOV R0.yzw, R1.xxyz;
MUL R1.w, R4.y, c[0].z;
DP4 R2.y, R0, c[14].xxzz;
DP3 R2.x, R1, c[0].xxww;
FRC R2.w, R1;
ADD R3.xy, R2.z, -R2;
SLT R1, R2.w, c[14];
ADD R2.xyz, R1.yzww, -R1;
MUL R5.zw, R3.xyxy, R3.xyxy;
MOV R1.yzw, R2.xxyz;
MOV R4.z, R6.x;
DP4 R3.y, R1, c[14].xxzz;
DP3 R3.x, R2, c[0].xxww;
ADD R2.xy, R2.w, -R3;
MUL R4.xy, R2, R2;
MUL R6.xy, R5.zwzw, R5.zwzw;
MUL R2, R6.xxyy, c[15].zwzw;
ADD R3, R2, c[16].xyxy;
MUL R5.xy, R4, R4;
MAD R3, R3, R6.xxyy, c[16].zwzw;
MAD R3.xy, R3.xzzw, R5.zwzw, R3.ywzw;
MUL R2, R5.xxyy, c[15].zwzw;
ADD R2, R2, c[16].xyxy;
MAD R2, R2, R5.xxyy, c[16].zwzw;
DP4 R3.w, R0, c[15].xxyy;
DP4 R3.z, R0, c[15].xyyx;
MAD R0.xy, R2.xzzw, R4, R2.ywzw;
MUL R0.zw, R3, R3.xyxy;
DP4 R2.y, R1, c[15].xxyy;
DP4 R2.x, R1, c[15].xyyx;
MUL R1.xy, R2, R0;
MOV R4.x, R0.z;
MOV R4.y, R1.x;
MUL R2, R4, c[11];
MUL R0.xyz, vertex.color, c[17].y;
ADD R0.xyz, R0, -c[0].w;
DP4 R3.yz, R2, c[8];
DP4 R3.x, R2, c[7];
MUL R3.xyz, -R3, c[13].x;
ADD R2.z, R3, R0;
MOV R2.xy, R0;
DP3 R1.x, R2, R2;
ADD R0.xy, vertex.normal, R3;
RSQ R1.w, R1.x;
MUL R3.xyz, R1.w, R2;
MOV R0.z, vertex.normal;
DP3 R1.z, R0, R0;
RSQ R1.x, R1.z;
MUL R0.xyz, R1.x, R0;
MUL R2.xyz, R0.zxyw, R3.yzxw;
MAD R4.xyz, R0.yzxw, R3.zxyw, -R2;
DP3 R1.x, R4, R4;
RSQ R3.w, R1.x;
MUL R4.xyz, R3.w, R4;
MOV R1.x, R0.w;
MOV R1.w, R6;
MOV R1.z, R6;
DP4 R0.w, R1, c[11];
MOV R2.xyz, vertex.normal;
MOV R2.w, c[17].x;
MOV R1.xyz, vertex.position;
MOV R1.w, c[0];
MAD R1, R0.w, R2, R1;
MUL R2, R1.y, c[2];
MAD R2, R1.x, c[1], R2;
MAD R2, R1.z, c[3], R2;
MAD result.texcoord[4].xyz, R4, c[0].x, c[0].x;
ADD R4.xyz, R1, -c[5];
DP3 R0.w, R4, R4;
MAD result.position, R1.w, c[4], R2;
MOV R2.xyz, c[6];
RSQ R0.w, R0.w;
MAD result.texcoord[5].xyz, R0, c[0].x, c[0].x;
MUL R0.xyz, R0.w, R4;
MAD result.texcoord[2].xyz, R0, c[0].x, c[0].x;
MUL R1.xy, vertex.texcoord[0], c[13].z;
MOV R0, c[12];
MAD result.texcoord[3].xyz, R3, c[0].x, c[0].x;
MAD result.texcoord[0].xy, R0, c[13].w, R1;
MAD result.texcoord[1].xy, R0.zwzw, c[13].w, R1.yxzw;
MAD result.texcoord[6].xyz, R2, c[0].x, c[0].x;
MOV result.texcoord[6].w, c[13].y;
END
# 129 instructions, 7 R-regs
