Das Zeichnen von Bildern mit CoreGraphics auf dem Retina iPad ist langsam

In meiner iPad-App rendere ich zu einer Offscreen-Bitmap und zeichne die Bitmap dann auf den Bildschirm. (Das liegt daran, dass ich vorhandenen Bitmap-Rendering-Code wiederverwenden möchte.) Auf dem iPad 2 funktioniert dies wie ein Zauber, aber auf dem neuen iPad mit Retina-Display ist das Zeichnen der Bitmap sehr langsam, obwohl die Auflösung immer noch die ist gleich.

Zum Zeichnen der Bitmap verwenden wir die regulären Quartz 2D-Funktionen:CGImageCreate mit einem Datenprovider erstellt vonCGDataProviderCreateWithData32-Bit-RGBA-Format mitkCGImageAlphaNoneSkipLast. In demUIView das zeigt die Bitmap, indrawRect:, wir gebrauchenCGContextDrawImage um es auf den von zurückgegebenen Kontext zu ziehenUIGraphicsGetCurrentContext.

Beachten Sie, dass ich nicht einmal versuche, mit doppelter Auflösung zu zeichnen: Im Moment kann ich die gleiche Auflösung wie auf dem iPad 2 verwenden. Es sieht so aus, als würde CoreGraphics die Pixel intern verdoppeln und diese dann an die GPU senden , obwohl dieCGImage dass ich mache sollte gut für die Übergabe an die GPU direkt sein. Irgendwelche Ideen?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage