求教,Sprite怎么获取shader后的新texture,不用RenderTexture

我用shader 改变一个Sprite的texture,比如变成灰色的,然后想用它改变后的texture,除了RenderTexture,有没有其他什么办法,因为RenderTexture效率太低了,加上还要 pRender->newCCImage(true),如果多几张的话,效率肯定不高,这样的话,就还不如直接改变像素 生成新的Image了,求指教~