SlideShare a Scribd company logo
Разработка кроссплатформенной
 игры на базе Starling и Feathers



                Валентин Железный
               Компания «Мелеста»
Starling - pure ActionScript 3 библиотека для
создания 2D приложений, использующая stage3D
API, благодаря чему обеспечивается высокая
производительность даже на мобильных
платформах, таких как iOS и Android.
1. Легкий переход, так как Starling API создан
   максимально близко к flash API, имитирует
   классический DisplayList.
2. Постоянно развивается и дополняется.
3. Имеет большое сообщество и поддержку Adobe.
4. Подробная и качественная документация.
5. Высокая производительность на мобильных. От
   версии 1.0 к 1.2 прирост на 20-30%.
6. Неплохой выбор расширений и библиотек.
Feathers - это библиотека UI компонентов
   на базе Starling.
Сделаны с учетом использования на
             мобильных
• Производительность
• Поддержка мультитач
• Адаптация под разные DPI
• Поведение компонентов(скроллинг и т.п.)
Архитектурно продуманы.
• Валидация данных. Изменения применяются
только в фазу рендеринга Starling
• Строго типизированные свойства для всех скинов и
визуальных свойств.
• Легко расширять и создавать свои компоненты
• Легко понять, если работали с Flex или Flash Pro
компонентами
Поддержка скинования.
• Возможность натянуть скин несколькими способами
• Используется Scale 9 принцип для отрисовки
• На лету можно менять размеры компонентов
• Поддержка «skin Themes»
И еще немного
• Работа с разными типами шрифтов(растровые и
векторные)
• Drag and drop
• Поддержка окон
• Легко создавать навигацию
• Theme инициализируется на старте приложения

• Компонент скинуется из темы в момент
добавления в DisplayList

• Поддержка альтернативного ID для скинования
• Текстурный атлас состоит из
изображения(PNG,JPG) и описания XML
• Для генерации атласов можно использовать JSFL
+ Flash CS
• Пользуемся преимуществами ATF
• Не использовать загрузку SWF и последующую
генерацию в текстуры внутри приложения/игры
• Поддержка сжатия для всех платформ
• Быстрая загрузка
• Распаковка средствами GPU
• Уменьшенный расход видеопамяти
• Render фаза Starling рассчитывается CPU
• Выбор FPS, 30 или 60?
• Подготовка текстур для разных платформ
• Контроль за текстурами
• Использовать механизмы Starling(flatten,
frame scale и другие)

More Related Content

What's hot

Локализация: ожидания и реальность, Дмитрий Сизиков. 8 июня, 2019
Локализация: ожидания и реальность, Дмитрий Сизиков. 8 июня, 2019Локализация: ожидания и реальность, Дмитрий Сизиков. 8 июня, 2019
Локализация: ожидания и реальность, Дмитрий Сизиков. 8 июня, 2019
Mail.ru Group
 
10 вещей, которые «невозможно» сделать в iOS
10 вещей, которые «невозможно» сделать в iOS10 вещей, которые «невозможно» сделать в iOS
10 вещей, которые «невозможно» сделать в iOS
Any Void
 
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
Natalia Efimtseva
 
QA Fes 2016. Анна Карпенко. Специфика тестирования мобильных приложений или к...
QA Fes 2016. Анна Карпенко. Специфика тестирования мобильных приложений или к...QA Fes 2016. Анна Карпенко. Специфика тестирования мобильных приложений или к...
QA Fes 2016. Анна Карпенко. Специфика тестирования мобильных приложений или к...
QAFest
 
Интеграция TeamCity и сервера символов | Алексей Соловьев
Интеграция TeamCity и сервера символов | Алексей СоловьевИнтеграция TeamCity и сервера символов | Алексей Соловьев
Интеграция TeamCity и сервера символов | Алексей Соловьев
Positive Hack Days
 
