ScreenShot with CCRenderTexture has bug for CCClipingNode

      CCSize size = CCDirector::sharedDirector()->getWinSize();
        CCRenderTexture* screen = CCRenderTexture::create(size.width, size.height);
        screen->begin();   
        CCClippingNode* clipper = CCClippingNode::create();
        clipper->setContentSize(CCSizeMake(100, 100));      
        clipper->setZOrder(10000);
        CCDrawNode *stencil = CCDrawNode::create();
        //创建一个矩形并填充为clipper的大小。
        CCPoint rectangle[4];
        rectangle[0] = ccp(0, 0);
        rectangle[1] = ccp(clipper->getContentSize().width, 0);
        rectangle[2] = ccp(clipper->getContentSize().width, clipper->getContentSize().height);
        rectangle[3] = ccp(0, clipper->getContentSize().height);
        //由图形绘制结点来调用区域绘制函数将白色填充相应的矩形区域。
        ccColor4F white = {1, 1, 1, 1};
        stencil->drawPolygon(rectangle, 4, white, 1, white);
        //将图形绘制结点设置为clipper的模版缓冲遮罩结点。
        clipper->setStencil(stencil);
        //创建一个被遮罩遮住的精灵结点。
        CCSprite *content = CCSprite::create("UI/Main/tree_bg_up.png");
        //设置锚点。
        content->setAnchorPoint(  ccp(0.5, 0.5) );
        //设置位置,就放在clipper的中心位置。
        content->setPosition( ccp(clipper->getContentSize().width / 2, clipper->getContentSize().height / 2) );
        //放入到clipper中。
        clipper->addChild(content);
        clipper->visit();   
        screen->end();
        screen->saveToFile("share.png", kCCImageFormatPNG);

i can’t get the clipped sprite in CCRenderTexture; who can help me


share.png (131.7 KB)

“i can’t get the clipped sprite in CCRenderTexture;” means you can’t find this sprite when runing on your phone or simulator?

Shujun Qiao wrote:

“i can’t get the clipped sprite in CCRenderTexture;” means you can’t find this sprite when runing on your phone or simulator?

i mean

        CCSize size = CCDirector::sharedDirector()->getWinSize();
        CCRenderTexture* screen = CCRenderTexture::create(size.width, size.height);
        CCScene* temp = CCDirector::sharedDirector()->getRunningScene();
        screen->begin();
        temp->visit();
        screen->end();
        screen->saveToFile("share.png", kCCImageFormatPNG);

has something wrong when there are some CCClipingNode in the CCScene

so i wrote an test up