2012-05-08 3 views
0

В случае, если вы знакомы с игровым движком Flixel, открытая исходным код здесь: https://github.com/ericjohnson/canabalt-ios/tree/master/flixel-iosСделать Flixel (IOS порта) Поддержка Retina графики

Как бы вы идти о добавлении поддержки сетчатки графики? Как сетчатые текстуры.

Я попробовал добавить @ 2x atlas pngs, и они, похоже, загружаются, однако я думаю, что смещения будут неправильными, как указано в атласе plist. Изменение plist (атласы сетчатки сетчатки для устройств сетчатки) с правильными смещениями, безусловно, загружает графику правильно, но сами текстуры обычно слишком большие, и возникают другие проблемы. обновление

Прогресс:

  • Как было отмечено выше, я создаю отдельные текстуры атласы для высоким разрешением графики - я предполагаю, что это означало бы, я должен был бы иметь полный набор высоким разрешением графики (или вообще все), чтобы сделать вещи простыми. Это делает графическую загрузку правильно (или смещения неверны, конечно, если используется lowres atlas plist)

  • При создании FlxSprite: s я не использую стенографические статические создатели, но конструкторы init *, задающие модель Scale с использованием шкалы устройства (будет 2,0 для устройств сетчатки, 1,0 для других). При этом графика также отображается с правильным размером на экране независимо от экрана сетчатки или нет.

Что осталось сделать версии сетчатки использовать правильное разрешение, потому что где-то сама текстура кажется сократилось, то размером, снова производя размыто, неправильный эффект - не оригинал высокого разрешения изображения. Я предполагаю, что последний преступник находится где-то в классе SemiSecretTexture ...

обновление Прогресс снова:

  • я, вероятно, просто неправильно выше. Я думаю, что узнал, как это сделать. Нет необходимости устанавливать modelScale на 2.0 ... Я мог бы разобраться в деталях и дать ответ позже :-)
+0

Только для записи, Flixel от Адама «Атомный» Saltsman, а источник находится на https://github.com/AdamAtomic/flixel –

+0

«Retina» Я предполагаю, что вы просто имеете в виду «более высокое разрешение». Retina - это действительно просто модное слово для высокого разрешения при меньшей плотности. –

+0

Эта ссылка предназначена для игры в Canabalt, а не для Flixel. Это то, о чем говорит @mouseas. –

ответ

0

Я думаю, что нет прямого способа сделать это, но когда вы создаете экземпляр своего класса, полученного из FlxGame , не используйте ДА в параметре масштабирования. Для начинающих. Затем вам придется загружать различные атласы для сетчатки и не сетчатки. Не уверен, что происходит с поддержкой iPad оттуда. Затем при загрузке текстур для FlxSprites вам нужно указать «шкалу устройств», которая будет 2,0 для устройств сетчатки - получить ее из [UIScreen scale]. Это сделало бы сетчатку и не-сетчатку хорошими для FlxSprite. Тогда FlxTileblock (и, возможно, другие классы) - это еще одна история, которую я еще не решил.

Смежные вопросы