mirror of
https://github.com/scratchfoundation/bgfx.git
synced 2024-11-29 02:55:36 -05:00
83 lines
2.8 KiB
Text
83 lines
2.8 KiB
Text
varying vec4 xlv_FOG;
|
|
attribute vec4 TANGENT;
|
|
uniform vec4 unity_Scale;
|
|
uniform vec4 _WorldSpaceLightPos0;
|
|
uniform vec4 _WavingTint;
|
|
uniform vec4 _WaveAndDistance;
|
|
uniform mat4 _Object2World;
|
|
uniform vec4 _MainTex_ST;
|
|
uniform mat4 _LightMatrix0;
|
|
uniform vec3 _CameraUp;
|
|
uniform vec3 _CameraRight;
|
|
uniform vec4 _CameraPosition;
|
|
void main ()
|
|
{
|
|
vec4 pos;
|
|
pos = gl_Vertex;
|
|
vec2 offset;
|
|
offset = TANGENT.xy;
|
|
vec3 tmpvar_1;
|
|
tmpvar_1 = (gl_Vertex.xyz - _CameraPosition.xyz);
|
|
float tmpvar_2;
|
|
tmpvar_2 = dot (tmpvar_1, tmpvar_1);
|
|
if ((tmpvar_2 > _WaveAndDistance.w)) {
|
|
offset = vec2(0.0, 0.0);
|
|
};
|
|
pos.xyz = (gl_Vertex.xyz + (offset.x * _CameraRight));
|
|
pos.xyz = (pos.xyz + (offset.y * _CameraUp));
|
|
vec4 vertex;
|
|
vertex = pos;
|
|
vec4 outColor;
|
|
vec3 waveMove;
|
|
waveMove = vec3(0.0, 0.0, 0.0);
|
|
vec4 tmpvar_3;
|
|
tmpvar_3 = ((fract ((((pos.x * (vec4(0.012, 0.02, 0.06, 0.024) * _WaveAndDistance.y)) + (pos.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_4;
|
|
tmpvar_4 = (tmpvar_3 * tmpvar_3);
|
|
vec4 tmpvar_5;
|
|
tmpvar_5 = (tmpvar_4 * tmpvar_3);
|
|
vec4 tmpvar_6;
|
|
tmpvar_6 = (tmpvar_5 * tmpvar_4);
|
|
vec4 tmpvar_7;
|
|
tmpvar_7 = (((tmpvar_3 + (tmpvar_5 * -0.161616)) + (tmpvar_6 * 0.0083333)) + ((tmpvar_6 * tmpvar_4) * -0.00019841));
|
|
vec4 tmpvar_8;
|
|
tmpvar_8 = (tmpvar_7 * tmpvar_7);
|
|
vec4 tmpvar_9;
|
|
tmpvar_9 = (tmpvar_8 * tmpvar_8);
|
|
vec4 tmpvar_10;
|
|
tmpvar_10 = (tmpvar_9 * TANGENT.y);
|
|
waveMove.x = dot (tmpvar_10, vec4(0.024, 0.04, -0.12, 0.096));
|
|
waveMove.z = dot (tmpvar_10, vec4(0.006, 0.02, -0.02, 0.1));
|
|
vertex.xz = (pos.xz - (waveMove.xz * _WaveAndDistance.z));
|
|
outColor.xyz = ((gl_Color.xyz * mix (vec3(0.5, 0.5, 0.5), _WavingTint.xyz, vec3((dot (tmpvar_9, vec4(0.6742, 0.6742, 0.26968, 0.13484)) * 0.7)))) * 2.0);
|
|
outColor.w = 1.0;
|
|
vec4 tmpvar_11;
|
|
tmpvar_11 = (gl_ModelViewProjectionMatrix * vertex);
|
|
mat3 tmpvar_12;
|
|
tmpvar_12[0] = _Object2World[0].xyz;
|
|
tmpvar_12[1] = _Object2World[1].xyz;
|
|
tmpvar_12[2] = _Object2World[2].xyz;
|
|
gl_Position = tmpvar_11;
|
|
vec4 tmpvar_13;
|
|
tmpvar_13.yzw = vec3(0.0, 0.0, 0.0);
|
|
tmpvar_13.x = tmpvar_11.z;
|
|
xlv_FOG = tmpvar_13;
|
|
vec4 tmpvar_14;
|
|
tmpvar_14.zw = vec2(0.0, 0.0);
|
|
tmpvar_14.xy = ((gl_MultiTexCoord0.xy * _MainTex_ST.xy) + _MainTex_ST.zw);
|
|
gl_TexCoord[0] = tmpvar_14;
|
|
gl_FrontColor = outColor;
|
|
vec4 tmpvar_15;
|
|
tmpvar_15.w = 0.0;
|
|
tmpvar_15.xyz = (tmpvar_12 * (gl_Normal * unity_Scale.w));
|
|
gl_TexCoord[1] = tmpvar_15;
|
|
vec4 tmpvar_16;
|
|
tmpvar_16.w = 0.0;
|
|
tmpvar_16.xyz = (_WorldSpaceLightPos0.xyz - (_Object2World * vertex).xyz);
|
|
gl_TexCoord[2] = tmpvar_16;
|
|
vec4 tmpvar_17;
|
|
tmpvar_17.w = 0.0;
|
|
tmpvar_17.xyz = (_LightMatrix0 * (_Object2World * vertex)).xyz;
|
|
gl_TexCoord[3] = tmpvar_17;
|
|
}
|
|
|