Cocos2d-x中让CCSprite变灰(Gray)的简单办法 提到了一个简单的让ccsprite变灰的办法,此篇文章在此基础上做了些改进,添加了对
CCSpriteBatchNode的支持,并能递归使用,递归是在lua中实现的,当然你可以直接在C++中实现。
c++代码如下:
//
// 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::s