cocos2d-x图片变灰或者变亮
//根据现有CCSprite,变亮和变灰CCSprite*
FlyLeaf::graylightWithCCSprite(CCSprite* oldSprite,bool isLight){ //CCSprite转成CCimage CCPoint
p = oldSprite->getAnchorPoint(); oldSprite->setAnchorPoint(ccp(0,0)); CCRenderTexture
*outTexture = CCRenderTexture::create((int)oldSprite->getContentSize().width,(int)oldSprite->getContentSize().height); outTexture->begin(); oldSprite->visit(); outTexture->end(); oldSprite->setAnchorPoint(p); CCImage*
finalImage = outTexture->newCCImage(); unsigned char *pData
= finalImage->getData(); int iIndex
= 0; if(isLight) { for (int i
= 0; i < finalImage->getHeight(); i ++) { for (int j
= 0; j < finalImage->getWidth(); j ++) { //
highlight int iHightlightPlus
= 50; int iBPos
= iIndex; unsigned int iB
= pData[iIndex]; iIndex
++; unsigned int iG
= pData[iIndex]; iIndex
++; unsigned int iR
= pData[iIndex]; iIndex
++; //unsigned
int o = pData[iIndex]; iIndex
++; //原来的示例缺少 iB
= (iB + iHightlightPlus > 255 ? 255 : iB + iHightlightPlus); iG
= (iG + iHightlightPlus > 255 ? 255 : iG + iHightlightPlus); iR
= (iR + iHightlightPlus > 255 ? 255 : iR + iHightlightPlus); pData[iBPos]
= (unsigned char)iB; pData[iBPos
+ 1] = (unsigned char)iG; pData[iBPos
+ 2] = (unsigned char)iR; } } }else{ for (int i
= 0; i < finalImage->getHeight(); i ++) { for (int j
= 0; j < finalImage->getWidth(); j ++) { //
gray int iBPos
= iIndex; unsigned int iB
= pData[iIndex]; iIndex
++; unsigned int iG
= pData[iIndex]; iIndex
++; unsigned int iR
= pData[iIndex]; iIndex
++; //unsigned
int o = pData[iIndex]; iIndex
++; //原来的示例缺少 unsigned int iGray
= 0.299 * iR + 0.587 * iG + 0.114 * iB; pData[iBPos]
= pData[iBPos + 1] = pData[iBPos + 2] = (unsigned char)iGray; } } } CCTexture2D
*texture = new CCTexture2D; texture->initWithImage(finalImage); CCSprite*
newSprite = CCSprite::createWithTexture(texture); delete finalImage; texture->release(); return newSprite;}cocos2d-x图片变灰或者变亮的更多相关文章
- CSS使图片变灰
为了悼念,各大网站都纷纷将自己的站点颜色调灰,就连图片也一样,到底如何实现的呢,请看下面的代码. 〈img src="http://hovertree.com/hvtimg/201512/f ...
- NGUI 图片变灰
效果图 1.先准备好一个变灰shader.代码如下 Shader "Custom/Gray" { Properties { _MainTex ("Base (RGB), ...
- c# winform 把彩色图片转换为灰色的图片,变灰,灰度图片,速度很快,safe,unsafe
把彩色图片转换为灰色的图片,直接用.net接口遍历每个像素点转换的效率非常低,800K的图片65万像素我的电脑要用5分钟,而用了unsafe,速度提高了几千倍,同样的图片只用了0.几秒 附一个常用的遍 ...
- Unity图片变灰的方式
http://www.tuicool.com/articles/Vruuqme NGUI中的Button差点儿是最经常使用到的控件之中的一个,而且能够组合各种组件(比方UIButtonColor,UI ...
- JAVA彩色图片变灰处理
File file = new File("F:/firefox.png"); File destFile = new File("F:/pic/" + Sys ...
- 图片变灰css3
-webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filte ...
- css3图片变灰
html{ filter:grayscale(100%); -webkit-filter:grayscale(100%); -moz-filter:grayscale(100%); -ms-filte ...
- 关于cocos2d-x精灵加亮及变灰效果
//根据现有CCSprite,变亮和变灰 static CCSprite* graylightWithCCSprite(CCSprite* oldSprite,bool isLight) { //CC ...
- 怎么让让整个HTML页面变灰
怎么让让整个HTML页面变灰 其实很简单,我们只需要一句话. html {filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1 ...
随机推荐
- OAuth2.0和SSO授权的区别
OAuth2.0和SSO授权 一.OAuth2.0授权协议 一种安全的登陆协议,用户提交的账户密码不提交到本APP,而是提交到授权服务器,待服务器确认后,返回本APP一个访问令牌,本APP即可用该 ...
- 详细讲解 关于Linux静态库和动态库的分析
基本概念 库有动态与静态两种,动态通常用.so为后缀,静态用.a为后缀. 例如:libhello.so libhello.a 为了在同一系统中使用不同版本的库,可以在库文件名后加上版本号为后缀,例如: ...
- Android开发之创建桌面快捷方式
Android创建桌面快捷方式就是在桌面这个应用上创建一个快捷方式,桌面应用:launcher2 通过查看launcher2的清单文件: <!-- Intent received used to ...
- Linux 下查看文件字符编码和转换编码
Linux 下查看文件字符编码和转换编码 如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题.Windows中默认的文件格式是GBK(gb2312),而Linu ...
- 一个简单的ORM制作(SQL帮助类)
一个简单的ORM制作大概需要以下几个类: SQL执行类 CURD操作类 其他酱油类 先从SQL执行类说起,可能会涉及数据库的迁移等问题,所以需要定义一个接口以方便迁移到其他数据库, 事务没提供命名,若 ...
- 用JAVA代码构造一个日历
package day0603; import java.text.ParseException; import java.text.SimpleDateFormat; import java.uti ...
- 原创:js代码, 让dedecms支持Tag选择, 添加内容更为方便,不用手输Tag
dedecms在编辑修改内容时,TAG标签需要手动输,中文的Tag, 中间还得用半角字符','分隔, 输入法切来切去很不方便, 于是动手改后台代码, 利用后台的tags_main.php, 让d ...
- 纯CSS3带动画效果导航菜单
随着互联网的发展,网页能表现的东西越来越多.由最开始单纯的文字和链接构成的网页,到后来的表格布局,再到div+css模式,现在发展到了html+css3.网页能表达的东西越来越多,css3兴起已经很多 ...
- ffmpeg Windows下采集摄像头一帧数据,并保存为bmp图片
这里请注意,在编译ffmpeg时,不要使用--disable-devices选项. 使用 --enable-encoder=rawvideo --enable-decoder=rawvideo 启用r ...
- MVC&WebForm对照学习:ajax异步请求
写在前面:由于工作需要,本人刚接触asp.net mvc,虽然webform的项目干过几个.但是也不是很精通.抛开asp.net webform和asp.net mvc的各自优劣和诸多差异先不说.我认 ...