Aterdux Entertainment: Собственный движок как способ экономной и эффективной...
 Aterdux Entertainment: Собственный движок как способ экономной и эффективной... Aterdux Entertainment: Собственный движок как способ экономной и эффективной...
Aterdux Entertainment: Собственный движок как способ экономной и эффективной...
DevGAMM Conference
 
Symfony в архитектуре Upwork Enterprise
Symfony в архитектуре Upwork EnterpriseSymfony в архитектуре Upwork Enterprise
Symfony в архитектуре Upwork Enterprise
Dmitry Semenov
 
.NET Core в современных проектах
.NET Core в современных проектах.NET Core в современных проектах
.NET Core в современных проектах
Andrew Gubskiy
 

What's hot (8)

Локализация: ожидания и реальность, Дмитрий Сизиков. 8 июня, 2019
Локализация: ожидания и реальность, Дмитрий Сизиков. 8 июня, 2019Локализация: ожидания и реальность, Дмитрий Сизиков. 8 июня, 2019
Локализация: ожидания и реальность, Дмитрий Сизиков. 8 июня, 2019
 
10 вещей, которые «невозможно» сделать в iOS
10 вещей, которые «невозможно» сделать в iOS10 вещей, которые «невозможно» сделать в iOS
10 вещей, которые «невозможно» сделать в iOS
 
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
Работа c облачным бэкендом мобильных приложений в Visual Studio 2013
 
QA Fes 2016. Анна Карпенко. Специфика тестирования мобильных приложений или к...
QA Fes 2016. Анна Карпенко. Специфика тестирования мобильных приложений или к...QA Fes 2016. Анна Карпенко. Специфика тестирования мобильных приложений или к...
QA Fes 2016. Анна Карпенко. Специфика тестирования мобильных приложений или к...
 
Интеграция TeamCity и сервера символов | Алексей Соловьев
Интеграция TeamCity и сервера символов | Алексей СоловьевИнтеграция TeamCity и сервера символов | Алексей Соловьев
Интеграция TeamCity и сервера символов | Алексей Соловьев
 
Aterdux Entertainment: Собственный движок как способ экономной и эффективной...
 Aterdux Entertainment: Собственный движок как способ экономной и эффективной... Aterdux Entertainment: Собственный движок как способ экономной и эффективной...
Aterdux Entertainment: Собственный движок как способ экономной и эффективной...
 
Symfony в архитектуре Upwork Enterprise
Symfony в архитектуре Upwork EnterpriseSymfony в архитектуре Upwork Enterprise
Symfony в архитектуре Upwork Enterprise
 
.NET Core в современных проектах
.NET Core в современных проектах.NET Core в современных проектах
.NET Core в современных проектах
 

Similar to Starling and Feathers

Alexey Savchenko, Evangelist, Unreal Engine/ Epic Games
Alexey Savchenko, Evangelist, Unreal Engine/ Epic GamesAlexey Savchenko, Evangelist, Unreal Engine/ Epic Games
Alexey Savchenko, Evangelist, Unreal Engine/ Epic Games
White Nights Conference
 
Embarcadero All-Access
Embarcadero All-AccessEmbarcadero All-Access
Embarcadero All-AccessSerghei Urban
 
“Tips&Tricks&Antitricks with .Net Core backend in GameDev”
“Tips&Tricks&Antitricks with .Net Core backend in GameDev”“Tips&Tricks&Antitricks with .Net Core backend in GameDev”
“Tips&Tricks&Antitricks with .Net Core backend in GameDev”
HYS Enterprise
 
И снова разработка под iOS. Павел Тайкало
И снова разработка под iOS. Павел ТайкалоИ снова разработка под iOS. Павел Тайкало
И снова разработка под iOS. Павел ТайкалоStanfy
 
С.Лалов "Corona SDK для разработки кроссплатформенных приложений", DUMP-2014
С.Лалов "Corona SDK для разработки кроссплатформенных приложений", DUMP-2014С.Лалов "Corona SDK для разработки кроссплатформенных приложений", DUMP-2014
С.Лалов "Corona SDK для разработки кроссплатформенных приложений", DUMP-2014it-people
 
