Basically with that config.lua you’re going to have an 800px screen on non-iPads and 900px on iPads. If the device’s real resolution is 1599px or less on the narrow side for phones, or 1799px or less on iPads, then it will use the 1x graphics. For 1600 (1800)px to 3199 (3599)px, it will use the @2x images, and will start using the @4x images at 3200px (3600px).
In other words, generally with an 800x1200 type screen, you’re very likely not going to need 4x graphics except for the highest of highest resolution devices. Given that the Retina iPads are 1536 px on the short side, your @2x images won’t be used for them. For me, when I use that config.lua, I tend to use something more like:
local aspectRatio = display.pixelHeight / display.pixelWidth application = { content = { width = aspectRatio \> 1.5 and 800 or math.ceil( 1200 / aspectRatio ), height = aspectRatio \< 1.5 and 1200 or math.ceil( 800 \* aspectRatio ), scale = "letterBox", fps = 30, imageSuffix = { ["@2x"] = 1.5, ["@4x"] = 3 }, }, }
By using 1.5, your 800px screen will use 1x images up to 1199px. From 1200-2399, you use the @2x images, and 2400+ you use the @4x images on phones and for iPads, your 1x images get used up to 1349px. For 1350 to 2399px, you would use your @2x images and finally the @4x at 2400 or greater.
Thus on iPad’s 1, 2, IPad Mini’s, your 1x images get used (768 width). Your Retina iPads at 1536 px, would use the @2x images and the iPad Pro having a width of 2048, would still use the @2x images.
Rob