Tôi vừa mới bắt đầu chơi một chút với bóng râm. Có rất nhiều tài liệu trên web để đọc và thử. Tôi sẽ chỉ cho bạn theo hướng của một số url tôi thấy hữu ích để có thể hiểu làm thế nào/những gì họ làm .. mà có thể giúp bạn bắt đầu.
đơn giản hướng dẫn để đạt được một hiệu ứng tông màu xám với shader (Cocos2D)
http://www.shaderdev.com/2013/09/16/full-scene-shader-effects-how-to-create-a-grayscale-pause-screen-using-ccrendertexture/
Mã hóa thí nghiệm blogpost: lớn đang tìm kiếm hiệu ứng đổ bóng. Đây là shader tôi chia sẻ cho Cocos2d dưới đây ...
http://coding-experiments.blogspot.com/2010/06/frosted-glass.html
Với những bạn chắc chắn trên con đường của bạn. Hãy sử dụng các trình đổ bóng bên dưới nếu bạn thấy chúng hữu ích, chúng được lấy từ url thứ hai.
vertex
attribute vec4 a_position;
attirbute vec4 a_color;
attribute vec2 a_texCoord;
uniform mat4 u_MVPMatrix;
varying lowp vec2 v_fragmentColor;
varying lowp vec2 v_texCoord;
void main()
{
gl_Position = CC_MVPMatrix * a_position;
v_fragmentColor = a_color;
v_texCoord = a_texCoord;
}
fragment shader
varying lowp vec4 v_fragmentColor;
varying lowp vec2 v_texCoord;
uniform sampler2D u_texture;
float rand(vec2 co)
{
return fract(sin(dot(co.xy ,vec2(92.,80.))) +
cos(dot(co.xy ,vec2(41.,62.))) * 5.1);
}
void main()
{
vec2 rnd = vec2(0.0);
rnd = vec2(rand(v_texCoord),rand(v_texCoord));
glFragColor = texture2D(u_texture, v_texCoord+rnd*0.05);
}