mirror of
https://github.com/scratchfoundation/bgfx.git
synced 2024-11-25 17:18:12 -05:00
139 lines
4.4 KiB
Text
139 lines
4.4 KiB
Text
uniform vec4 _CameraPosition;
|
|
uniform vec3 _CameraRight;
|
|
uniform vec3 _CameraUp;
|
|
uniform vec4 _MainTex_ST;
|
|
uniform mat4 _Object2World;
|
|
uniform vec4 _WaveAndDistance;
|
|
uniform vec4 _WavingTint;
|
|
uniform vec4 unity_4LightAtten0;
|
|
uniform vec4 unity_4LightPosX0;
|
|
uniform vec4 unity_4LightPosY0;
|
|
uniform vec4 unity_4LightPosZ0;
|
|
uniform vec3 unity_LightColor0;
|
|
uniform vec3 unity_LightColor1;
|
|
uniform vec3 unity_LightColor2;
|
|
uniform vec3 unity_LightColor3;
|
|
uniform vec4 unity_SHAb;
|
|
uniform vec4 unity_SHAg;
|
|
uniform vec4 unity_SHAr;
|
|
uniform vec4 unity_SHBb;
|
|
uniform vec4 unity_SHBg;
|
|
uniform vec4 unity_SHBr;
|
|
uniform vec4 unity_SHC;
|
|
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;
|
|
vec3 tmpvar_18;
|
|
tmpvar_18 = (tmpvar_17 * (gl_Normal * unity_Scale.w));
|
|
vec4 tmpvar_19;
|
|
tmpvar_19.w = 1.0;
|
|
tmpvar_19.xyz = tmpvar_18;
|
|
vec3 x2_20;
|
|
vec3 x1_21;
|
|
x1_21.x = dot (unity_SHAr, tmpvar_19);
|
|
x1_21.y = dot (unity_SHAg, tmpvar_19);
|
|
x1_21.z = dot (unity_SHAb, tmpvar_19);
|
|
vec4 tmpvar_22;
|
|
tmpvar_22 = (tmpvar_18.xyzz * tmpvar_18.yzzx);
|
|
x2_20.x = dot (unity_SHBr, tmpvar_22);
|
|
x2_20.y = dot (unity_SHBg, tmpvar_22);
|
|
x2_20.z = dot (unity_SHBb, tmpvar_22);
|
|
vec3 tmpvar_23;
|
|
tmpvar_23 = (_Object2World * vertex_5).xyz;
|
|
vec4 tmpvar_24;
|
|
tmpvar_24 = (unity_4LightPosX0 - tmpvar_23.x);
|
|
vec4 tmpvar_25;
|
|
tmpvar_25 = (unity_4LightPosY0 - tmpvar_23.y);
|
|
vec4 tmpvar_26;
|
|
tmpvar_26 = (unity_4LightPosZ0 - tmpvar_23.z);
|
|
vec4 tmpvar_27;
|
|
tmpvar_27 = (((tmpvar_24 * tmpvar_24) + (tmpvar_25 * tmpvar_25)) + (tmpvar_26 * tmpvar_26));
|
|
vec4 tmpvar_28;
|
|
tmpvar_28 = (max (vec4(0.0, 0.0, 0.0, 0.0), (
|
|
(((tmpvar_24 * tmpvar_18.x) + (tmpvar_25 * tmpvar_18.y)) + (tmpvar_26 * tmpvar_18.z))
|
|
*
|
|
inversesqrt(tmpvar_27)
|
|
)) * (1.0/((1.0 +
|
|
(tmpvar_27 * unity_4LightAtten0)
|
|
))));
|
|
gl_Position = tmpvar_16;
|
|
vec4 tmpvar_29;
|
|
tmpvar_29.yzw = vec3(0.0, 0.0, 0.0);
|
|
tmpvar_29.x = tmpvar_16.z;
|
|
xlv_FOG = tmpvar_29;
|
|
vec4 tmpvar_30;
|
|
tmpvar_30.zw = vec2(0.0, 0.0);
|
|
tmpvar_30.xy = ((gl_MultiTexCoord0.xy * _MainTex_ST.xy) + _MainTex_ST.zw);
|
|
gl_TexCoord[0] = tmpvar_30;
|
|
gl_FrontColor = outColor_6;
|
|
vec4 tmpvar_31;
|
|
tmpvar_31.w = 0.0;
|
|
tmpvar_31.xyz = tmpvar_18;
|
|
gl_TexCoord[1] = tmpvar_31;
|
|
vec4 tmpvar_32;
|
|
tmpvar_32.w = 0.0;
|
|
tmpvar_32.xyz = (((x1_21 + x2_20) + (unity_SHC.xyz *
|
|
((tmpvar_18.x * tmpvar_18.x) - (tmpvar_18.y * tmpvar_18.y))
|
|
)) + ((
|
|
((unity_LightColor0 * tmpvar_28.x) + (unity_LightColor1 * tmpvar_28.y))
|
|
+
|
|
(unity_LightColor2 * tmpvar_28.z)
|
|
) + (unity_LightColor3 * tmpvar_28.w)));
|
|
gl_TexCoord[2] = tmpvar_32;
|
|
}
|
|
|
|
|
|
// inputs: 5, stats: 94 alu 0 tex 1 flow
|