![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Shader
operhero1990
operhero.github.io
展开
-
Cocos2D-X shader(四) 利用shader改变图片色相(Hue)
背景美术给出一套资源后,可以通过改变图片色相,复用同一套资源产生出多套资源的效果:上图中蓝色是原始图片,利用代码改变图片色相后,可以产生效果差异明显的资源出来。像一些传统的游戏,如星际争霸等,都是通过这种技术实现了同一兵种,不同颜色种族的特效。实现理论原理看上去非常神奇的转换,实际上是利用了HSV格式图像处理的技术:传统RGB模型:RGB是一种加色模式 将不原创 2015-12-14 14:46:05 · 6728 阅读 · 0 评论 -
Cocos2D-X shader(三) Shader and Program编程基本概念
一、本文关注的问题:• Shader and program 对象介绍• 创建并编译一个Shader对象• 创建并链接一个Program对象• 获取并设置uniforms• 获取并设置attributes 在OpenGL ES中,每个program对象有且仅有一个Vertex Shader对象和一个Fragment Shader对象连接到它。转载 2015-12-12 14:48:48 · 3052 阅读 · 0 评论 -
Cocos2D-X shader(二) OpenGL渲染管线
OpenGL渲染管线 Cocos2D-X底层是基于OpenGL的,所以在变现我们自己的Shader之前,得了解一下渲染管线的知识。如上图所示,OpenGL的渲染管线主要包括: 1、准备顶点数据(通过VBO--顶点缓冲区对象,VAO--顶点数组对象和Vertex attribute来传递数据给OpenGL) 2、顶点处理(这里主要由Vertex Sha原创 2015-12-10 11:34:12 · 2560 阅读 · 0 评论 -
Cocos2D-X shader(五) cocostudio导出界面置灰及复原lua实现版
利用cocostudio导出的界面,实现界面置灰与复原效果:需要变色的有三种类型控件:普通图片(ImageView),九宫格切图(Scale9Sprite)以及文字(Text)普通图片普通图片比较容易处理,可以直接使用shader来实现。先来看shader代码:-- 默认vertlocal vertDefaultSource = "\n"..原创 2015-12-29 18:03:44 · 4392 阅读 · 0 评论 -
Cocos2D-X shader(一) 渲染机制
Cocos2D-X渲染机制 Cocos2D-X 从3.0开始引入了一种新的渲染机制,所有的OpenGL渲染代码不再放到每一个node的draw函数里面,而是通过各种RenderCommand封装起来,然后添加到一个渲染队列里面去,最后在每一帧结束时把所有的这些命令都渲染出来。过程如下图所示: 引擎不再使用主线程,而是开辟新的线程对队列中的任务统一进行渲染,这有助于并原创 2015-12-08 11:25:11 · 3509 阅读 · 0 评论