i create kaleidoscope effect from uiview .it use a loft of sublayer and sublayer mask . then i use below code for render uiimage from uiview.
UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0);
[view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage * img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
render image as below:
The problem is the render image doesn't render mask effect.