Инсталляторы
ИнсталляторыИнсталляторы
Инсталляторы
aepetelin
 
опыт Clickberry.com стартап на drupal в облаке павел загор
опыт Clickberry.com   стартап на drupal в облаке павел загоропыт Clickberry.com   стартап на drupal в облаке павел загор
опыт Clickberry.com стартап на drupal в облаке павел загорdrupalconf
 
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7CodeFest
 
Проверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийПроверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийMedia Gorod
 
Локализация - как делать глобальный проект?
Локализация - как делать глобальный проект?Локализация - как делать глобальный проект?
Локализация - как делать глобальный проект?
Alconost
 
Presentation zwcad2011
Presentation zwcad2011Presentation zwcad2011
Presentation zwcad2011ZWCAD Support
 
Особенности тестирования мобильных приложений (Android, iOS)
Особенности тестирования мобильных приложений (Android, iOS)Особенности тестирования мобильных приложений (Android, iOS)
Особенности тестирования мобильных приложений (Android, iOS)
Эльвина Сакаева
 
Разработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервисаРазработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервиса
ITCrowd Almaty
 
Разработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервисаРазработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервиса
endeveit
 
Interbase xe7 - универсальная субд для windows linux mac ios android
Interbase xe7 - универсальная субд для windows linux mac ios androidInterbase xe7 - универсальная субд для windows linux mac ios android
Interbase xe7 - универсальная субд для windows linux mac ios android
Andrew Sovtsov
 
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
DevGAMM Conference
 
Go Mobile! Windows Phone 7 for all
Go Mobile! Windows Phone 7 for all Go Mobile! Windows Phone 7 for all
Go Mobile! Windows Phone 7 for all
SoftServe
 
IIS7 possibilities
IIS7 possibilitiesIIS7 possibilities
IIS7 possibilities
Транслируем.бел
 
Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0
Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0
Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0beloslab
 
Как делать глобальный проект
Как делать глобальный проектКак делать глобальный проект
Как делать глобальный проектisdeforum
 

Similar to Starling and Feathers (20)

Alexey Savchenko, Evangelist, Unreal Engine/ Epic Games
Alexey Savchenko, Evangelist, Unreal Engine/ Epic GamesAlexey Savchenko, Evangelist, Unreal Engine/ Epic Games
Alexey Savchenko, Evangelist, Unreal Engine/ Epic Games
 
Embarcadero All-Access
Embarcadero All-AccessEmbarcadero All-Access
Embarcadero All-Access
 
“Tips&Tricks&Antitricks with .Net Core backend in GameDev”
“Tips&Tricks&Antitricks with .Net Core backend in GameDev”“Tips&Tricks&Antitricks with .Net Core backend in GameDev”
“Tips&Tricks&Antitricks with .Net Core backend in GameDev”
 
И снова разработка под iOS. Павел Тайкало
И снова разработка под iOS. Павел ТайкалоИ снова разработка под iOS. Павел Тайкало
И снова разработка под iOS. Павел Тайкало
 
С.Лалов "Corona SDK для разработки кроссплатформенных приложений", DUMP-2014
С.Лалов "Corona SDK для разработки кроссплатформенных приложений", DUMP-2014С.Лалов "Corona SDK для разработки кроссплатформенных приложений", DUMP-2014
С.Лалов "Corona SDK для разработки кроссплатформенных приложений", DUMP-2014
 
Инсталляторы
ИнсталляторыИнсталляторы
Инсталляторы
 
опыт Clickberry.com стартап на drupal в облаке павел загор
опыт Clickberry.com   стартап на drupal в облаке павел загоропыт Clickberry.com   стартап на drupal в облаке павел загор
опыт Clickberry.com стартап на drupal в облаке павел загор
 
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
 
Проверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийПроверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложений
 
Локализация - как делать глобальный проект?
Локализация - как делать глобальный проект?Локализация - как делать глобальный проект?
Локализация - как делать глобальный проект?
 
Presentation zwcad2011
Presentation zwcad2011Presentation zwcad2011
Presentation zwcad2011
 
Особенности тестирования мобильных приложений (Android, iOS)
Особенности тестирования мобильных приложений (Android, iOS)Особенности тестирования мобильных приложений (Android, iOS)
Особенности тестирования мобильных приложений (Android, iOS)
 
Разработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервисаРазработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервиса
 
Разработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервисаРазработка API для большого, нагруженного сервиса
Разработка API для большого, нагруженного сервиса
 
Interbase xe7 - универсальная субд для windows linux mac ios android
Interbase xe7 - универсальная субд для windows linux mac ios androidInterbase xe7 - универсальная субд для windows linux mac ios android
Interbase xe7 - универсальная субд для windows linux mac ios android
 
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
 
Go Mobile! Windows Phone 7 for all
Go Mobile! Windows Phone 7 for all Go Mobile! Windows Phone 7 for all
Go Mobile! Windows Phone 7 for all
 
IIS7 possibilities
IIS7 possibilitiesIIS7 possibilities
IIS7 possibilities
 
Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0
Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0
Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0
 
Как делать глобальный проект
Как делать глобальный проектКак делать глобальный проект
Как делать глобальный проект
 

Starling and Feathers

  • 1. Разработка кроссплатформенной игры на базе Starling и Feathers Валентин Железный Компания «Мелеста»
  • 2. Starling - pure ActionScript 3 библиотека для создания 2D приложений, использующая stage3D API, благодаря чему обеспечивается высокая производительность даже на мобильных платформах, таких как iOS и Android.
  • 3. 1. Легкий переход, так как Starling API создан максимально близко к flash API, имитирует классический DisplayList. 2. Постоянно развивается и дополняется. 3. Имеет большое сообщество и поддержку Adobe. 4. Подробная и качественная документация. 5. Высокая производительность на мобильных. От версии 1.0 к 1.2 прирост на 20-30%. 6. Неплохой выбор расширений и библиотек.
  • 4. Feathers - это библиотека UI компонентов на базе Starling.
  • 5. Сделаны с учетом использования на мобильных • Производительность • Поддержка мультитач • Адаптация под разные DPI • Поведение компонентов(скроллинг и т.п.)
  • 6. Архитектурно продуманы. • Валидация данных. Изменения применяются только в фазу рендеринга Starling • Строго типизированные свойства для всех скинов и визуальных свойств. • Легко расширять и создавать свои компоненты • Легко понять, если работали с Flex или Flash Pro компонентами
  • 7. Поддержка скинования. • Возможность натянуть скин несколькими способами • Используется Scale 9 принцип для отрисовки • На лету можно менять размеры компонентов • Поддержка «skin Themes»
  • 8. И еще немного • Работа с разными типами шрифтов(растровые и векторные) • Drag and drop • Поддержка окон • Легко создавать навигацию
  • 9. • Theme инициализируется на старте приложения • Компонент скинуется из темы в момент добавления в DisplayList • Поддержка альтернативного ID для скинования
  • 10. • Текстурный атлас состоит из изображения(PNG,JPG) и описания XML • Для генерации атласов можно использовать JSFL + Flash CS • Пользуемся преимуществами ATF • Не использовать загрузку SWF и последующую генерацию в текстуры внутри приложения/игры
  • 11. • Поддержка сжатия для всех платформ • Быстрая загрузка • Распаковка средствами GPU • Уменьшенный расход видеопамяти
  • 12. • Render фаза Starling рассчитывается CPU • Выбор FPS, 30 или 60? • Подготовка текстур для разных платформ • Контроль за текстурами • Использовать механизмы Starling(flatten, frame scale и другие)