void LayerTestBlend::newBlend(float dt) { CCLayerColor *layer = (CCLayerColor*)getChildByTag(kTagLayer); GLenum src; GLenum dst; if( layer->getBlendFunc().dst == GL_ZERO ) { src = GL_SRC_ALPHA; dst = GL_ONE_MINUS_SRC_ALPHA; } else { src = GL_ONE_MINUS_DST_COLOR; dst = GL_ZERO; } ccBlendFunc bf = {src, dst}; layer->setBlendFunc( bf ); }