![]() |
Какая графика лучше для мобильных приложений? (Вектор/Starling/SVG)
Приветствую!
Собственно вопрос в название темы. Старлинг с png у меня получается слишком увесистым. Вектор тормозит. А по SVG очень мало информации удалось нарыть. Быть может есть альтернатива всему этому? Хочется чтоб приложение - а именно Игра - не тормозила и мало весила. *Использую IDEA (jetbrains), язык AS3. |
SVG scalable vector graphics. Тобишь вектор. Есть только растр и вектор. Другого не дано
|
Сложилось впечатление что SVG шустрее обрабатывается чем простой флешовый вектор (может я ошибаюсь). Именно поэтому и прошу совета чтоже лучше всего использовать для игрушек под Android и IOS?
Игры 2D без наворотов. Просто в одной много сцен и графики а в другой большой мир, который прокручивается позади плывущей рыбки. |
В самом общем случае растр будет быстрее уже хотя бы потому, что это уже растр, а вектор — это всего лишь математика, которую процессор в каждом кадре превращает в растр.
|
Преимущества вектора - очень малый размер занимаемого места в дистрибутиве и адаптация под любой размер устройства без необходимости иметь несколько наборов ассетов под разные разрешения.
Преимущества растра - меньше нагрузка на процессор. Есть либа для SVG с примерами под Starling, которая при старте приложения конвертирует вектор в растр, если я правильно понял, и тем самым имеем оба преимущества. |
Цитата:
|
Да-да очень бы хотелось узнать по подробнее про эту бибилиотеку.
И такой вопрос еще - возможноли фон сделать векторный а по верх него пустить Starling? Если да тот не будет ли каждый кадр этот фон нагружать проц, если он будет статичным? Хотя если возможно старлинг повесить поверх флешового фона то думаю есть смысл фон перевести в bitmapData... |
Цитата:
Но вот что мешает растеризовать этот фон при старте приложения, и сделать из него старлинговский дисплей объект? Если он статичный, то это сделать проще простого. |
Тогда все сводится к такой идее.
Не нужен SVG и перевод фона в растр. Быть может сделать Embed SWF, и затем его както перевести в старлинговский Image? |
Работу с SVG видел вот тут.
|
dvrbear, может быть сначала почитать, что такое старлинг и как он вообще работает?
Для большей производительности используются растровые атласы. А если у вас каждое изображение будет отдельным файлом - это ад и ужас. Для сжатия графики есть тузлы типа PNGGauntlet. Можно попробовать перегонять текстуры в ATF, иногда они весят значительно меньше, чем png, да и в целом gpu работает шустрей с atf. |
Давайте попробую задать такой вопрос (по второй предполгаемой игре).
Суть игры - рыбка в центре экрана вертится во все стороны (2D) и плавает по лабиринту. Лабиринт = карта прокручиваемая на заднем плане. Понимаю, что карту надо разбивать на кусочки, чтоб она не вся целеком двигалась (тут что вектор, что раст - певесят проц). НО... В случае с растром (если готовить его заранее) для Retina экранов - приложение нереально тяжелое получится. А в случае с вектором - повесит мобильное устойство. Так вот вопрос - Как бы вы поступили на моем месте и какое решение вы бы выбрали? |
Делать карту на базе тайлов и декора.
Не огромная картинка нарезанная, а картинка собранная из маленьких похожих кусочков и расставленных декорирующих элементов. |
Я тоже думал сделать так:
Фон смазанный и слегка подвижный (будто он в дали). Коридор декорировать отдельными картинками (и прятать их если они за пределами видимости) А стены коридоров нарисовать png картинкой 100х100, растянуть ее в 100 раз и задать маской для повторияющейся текстуры. Но опятьже если коридор будет двигаться целеком - не повесит ли мобильное устройство? |
Цитата:
Цитата:
|
Цитата:
|
caseyryan, Спасибо, я то вкурсе (((
Сам недавно оптимизировал одну игру. Из 50 Мб удалось сжать до 30. И при этом в игре всего три экрана - прелодер, выбор стадии и игровой экран.... Поэтому на будущее и интересуюсь кто чем пользуется и как выходит из такой ситуации. Старлинг заранее грузит в память графику и она оттуда изымается очень быстро. А что если сделать Embed кучи разных SWF и по мере надобности их переводить в bitmap и использовать без старлинга или както к нему в Texture переводить? Как в таком случае работать приложение будет - каждый раз при обработке будет притормаживать? |
| Часовой пояс GMT +4, время: 04:01. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.