Изображения набора спрайтов IOS на разных устройствах

Итак, вот моя проблема:

Я хочу полностью использовать дисплеи Retina, а также поддерживать как можно больше устройств.

Я пытаюсь загрузить фоновое изображение, которое полностью заполнит экран на каждом устройстве. Я попросил художника создать изображения с разрешением 2730x1536, что соответствует соотношению сторон 16x9, и попросил его принять во внимание, что мне придется кадрировать для iPad в формате 4:3.

Из того, что я прочитал, изображение @3x должно быть 2208x1242, тогда дисплей сетчатки iphone 6+ должен уменьшить его до 1920x1080 физических пикселей, чтобы изображение выглядело четким и полностью заполнило мой горизонтальный экран iphone 6+.

Я помещаю изображение в свою сцену как SKSpriteNode. Какой размер мне нужно установить для моего изображения @3x (2208x1242), чтобы использовать сетчатку без масштабирования изображения?

Вот пример:

// Place a high res background image that perfectly fills my Landscape 6+ screen    
var image = SKSpriteNode(texture: SKTexutre(imageNamed: "background"), color: SKColor.clearColor(), size: CGSize(width: ????, height: ????))

Что мне нужно, чтобы установить высоту и ширину изображения 2208x1242 и scaleMode, чтобы идеально заполнить экран дисплея сетчатки @3x iphone 6+, если я блокирую игру в портретной ориентации?

Заранее спасибо!


person luckybroman5    schedule 08.11.2015    source источник
comment
Я также не смог найти какой-либо окончательной документации по этому вопросу. Если кто-то что-то знает, буду очень признателен!   -  person luckybroman5    schedule 08.11.2015


Ответы (1)


В обычном режиме (без зума) портретный дисплей iPhone 6+ имеет разрешение 414x736 точек. Ваш UIImageView должен быть просто установлен в полноэкранный режим с использованием ограничений по краям супервизора. Как вы сказали, вы хотите предоставить 3-кратное изображение размером 1242x2208, которое затем уменьшается до 1920x1080. Я бы предложил установить режим масштабирования на «Центр», чтобы края просто обрезались при меньшем разрешении. Это руководство может помочь вам лучше понять его.

person antsyawn    schedule 10.11.2015
comment
Итак, мой самый большой вопрос: как я могу точно определить, что используется размер 3x? Если у меня есть два изображения с суффиксом \@2x и суффиксом @3x, как приложение решает использовать \@3x? и означает ли этот тег что-то только внутри xcassets? Спасибо за ответ! - person luckybroman5; 12.11.2015
comment
Есть простой способ точно узнать, какой размер используется — создайте тестовое изображение с 1 в версии 1x, 2 в версии 2x и т. д. Вы увидите, что оно использует версию 1x на устройствах без сетчатки. версия 2x на устройствах с сетчаткой и версия 3x на iPhone6+. Отдельные изображения должны называться с суффиксом @1x, но вам не нужно этого делать, если вы используете каталог ресурсов — просто перетащите изображения в соответствующие слоты. - person antsyawn; 12.11.2015