const renderEngine = cc.renderer.renderEngine; const renderer = renderEngine.renderer; let ShaderMaterial = require('ShaderMaterial'); const shader = { name: 'Grass', params: [ { name: 'u_cPos', type: renderer.PARAM_FLOAT2 }, // { name: 'u_mPos', type: renderer.PARAM_FLOAT2 }, // { name: 'u_width', type: renderer.PARAM_FLOAT }, // { name: 'u_height', type: renderer.PARAM_FLOAT }, { name: 'u_dis', type: renderer.PARAM_FLOAT }, { name: 'u_plus', type: renderer.PARAM_FLOAT }, ], start(material,params) { material.setParamValue('u_cPos', cc.v2(0,0)); material.setParamValue('u_dis', params.distance); material.setParamValue('u_plus', params.plus); // material.setParamValue('u_mPos', cc.v2(params.pos.x,params.pos.y));// // material.setParamValue('u_width', params.width); // material.setParamValue('u_height', params.height); }, defines:[], frag: `uniform sampler2D texture; uniform vec4 color; varying vec2 uv0; varying vec2 uv1; varying vec2 uv2; varying vec2 uv3; uniform vec2 u_cPos; uniform float u_dis; uniform float u_plus; void main() { vec4 src_color = texture2D(texture, uv0).rgba; vec2 rpos = vec2(uv2.x + uv3.x*uv1.x , uv2.y + uv3.y*uv1.y ); float dis = distance(rpos,u_cPos); if(dis