Image* NailFlash::getRenderImg()
{
nailContainer->visit();
return nullptr;
/*auto renderCopy = RenderTexture::create(getContentSize().width, getContentSize().height, Texture2D::PixelFormat::RGBA8888, GL_DEPTH24_STENCIL8);
nailContainer->setPosition(getContentSize() / 2);//1. 设置偏移
renderCopy->beginWithClear(1,0,0,0.5f);
nailContainer->getChildByName("clipp_finger")->visit();
renderCopy->end();
nailContainer->setPosition(Vec2::ZERO);//2. 恢复
Director::getInstance()->getRenderer()->render();
auto img = renderCopy->newImage();
img->autorelease();
return img;*/
}
```
NailFlash继承自Sprite,nailContainer是一个node(pos是Zero),里面有裁剪节点clipp_finger。
直接调用上面的方法,会发现nailContainer位置偏移了,准确的说是图像偏移了,位置并没有改变。
把下面的注释掉就正常了,但是我并不知道1和2有什么用处对于nailContainer。我只是调用nailContainer的visit想渲染到另外的renderTexture里面,怎么会影响到nailContainer在场景里图像的位置呢。