optimized for 3.0(using RenderTexture)