• Какие сервисы подойдут для оплаты через пластиковую карту Android,iOS,WinPhone?

    TwerTrue
    @TwerTrue
    Молодой и неопытный разработчик
    Ответ написан
    Комментировать
  • Разработка игры на Android\iOS (Unity3D 4.3, Cocos2D) - размеры экрана, DPI, масштабирование спрайтов?

    risik
    @risik
    Программист
    Density и разрешение экрана свзяно друг с другом не совсем прямо пропорционально.

    В Android есть такое правило:
    LDPI:MDPI:HDPI:XHDPI:XXHDPI=3:4:6:8:12.

    например здесь: stackoverflow.com/questions/6166677/android-screen...
    или на developer.android.com

    То есть, делать персонажа 100 пикселей для xhdpi - очень плохая идея. Лучше, например, 96 пикселей. Так как 96 без остатка делится 6. А высоту не 80, на 78. Тогда размеры персонажа у Вас будут:
    LDPI: 48х39
    MDPI: 64х52
    HDPI: 96х78
    XHDPI: 128x104
    XHDPI: 192х156

    Отсюда можно легко вычислить в каком разрешении Вам надо рисовать персонажа, чтобы избежать не ркатного масштабирования. Находим наименьшее общее кратное между пропорциями. Это будет 24. И рисуем Ваш объект в разрешении 384х312. Из этого размера Вы легко получаете все рисунки всех необходимых размеров. Лучше сделать скрипт, который, например, при помощи ImageMagick масштабирует Ваш оригинальный рисунок и раскладывает по папкам.

    То есть, если Вы хотите поддерживать все 5 разрешений, то все Ваши оригинальные рисунки должны иметь размеры, делящиеся на 24 нацело.

    Однако, LDPI можно не рассматривать. Тогда пропорции получаются:
    MDPI:HDPI:XHDPI:XXHDPI=2:3:4:6.
    И в этом случае, очевидно, что все оригинальные рисунки должны иметь размеры, нацело делящиеся на 12. Кстати, даже если Вы оставите поддержку только HDPI и XHDPI Вам все равно нужен множитель 12, а значит Вы дешево получаете поддержку и MDPI и XXHDPI.

    Для iOS все чуточку проще. Смотрите комментарий @Lerg.
    Ответ написан
    Комментировать
  • Разработка игры на Android\iOS (Unity3D 4.3, Cocos2D) - размеры экрана, DPI, масштабирование спрайтов?

    Lerg
    @Lerg
    Defold, Corona, Lua, GameDev
    Не знаю как именно обстоит дело в Unity, но я беру спрайты максимального размера под iPad Retina и уменьшая два раза в два раза. Допустип фоновое изображение. Для iPad это будет 2048х1536.
    Такой файл я называю background@4x.png, и делаю ещё две версии background@2x.png и background.png, каждый отличается в 2 раза от соседнего. То есть @2x это 1024х768, а простой это 512х368 для устройств с совсем низким разрешением (хотя в настоящее время их можно уже и не поддерживать, это iPhone 3GS, например).

    Версия файла выбирается из текущего разрешения устройства, берётся таким образом, чтобы не было артефактов увеличенного масштабирования. То есть для разрешения 1024х600 берутся файлы @2x и уменьшаются по принципу letterbox.

    Если говорим о спрайтах и элементах UI, то ничего больше для них не нужно. А вот для фоновых изображений или изображений во всю ширину экрана нужно учитывать ещё разное соотношение сторон.

    Если взять фон от iPad и показать его на iPhone 5, то по бокам будут видны незанятые области. Фоновое изображение нужно расширить. Опытным путём я пришёл к разрешению 2776х1536 для @4x, такое изображение покроет полностью экраны всех мобильных устройств.

    DPI по хорошему нужно учитывать, иначе на iPad элементы UI получаются гораздо больше чем на iPhone и их можно было бы сделать поменьше, но на практике и без этого нормально в большинстве случаев.
    Ответ написан
    Комментировать