const renderEngine = cc.renderer.renderEngine; const renderer = renderEngine.renderer; let ShaderMaterial = require('ShaderMaterial'); const shader = { name: 'uvanimation', params: [ { name: 'time', type: renderer.PARAM_FLOAT }, // { name: 'dtime', type: renderer.PARAM_FLOAT }, // { name: 'offset', type: renderer.PARAM_FLOAT }, // { name: 'linewidth', type: renderer.PARAM_FLOAT }, // { name: 'linecolor', type: renderer.PARAM_FLOAT3 }, // { name: 'ymode', type: renderer.PARAM_INT }, ], start(material,params) { material.setParamValue('time', 0); }, defines:[], // vert: ` // uniform mat4 viewProj; // attribute vec3 a_position; // attribute vec2 a_uv0; // varying vec2 uv0; // void main () { // vec4 pos = viewProj * vec4(a_position, 1); // gl_Position = pos; // uv0 = a_uv0; // }`, frag: `uniform sampler2D texture; uniform vec4 color; uniform float time; varying vec2 uv0; void main() { vec2 offset = vec2(0, time); gl_FragColor = texture2D(texture, uv0 + offset); }`, }; ShaderMaterial.addShader(shader);