As a developer, is it hard to update your app to work with the retina display?

Discussion in 'iOS Apps' started by palmerc2, Jun 28, 2010.

  1. palmerc2 macrumors 68000


    Feb 29, 2008
    Los Angeles
    Just curious, because I find it kind of hard that some of the major players such as Pandora, Facebook, and even (Apple) Remote app haven't updated for the retina display. All the icons, and items within the application are pixelated.

    Also, when you do update to the retina display, how will it look on the older models / iPod Touches? Will it look the same, or worse?

    I guess while were here, post apps that have been updated for the retina display / iPhone 4. When there are replies I will update the list accordingly.

    IncrediBooth - from the people that made hipstamatic....great app for making photobooth style pictures on a film strip.

    Credit Card Terminal - haven't really played with it yet, but it said in the update works with retina display.
  2. atari1356 macrumors 68000


    Feb 27, 2004
    If the image is a static image (like a .png, .gif or .jpg file), then it's pretty easy. All you have to do is make a version of the image that's twice as big, and add "@2x" to the file name.

    So, for example, instead of just having "image.png" as part of your app, you'd also have a high resolution one named "image@2x.png". The iPhone 4 automatically uses the @2x version, without requiring any changes to the code. (and older iPhones use the same images they were before, so they look the same as they always did)

    For apps that use Open GL and 3D rendering, I would imagine it's more difficult... but I really don't know as I'm not familiar with that.

    (My app "Paperless" has high resolution images for the iPhone 4. I was lucky that when I was first putting together the icons used in Paperless, that I had saved versions of them at 512 pixels in size... so making new versions for the iPhone 4 was no problem.)
  3. DemonJim macrumors newbie


    Jun 19, 2010
    The difficulty (and hence time needed) in updating an app depends mostly on two main factors:

    * Is there hi-res versions of 2D art already available?
    If not, it will take time getting the art re-authored. All icons, all in-game images need to be updated. The App may want to contain two sets and use the most suitable, this will take time and if not done (and only the hires is used) there may be memory and/or performance issues when running on older hardware. All needs coding and testing.

    * Will the increased resolution have an adverse impact on framerate?
    Supporting the higher res in an OpenGL game is surprisingly simple, it is just a flag. What isn't simple is getting your frames to render within the desired time, especially for a complex 3D game. If you were already on the limit at 320x480 it is likely you will struggle when this suddenly becomes 640x960, especially if you are fill rate bound. My game runs at 60fps no problem on my 3GS but on the iPhone 4 in native resolution and the iPad it can struggle. That's what developers face when making a Universal App.

    Note on iPhone 4 developers can cheat a little, as you can actually render OpenGL somewhere in between 320x480 and 640x960, not just one or the other, eg at 480x720. The image is then filtered up to native resolution and the image looks sharper than it would at 320x480 but without the performance hit of 640x960. I suspect many devs will use an intermediate resolution in finding the most suitable compromise.
  4. DemonJim macrumors newbie


    Jun 19, 2010
    I didn't know that! Nice one :) I'm guessing this is for UIKit images only though? Ie it wont work for 2D gfx rendered in OpenGL? Most of what I said on point 1 above is still valid though, actually recreating the art itself will be the time killer. (assuming you didn't think ahead and author everything at an uber res and scale down, which is the ideal way for future proofing).

Share This Page