2012-04-13 26 views
9

Yeni iPad'i (3) aldım ve şu anda CoreGraphics kullanan çizim uygulamamın yüksek çözünürlüklü bir sürümünü test ediyorum.CoreGraphics yeni iPad'de daha mı yavaş?

Normal 1024x768 modunda, iPad performansta az ya da çok benzerdir - hızlı çizerken yalnızca hafif bir gecikme ile.

Ancak, yüksek çözünürlüklü bir tuval üzerine (2048x1536) resim yapmayı denediğimde, uygulama olağandışı bir şekilde yavaş ve laggy olur. Bunun nedeni CoreGraphics'in çoğunlukla işlemci tarafından hesaplandığından (ki bu iPad2'den çok daha hızlı değil) ve 4x daha fazla iş yapması gerektiğinden mi?

Temelde çizim retina etkinleştirmek için

UIGraphicsBeginImageContextWithOptions(CGSizeMake(1024, 768), NO, 0.0); 

için

UIGraphicsBeginImageContext(CGSizeMake(1024, 768)); 

benim çizim rutin değişti ve çizgiler süper güzel ve net ve görüntüler 2048x1536 dışarı kaydedilir. Ancak belirtildiği gibi, gecikme ve gecikme, onu bir çizim aracı olarak işe yaramaz hale getiriyor.

Uygulamamı openGL'de yeniden yazmaktan başka (zaman kısıtlamaları ve kritik karıştırma modunda daha önceki başarısız denemeler nedeniyle bir seçenek değil), yeni iPad'de retina modunda çalışan bir CoreGraphics uygulamasını optimize etmek için yapabileceğim bir şey var mı?

+0

'Büyük tuval tarafından', Retina modundaki iOS simülatörü veya gerçek bir iPad mi demek istiyorsunuz? – CodaFi

+0

Her ikisi de çok yavaş. – machineboy

+0

Performans sorunları, CG'nin kendisinden ziyade CoreGraphics'i nasıl kullandığınızla ilgili daha fazla olabilir. IPad'de retina kullanan bazı gerçek hızlı uygulamalar var ve büyük bir etki görmedim. Belki de çiziminizi nasıl yaptığınızı yollayabilirsiniz ... bu olmadan, çok yardımcı olmak zor olacaktır. –

cevap

2

Uygulama sizin tarafınızdan yapılmışsa ve iPad'i yavaşlatıyorsa, xcode'un bir parçası olan Cihazlar üzerinde test yapmalısınız. Sorunu bulmanıza yardımcı olabileceğini düşünüyorum. IPad'in arıza yaptığı veya bunun gibi bir şey olduğunu düşünmüyorum.

+0

+1. Özellikle, yavaş çalıştıklarını ve nasıl ele alınacağını görmek için zaman profillemesini öneririm (nedenini düşündüğünüzden farklı olabilir). –

İlgili konular