bgfx/3rdparty/glsl-optimizer/tests/vertex/zun-Hidden_TerrainEngine_Details_BillboardWavingDoublePass1-out.txt
2014-02-10 23:06:13 -08:00

91 lines
2.9 KiB
Text

uniform vec4 _CameraPosition;
uniform vec3 _CameraRight;
uniform vec3 _CameraUp;
uniform mat4 _LightMatrix0;
uniform vec4 _MainTex_ST;
uniform mat4 _Object2World;
uniform vec4 _WaveAndDistance;
uniform vec4 _WavingTint;
uniform vec4 _WorldSpaceLightPos0;
uniform vec4 unity_Scale;
attribute vec4 TANGENT;
varying vec4 xlv_FOG;
void main ()
{
vec4 pos_1;
pos_1 = gl_Vertex;
vec2 offset_2;
offset_2 = TANGENT.xy;
vec3 tmpvar_3;
tmpvar_3 = (gl_Vertex.xyz - _CameraPosition.xyz);
float tmpvar_4;
tmpvar_4 = dot (tmpvar_3, tmpvar_3);
if ((tmpvar_4 > _WaveAndDistance.w)) {
offset_2 = vec2(0.0, 0.0);
};
pos_1.xyz = (gl_Vertex.xyz + (offset_2.x * _CameraRight));
pos_1.xyz = (pos_1.xyz + (offset_2.y * _CameraUp));
vec4 vertex_5;
vertex_5.yw = pos_1.yw;
vec4 outColor_6;
vec3 waveMove_7;
waveMove_7.y = 0.0;
vec4 tmpvar_8;
tmpvar_8 = ((fract(
(((pos_1.x * (vec4(0.012, 0.02, 0.06, 0.024) * _WaveAndDistance.y)) + (pos_1.z * (vec4(0.006, 0.02, 0.02, 0.05) * _WaveAndDistance.y))) + (_WaveAndDistance.x * vec4(1.2, 2.0, 1.6, 4.8)))
) * 6.40885) - 3.14159);
vec4 tmpvar_9;
tmpvar_9 = (tmpvar_8 * tmpvar_8);
vec4 tmpvar_10;
tmpvar_10 = (tmpvar_9 * tmpvar_8);
vec4 tmpvar_11;
tmpvar_11 = (tmpvar_10 * tmpvar_9);
vec4 tmpvar_12;
tmpvar_12 = (((tmpvar_8 +
(tmpvar_10 * -0.161616)
) + (tmpvar_11 * 0.0083333)) + ((tmpvar_11 * tmpvar_9) * -0.00019841));
vec4 tmpvar_13;
tmpvar_13 = (tmpvar_12 * tmpvar_12);
vec4 tmpvar_14;
tmpvar_14 = (tmpvar_13 * tmpvar_13);
vec4 tmpvar_15;
tmpvar_15 = (tmpvar_14 * TANGENT.y);
waveMove_7.x = dot (tmpvar_15, vec4(0.024, 0.04, -0.12, 0.096));
waveMove_7.z = dot (tmpvar_15, vec4(0.006, 0.02, -0.02, 0.1));
vertex_5.xz = (pos_1.xz - (waveMove_7.xz * _WaveAndDistance.z));
outColor_6.xyz = ((gl_Color.xyz * mix (vec3(0.5, 0.5, 0.5), _WavingTint.xyz, vec3(
(dot (tmpvar_14, vec4(0.6742, 0.6742, 0.26968, 0.13484)) * 0.7)
))) * 2.0);
outColor_6.w = 1.0;
vec4 tmpvar_16;
tmpvar_16 = (gl_ModelViewProjectionMatrix * vertex_5);
mat3 tmpvar_17;
tmpvar_17[0] = _Object2World[0].xyz;
tmpvar_17[1] = _Object2World[1].xyz;
tmpvar_17[2] = _Object2World[2].xyz;
gl_Position = tmpvar_16;
vec4 tmpvar_18;
tmpvar_18.yzw = vec3(0.0, 0.0, 0.0);
tmpvar_18.x = tmpvar_16.z;
xlv_FOG = tmpvar_18;
vec4 tmpvar_19;
tmpvar_19.zw = vec2(0.0, 0.0);
tmpvar_19.xy = ((gl_MultiTexCoord0.xy * _MainTex_ST.xy) + _MainTex_ST.zw);
gl_TexCoord[0] = tmpvar_19;
gl_FrontColor = outColor_6;
vec4 tmpvar_20;
tmpvar_20.w = 0.0;
tmpvar_20.xyz = (tmpvar_17 * (gl_Normal * unity_Scale.w));
gl_TexCoord[1] = tmpvar_20;
vec4 tmpvar_21;
tmpvar_21.w = 0.0;
tmpvar_21.xyz = (_WorldSpaceLightPos0.xyz - (_Object2World * vertex_5).xyz);
gl_TexCoord[2] = tmpvar_21;
vec4 tmpvar_22;
tmpvar_22.w = 0.0;
tmpvar_22.xyz = (_LightMatrix0 * (_Object2World * vertex_5)).xyz;
gl_TexCoord[3] = tmpvar_22;
}
// inputs: 5, stats: 56 alu 0 tex 1 flow