[1,0,0,[["cc.EffectAsset",["_name","shaders","techniques"],0]],[[0,0,1,2,4]],[[0,"LightLine",[{"hash":3157041985,"record":null,"name":"LightLine|vs|fs","glsl3":{"vert":"uniform CCGlobal {\n  mat4 cc_matView;\n  mat4 cc_matViewInv;\n  mat4 cc_matProj;\n  mat4 cc_matProjInv;\n  mat4 cc_matViewProj;\n  mat4 cc_matViewProjInv;\n  vec4 cc_cameraPos;\n  vec4 cc_time;\n  mediump vec4 cc_screenSize;\n  mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n  mat4 cc_matWorld;\n  mat4 cc_matWorldIT;\n};\nprecision highp float;\nin vec3 a_position;\nin vec4 a_color;\nout vec4 v_color;\nvoid main () {\n  vec4 pos = vec4(a_position, 1);\n  #if CC_USE_MODEL\n  pos = cc_matViewProj * cc_matWorld * pos;\n  #else\n  pos = cc_matViewProj * pos;\n  #endif\n  #if USE_TEXTURE\n  v_uv0 = a_uv0;\n  #endif\n  v_color = a_color;\n  gl_Position = pos;\n}","frag":"\nprecision highp float;\n#if USE_ALPHA_TEST\n  uniform ALPHA_TEST {\n    float alphaThreshold;\n  };\n#endif\nin vec4 v_color;\nuniform ARGS{\n  float speed;\n  float amp;\n  float phase;\n  float time;\n};\nuniform ARGS1{\n  vec2 resolution;\n};\nuniform sampler2D texture;\nvoid main () {\n  float x = -0.2 * 6.;\n  float y = -0.2 * 3.;\n  vec2 p = ( gl_FragCoord.yx / resolution.yx ) - 0.2;\n  float sx = (y)*0.8 * sin( 10.0 * (x) * (p.x-phase) - 5. * (speed)*time );\n  float dy = 4. / ( 30. * abs(3.9*p.y - sx - 1.2));\n  vec4 c = vec4( (p.x + 0.4) * dy, 0.3 * dy, dy, 3.0 );\n  float a = 1.0;\n  if(c.r < 0.95 || c.g < 0.95 || c.b < 0.95) {\n    a = 0.;\n  }\n  gl_FragColor = vec4( (p.x + 0.4) * dy, 0.3 * dy, dy, a );\n}"},"glsl1":{"vert":"uniform mat4 cc_matViewProj;\nuniform mat4 cc_matWorld;\nprecision highp float;\nattribute vec3 a_position;\nattribute vec4 a_color;\nvarying vec4 v_color;\nvoid main () {\n  vec4 pos = vec4(a_position, 1);\n  #if CC_USE_MODEL\n  pos = cc_matViewProj * cc_matWorld * pos;\n  #else\n  pos = cc_matViewProj * pos;\n  #endif\n  #if USE_TEXTURE\n  v_uv0 = a_uv0;\n  #endif\n  v_color = a_color;\n  gl_Position = pos;\n}","frag":"\nprecision highp float;\n#if USE_ALPHA_TEST\n#endif\nvarying vec4 v_color;\nuniform float speed;\nuniform float phase;\nuniform float time;\nuniform vec2 resolution;\nuniform sampler2D texture;\nvoid main () {\n  float x = -0.2 * 6.;\n  float y = -0.2 * 3.;\n  vec2 p = ( gl_FragCoord.yx / resolution.yx ) - 0.2;\n  float sx = (y)*0.8 * sin( 10.0 * (x) * (p.x-phase) - 5. * (speed)*time );\n  float dy = 4. / ( 30. * abs(3.9*p.y - sx - 1.2));\n  vec4 c = vec4( (p.x + 0.4) * dy, 0.3 * dy, dy, 3.0 );\n  float a = 1.0;\n  if(c.r < 0.95 || c.g < 0.95 || c.b < 0.95) {\n    a = 0.;\n  }\n  gl_FragColor = vec4( (p.x + 0.4) * dy, 0.3 * dy, dy, a );\n}"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[{"name":"CCLocal","defines":[]}],"samplers":[]}},"defines":[{"name":"CC_USE_MODEL","type":"boolean","defines":[]},{"name":"USE_TEXTURE","type":"boolean","defines":[]},{"name":"USE_ALPHA_TEST","type":"boolean","defines":[]}],"blocks":[{"name":"ALPHA_TEST","binding":0,"members":[{"name":"alphaThreshold","type":13,"count":1}],"defines":["USE_ALPHA_TEST"]},{"name":"ARGS","binding":1,"members":[{"name":"speed","type":13,"count":1},{"name":"amp","type":13,"count":1},{"name":"phase","type":13,"count":1},{"name":"time","type":13,"count":1}],"defines":[]},{"name":"ARGS1","binding":2,"members":[{"name":"resolution","type":14,"count":1}],"defines":[]}],"samplers":[{"name":"texture","type":29,"count":1,"binding":30,"defines":[]}]}],[{"passes":[{"program":"LightLine|vs|fs","blendState":{"targets":[{"blend":true}]},"rasterizerState":{"cullMode":0},"properties":{"texture":{"value":"white","type":29},"alphaThreshold":{"type":13,"value":[0.2]},"speed":{"type":13,"value":[0.5]},"amp":{"type":13,"value":[1.2]},"resolution":{"type":14,"value":[360,100.5]},"phase":{"type":13,"value":[10]},"time":{"type":13,"value":[0.5]}}}]}]]],0,0,[],[],[]]