On 25.11.2016 at 16:29 David Duncan wrote: > The fastest method without OpenGL is to work with CGImage directly > and assign the image as the contents of a CALayer.
> This will engage CoreAnimation to use the hardware to scale the > image, but is still not quite as fast as OpenGL for the same task. > Roughly you'll want to look at CGImageCreate and > CGDataProviderCreate (there are a number of variants of the latter). Thanks, I've just tried this and the performance seems reasonably well. I don't know how fast direct OpenGL would be but it looks like the CALayer approach is already sufficiently fast enough. But just to make sure I implemented this in the right way: Assigning the image as the contents of my view's CALayer means that I shouldn't draw in drawRect() at all but just do the following whenever I need to draw a new frame: myImage = CGImageCreate(...); view.layer.contents = (id) myImage; CGImageRelease(myImage); Is that right? I have to create a new CGImageRef for every frame I draw because CGImages are immutable objects, right? And to scale the whole shebang from 320x240 to full screen I just set view.transform = CGAffineTransformScale(CGAffineTransformIdentity, scalex, scaley); Or is there a better way to force a view into full screen by scaling? -- Best regards, Andreas Falkenhahn mailto:andr...@falkenhahn.com _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com