You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

98 lines
2.3 KiB
Plaintext

4 years ago
Shader "QO/Effect/Transition1" {
Properties {
_tex0 ("_tex0 : Original Image (RGBA)", 2D) = "white" {}
_tex1 ("_tex1 : Transform Image (RGBA)", 2D) = "white" {}
_tex2 ("_tex2 : Pattern (GrayScale)", 2D) = "white" {}
_time ("_time : TimeRate", Range(0,1)) = 0
_grad ("_grad : Gradation Level", Float) = 0.1
}
SubShader {
LOD 200
Tags { "QUEUE"="Transparent" "RenderType"="Transparent" }
Pass {
Tags { "QUEUE"="Transparent" "RenderType"="Transparent" }
Blend SrcAlpha OneMinusSrcAlpha
Program "vp" {
SubProgram "gles " {
"!!GLES
#ifdef VERTEX
varying lowp vec2 xlv_TEXCOORD0;
varying lowp vec4 xlv_COLOR0;
uniform highp mat4 glstate_matrix_mvp;
attribute vec4 _glesMultiTexCoord0;
attribute vec4 _glesVertex;
void main ()
{
lowp vec2 tmpvar_1;
highp vec2 tmpvar_2;
tmpvar_2 = _glesMultiTexCoord0.xy;
tmpvar_1 = tmpvar_2;
gl_Position = (glstate_matrix_mvp * _glesVertex);
xlv_COLOR0 = vec4(1.0, 1.0, 1.0, 1.0);
xlv_TEXCOORD0 = tmpvar_1;
}
#endif
#ifdef FRAGMENT
varying lowp vec2 xlv_TEXCOORD0;
uniform lowp float _grad;
uniform lowp float _time;
uniform sampler2D _tex2;
uniform sampler2D _tex1;
uniform sampler2D _tex0;
void main ()
{
mediump float grad_1;
mediump vec4 toImage_2;
mediump vec4 fromImage_3;
mediump vec3 trans_4;
lowp vec3 tmpvar_5;
tmpvar_5 = texture2D (_tex2, xlv_TEXCOORD0).xyz;
trans_4 = tmpvar_5;
lowp vec4 tmpvar_6;
tmpvar_6.w = 1.0;
tmpvar_6.xyz = texture2D (_tex0, xlv_TEXCOORD0).xyz;
fromImage_3 = tmpvar_6;
lowp vec4 tmpvar_7;
tmpvar_7.w = 1.0;
tmpvar_7.xyz = texture2D (_tex1, xlv_TEXCOORD0).xyz;
toImage_2 = tmpvar_7;
lowp float tmpvar_8;
tmpvar_8 = (_grad * 0.5);
grad_1 = tmpvar_8;
mediump float tmpvar_9;
tmpvar_9 = max (0.0, (trans_4.x - grad_1));
mediump float t_10;
t_10 = max (min (((_time - tmpvar_9) / (min (1.0, (trans_4.x + grad_1)) - tmpvar_9)), 1.0), 0.0);
mediump vec4 tmpvar_11;
tmpvar_11.xyz = toImage_2.xyz;
tmpvar_11.w = (toImage_2.w * (t_10 * (t_10 * (3.0 - (2.0 * t_10)))));
mediump vec4 tmpvar_12;
tmpvar_12.xyz = fromImage_3.xyz;
tmpvar_12.w = (1.0 - tmpvar_11.w);
mediump vec4 tmpvar_13;
tmpvar_13.xyz = ((toImage_2.xyz * tmpvar_11.w) + (fromImage_3.xyz * tmpvar_12.w));
tmpvar_13.w = (tmpvar_11.w + tmpvar_12.w);
gl_FragData[0] = tmpvar_13;
}
#endif"
}
}
Program "fp" {
SubProgram "gles " {
"!!GLES"
}
}
}
}
Fallback "VertexLit"
}