shader实现图片阴影
来源:互联网 发布:mac淘宝卖家 编辑:程序博客网 时间:2024/05/18 17:58
1.代码
auto sprite = Sprite::create("HelloWorld.png");sprite->setPosition(Vec2(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y));this->addChild(sprite, 0); auto shader = GLProgram::createWithFilenames("shadow.vsh", "shadow.fsh");shader->use();shader->setUniformsForBuiltins();sprite->setGLProgram(shader);2.shadow.vsh
attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;void main(){ gl_Position = CC_PMatrix * a_position; v_texCoord = a_texCoord;}3.shadow.fsh
varying vec2 v_texCoord;vec4 composite(vec4 over, vec4 under){ return over + (1.0 - over.a) * under;} void main(){ vec2 shadowOffset = vec2(0.03, 0.03); vec4 textureColor = texture2D(CC_Texture0, v_texCoord + shadowOffset); float shadowMask = texture2D(CC_Texture0, v_texCoord).a; const float shadowOpacity = 0.5; vec4 shadowColor = vec4(0, 0, 0, shadowMask * shadowOpacity); gl_FragColor = composite(textureColor, shadowColor);}
4.效果
原图:
shader后:
0 0
- shader实现图片阴影
- cocos2d-x用shader来实现阴影
- 图片阴影效果的实现
- CSS实现图片阴影效果
- 图片阴影效果的实现
- 图片阴影效果的实现
- Android实现图片阴影效果
- 图片阴影效果的实现
- CSS3实现“图片阴影”效果
- vert fragment shader在unity中如果实现光照阴影
- 【Unity Shader】结合Projector和Rendertexture实现实时阴影
- shader之——移动端阴影实现
- CSS实现页面图片阴影特效
- CSS实现图片阴影效果三部曲
- C#实现图片阴影以及发光
- css3实现的图片边框阴影特效
- 五行CSS实现逼真图片阴影效果
- CALayers 实现带圆角和阴影的图片
- static和transient变量序列化问题
- React学习笔记--通过Redux 的三个基本原则来理解Redux
- Spring Boot CLI DEMO Setup
- 开机修改CentOS7密码
- Hadoop集群中Hbase的介绍、安装、使用
- shader实现图片阴影
- 详解js闭包
- Spring中的所有路径匹配问题总结
- 自动蓄水系统 java小程序(简单小插件开发)
- Spring MVC注解方式service和controller的扫描顺序
- 虚线
- Android开发之Animations(六)
- MBED移植日记:gpio_api移植(基于STM32F107RC)
- 线程与进程的区别