2010-07-26 12 views
9

Mevcut bir OpenGL ES 1.1 tabanlı 2D iPhone oyununu, iPhone 4'ün retina ekranı ile uyumlu olacak şekilde güncellemek için gerekli adımlar nelerdir? Hala Apple'ın CrashLanding (download) örnek koduna gelen Texture2D sınıfını kullanıyorum.2B iPhone oyununun iPhone 4'ün retina ekranı ile uyumlu olması nasıl güncellenir?

Apple's documentation'u okuduktan sonra, WWDC videosunu izleyerek (oturum 134 "Retina Ekranı için iPhone Uygulamanızı Optimize Edin") ve hala Cocos2D örnek koduna bakıyorum. Inanmak

gerekli adımlar aşağıdaki gibidir:

  • 2.0 1.0 ila "contentScaleFactor" değiştirerek [UIImage imageNamed:@"image.png"]
  • için (ekteki "@ 2x"/a) yüksek çözünürlüklü sanat geçen
  • (burada?)
  • glViewport
büyüklüğü ayarlanması contentScaleFactor
  • dahil glOrthof bağımsız değişkenleri güncelleme

    Lütfen OpenGL için nispeten yeni olduğumu unutmayın.

    Yardımlarınız için teşekkürler!

  • +1

    Sadece emin olmak için ... glViewport'unuz daha büyük ekran için doğru boyuta ayarlanmış mı? Eğer hala düşük boyuta sahip olsaydın, garip şeyler olabilirdi. Ayrıca orto numaralarınızın doğru olduğundan emin olun. – Moncader

    cevap

    8

    320x480 görüntüsünü korumalı ve farklı bir adla 640x960 görüntü vermelisiniz. 320x480 boyutundaki görüntünün foo.png olarak adlandırılmış olduğunu varsayalım, daha sonra 640x960 boyutunda bir [email protected] adı verin.

    Sistem, daha sonra [UIImage imageNamed:@"foo.png"] kullanıyor olduğunuzu varsayarak, herhangi bir değişiklik yapmadan iPhone 4'te daha yüksek çözünürlüğü otomatik olarak seçecektir.

    +0

    Ok teşekkürler. Ek 2 w/the @ 2x adlandırma, iPhone 4’te yüklenir (3G’de değil, beklendiği gibi). Ancak yüksek çözünürlüklü sanat eseri iPhone 4'teki ekrandan çok daha büyük. İçerikScaleFactor'ı ayarlamam gerektiğini düşünüyorum ... Sadece emin değilim. – MrDatabase

    +2

    MyUIView.contentScaleFactor aradığınız şey - 2.0'a ayarla – pop850

    +0

    Um. Bu cevabın, gerçekten de soruyla ilgisi yok - OpenGL ile ilgili. – Jonny