Cocos2d-x中让CCSprite变灰(Gray)的简单办法

本文介绍了在Cocos2d-x中如何为CCSprite添加灰度(Gray)效果。由于Cocos2d-x本身不提供此功能,开发者需要自定义实现。文章提供了具体的CCColorUtil.cpp和CCColorUtil.h的代码示例。
摘要由CSDN通过智能技术生成

之前一直做flash开发,像变灰,高亮,描边了这些效果非常容易实现,有现成的api直接调用即可,cocos2d-x并没有提供,所以遇到这种需求就得硬着都头寻求解决方案了,废话不多说,直接上代码:

CCColorUtil.cpp:

//
//  CCColorUtil.cpp
//  quickcocos2dx
//
//  Created by Terran Tian on 13-11-19.
//  Copyright (c) 2013年 qeeplay.com. All rights reserved.
//
#include "CCColorUtil.h"
#include "cocos2d.h"
using namespace cocos2d;
void CCColorUtil::addGray(CCSprite* sp)
{
    do
    {
        CCGLProgram* pProgram = CCShaderCache::sharedShaderCache()->programForKey(kCCShader_PositionTextureGray);
		sp->setShaderProgram(pProgram);
		CHECK_GL_ERROR_DEBUG();
        
		sp->getShaderProgram()->addAttribute(kCCAttributeNamePosition, kCCVertexAttrib_Position);
		sp->getShaderProgram()->addAttribute(kCCAttributeNameColor, kCCVertexAttrib_Color);
		sp->getShaderProgram()->addAttribute(kCCAttributeN
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值