2.2.6版本CCClippingNode有BUG

本人从2.2.3升上来的版本…发现某些裁剪出现异常
比对了一下代码…在CCClippingNode::init里面glClear被注释掉了…
求解?这是BUG

比对了一下代码…在CCClippingNode::init里面glClear被注释掉了…
上面写错了…glClear是在CCClippingNode::visit里面

请给出异常重现的代码。感谢~

以下测试代码是代码里面抽离出来…
描述:在一个精灵底板上跑一个闪动的特效(采用裁剪节点的原因是可以根据透明度来裁剪)…
出现的BUG:在2.2.6的版本中,裁剪的区域不正确…
解决方法:在CCClippingNode::visit里面把glClear注释去掉来解决

CCSprite* pScreenSpr = CCSprite::createWithSpriteFrameName(“XXX1.PNG”);//用于显示在屏幕的精灵模板
CCClippingNode* pClippingNode = CCClippingNode::create();//创建裁剪节点
CCSprite* pDisPlaySpr = CCSprite::createWithSpriteFrameName(“XXX1.PNG”);//用于显示在屏幕的精灵模板,和pScreenSpr 一样

pDisPlaySpr->setAnchorPoint(ccp(0 , 0));//这个的锚点很重要啊…必须和ClippingNode一样
pClippingNode->setStencil(pDisPlaySpr);
pClippingNode->setAlphaThreshold(0.8f);//设置透明度阈值

pClippingNode->setContentSize(CCSize(pDisPlaySpr ->boundingBox().size.width ,pDisPlaySpr ->boundingBox().size.height));//设置裁剪节点大小
pClippingNode->setAnchorPoint(ccp(0.0f , 0.0f));

CCSprite* m_pSparkEffectSpr = CCSprite::createWithSpriteFrameName(“XXX2.PNG”);//盖在上面精灵的闪动特效

//设置闪亮精灵位置
m_pSparkEffectSpr->setPosition(ccp(-m_pSparkEffectSpr->boundingBox().size.width / 2 , m_pSparkEffectSpr->boundingBox().size.height / 2));

m_pSparkEffectSpr->runAction(
CCRepeatForever::create(
CCSequence::create(
CCPlace::create(ccp(-m_pSparkEffectSpr->boundingBox().size.width / 2 , m_pSparkEffectSpr->boundingBox().size.height / 2)) ,
CCMoveBy::create(0.5f , ccp((pClippingNode->boundingBox().size.width + (m_pSparkEffectSpr->boundingBox().size.width)) , 0)) ,
CCMoveBy::create(0.5f , ccp(-(pClippingNode->boundingBox().size.width + (m_pSparkEffectSpr->boundingBox().size.width)) , 0)) ,
CCDelayTime::create(2.0f) ,
NULL)));

//添加闪亮精灵到裁剪节点
pClippingNode->addChild(m_pSparkEffectSpr);
//把特效加入到控件所在ScreenSpr的子节点里...
pClippingNode->setPosition(ccp(0 , 0));
pScreenSpr->addChild(pClippingNode);

CCSence::addChild(pScreenSpr );

mark .:7::7:

请问下,确认这个问题了么?

的确有问题
将这行glclear加回去就行了

我也遇到这个问题了。这个确认是bug不?

确认中,稍后会给您答复。

遇到了同样的问题

确实有这个BUG啊~~~~还好我找到这个帖子

版主,这是为啥啊:10::10::10::10::10:

为嘛我靠你的代码下来,没发现有什么问题哈!!!

补充下,我的是quick 2.2.6