блогер
Регистрация: Sep 2011
Адрес: Москва
Сообщений: 533
|
Оптимизация (растеризация) векторной программной анимации для мобильных устройств
И так рассказываю по порядку. Есть схемы навигации торгового центра, выполненные в векторе, в которых с помощью A* находится путь и затем проигрывается анимация отрисовки пути от точки до точки. Каждая схема (один этаж) реализована в виде отдельной swf (сейчас они проигрываются с терминалов). Передо мной встала задача написания мобильного приложения на AIR для навигации по этому торговому центру, в котором указанные схемы можно будет скейлить и вращать + опять же будет работать поиск пути и анимация. Первые же тесты показали, что при вращении и скейлинге векторной схемы (я тестировал на Sumsung Galaxy S III) происходит 1 – 2х секундное падение fps (это четко видимое торможение, которое неприемлемо). Но самое страшное происходит при проигрывании анимации, она вообще тормозит просто жутко. Понятно, что от вектора нужно уходить, и хотелось бы при этом сделать это малой кровью т.е. минимально переделывая существующие флешки, и чтобы это нормально выглядело на различных разрешениях :-).
Какие я вижу стратегии:
1)Тупо перегнать содержимое всех флешек в растр под 3 – 4 скейлфактора. Определять разрешение на устройстве и грузить нужную флешку с растром. Пока считаю этот вариант наиболее быстрым и реалистичным.
2) Грузить схему, определять разрешение устройства, и уже на лету в памяти растеризовать содержимое флешки. Минус – долгое время запуска, по моим прикидкам это может занять 5 – 10 секунд, поправьте, если я не прав.
3)Возможно еще есть какие то хитрожопые стратегии, например, растеризовать схему, а сверху отдельным слоем проигрывать анимацию, созданную программно, но это, видимо, потребует серьезную переделку флешек.
В общем буду рад любому совету на этот счет.
Ну и самое главное – также интересуют программные способы автоматического перегона всего содержимого флешки в растр нужного разрешения (т.к. в моих флешках очень много объектов не хочется делать это вручную) Если есть готовые решения тоже буду им рад.
Заранее спасибо!
|