SlideShare une entreprise Scribd logo
1  sur  35
Flash to Mobile. Портирование Flash-игры на мобильные платформы Илья Бубер. Руководитель проектов, Progrestar Inc. www.progrestar.com Twitter: @Progrestar
Flash-Игра Копай Исследуй острова Собирай коллекции Собирай команду с друзьями
Копай в Соц. Сетях 6 млн довольных пользователей из СНГ, Европы и Мира Миллионы собранных коллекций Тысячи сломанных от бесконечного кликанья мышек.
Зачем мы этим занимались?
Часть1. Выбираем Framework
Часть 1. Выбираем Framework Обзор iTorque2D Плюсы Недостатки WYSIWYG редактор Простой скриптовый язык Исходники Возможность компиляции под PC/Mac  Немного успешных iOSприложений Редкие обновления Умирающее коммьюнити
Часть 1. Выбираем Framework iTorque2D –Зачем его можно использовать? Для платформеров Для людей, плохо владеющих программированием Если собираетесь выпускать десктоп-версию http://www.garagegames.com/products/torque-2d/iphone Искать тут:
Часть 1. Выбираем Framework cocos2D Плюсы Недостатки  Бесплатный  Open Source Огромное количество успешных игр Нативный симулятор Огромное коммьюнити Отсутствие Android  Objective C – не самый легкий язык для AS3-разработчика Продались Zynga
Часть 1. Выбираем Framework cocos2D –Для чего подходит? Идеально для инди-разработчиков Если не испытываете проблем с низкоуровневым Objective C  Лучший выбор для iOS http://www.cocos2d-iphone.org/ Искать тут:
Часть 1. Выбираем Framework Ansca Corona Плюсы Недостатки Компиляция под Android  LUA Ежедневные обновления Тех. поддержка и коммьюнити Невозможность подключать нативные плагины Компиляция на сервере Corona Не всегда адекватно работающий симулятор
Часть 1. Выбираем Framework А нужен ли Android? 400.000 активаций в день Нет проблем с попадением в Market (быстрый аппрув) Слабая конкуренция 4.5 млрд скачанных приложений Появились In-App Purchases
Часть 1. Выбираем Framework И побеждает…. http://www.anscamobile.com/corona/ Искать тут:
Часть2. Экспорт ассетов В двух словах об экспорте AWESOME MAGIC SWF PNG ,[object Object]
Точки трансформации
 Motion tweensMETA-DATA
Часть 2. Экспорт ассетов Экспорт с помощью JavaScript Flash API Library MegaMonsters.fla Heroes.fla Islands.fla SuperDudeFolder JavaScript Flash API SeaTurtle MagicMushroom CrazyPirate SAVE
Часть 2. Экспорт ассетов Выдираем ассеты с помощью AIR-приложения location_1.swf META-Data Images
Часть 2. Экспорт ассетов Анимации в Sprite Sheets Sprite Sheet Выделение памяти в степенях 2 (600x600 такой же размер как 1024x1024) 1024x1024 – Макс. Размер (некоторые девайсы могут 2048x2048) Оптимизируем Sprite Sheet’ы Zwoptex’ом http://zwoptexapp.com/
Часть 2. Экспорт ассетов Экспорт переодеваемых персонажей Персонаж Части тела (PNG) Одежда и черты лица Origins (X,Y) Анимация Точки трансформации (X,Y) Motion Tweens Вычисляем абсолютные X,Y для каждой одетой части.
Часть3. Game Design Взаимодействие с игрой
Часть3. Game Design Полностью переверстанный интерфейс
Часть3. Game Design Оптимизация под TouchScreen
Часть3. Game Design Мини-игры Мини-игры для TouchScreen’ов Усложняется со временем (до 9 рун) Быстрое принятие решений Энергия в награду Точность важнее скорости Необходимо для прохождения игры Контуры усложняются с прогрессом игрока
Часть 3. Game Design Измененные Социальные Механики Карта Друзей Добавление по User Code’у Бонус за приглашение друзей через Facebook Friend Code выдается каждому игроку при регистрации. Если друг введет у себя твой код, вы оба получите СтарМани
Часть3. Game Design Избавление от ненужных Социальных Механик
Часть3. Game Design Упрощение игры Прохождение карт по очереди Инструменты даны сразу Одни и  те же коллекции
Часть3. Game Design Волшебные Рубины Волшебные Рубины – основной способ улучшать характеристики своего персонажа Можно добыть только собирая коллекции полностью Не продаются за деньги
Часть 3. Game Design Экшен-Бар Побуждает игрока активно взаимодействовать с экраном девайса Уменьшает зависимость доходов от удачи Вызывает позитивные эмоции у игроков Дополнительный стимул тратить СтарМани на открытие препятствий
Часть 3. Game Design Gambling Вместо производства расходников, их можно теперь выиграть у Пьяного Торговца
Слова вместо скобок Часть3. Программирование LUA для Flash-разработчика Таблицы вместо Object’ов Динамические типы переменных Реализация ООП ,[object Object]
Наследование
Видимость,[object Object]
Часть 3. Программирование Разное у Corona и Flash Нет фильтров и доступа к пикселям Не всегда удобная система координат Непривычная работа с растровыми объектами-изображениями Нет хорошей среды для программирования
Часть3. Программирование Реализация связи с Сервером Браузер Мобильный My iPhone Сохранить новые данные Сохранение ОК! Сокровища Профит Копать ТУТ My iPad Синхронизироваться Новые данные Не нужно постоянное соединение с Интернет

Contenu connexe

En vedette

36℃+360°+365 (in Russian)
36℃+360°+365 (in Russian)36℃+360°+365 (in Russian)
36℃+360°+365 (in Russian)Dmitry Karpov
 
Методы сопоставления видео
Методы сопоставления видеоМетоды сопоставления видео
Методы сопоставления видеоMSU GML VideoGroup
 
Презентация NetCat 5
Презентация NetCat 5Презентация NetCat 5
Презентация NetCat 5NetCat
 
Стимуляторы для терминатора. Апгрейд для digital арт-директора
Стимуляторы для терминатора. Апгрейд для digital арт-директораСтимуляторы для терминатора. Апгрейд для digital арт-директора
Стимуляторы для терминатора. Апгрейд для digital арт-директораDmitry Karpov
 
UX, UI, Design
UX, UI, DesignUX, UI, Design
UX, UI, DesignRoman K
 
THO MEN SHOW: Sheremetova&Popova
THO MEN SHOW: Sheremetova&Popova THO MEN SHOW: Sheremetova&Popova
THO MEN SHOW: Sheremetova&Popova Anastasiya Popova
 
пять стратегий R&D
пять стратегий R&Dпять стратегий R&D
пять стратегий R&DDmitry Karpov
 
Выносим мозг. Интерактивные городские объекты.
Выносим мозг. Интерактивные городские объекты.Выносим мозг. Интерактивные городские объекты.
Выносим мозг. Интерактивные городские объекты.Dmitry Karpov
 
R&D стратегия
R&D стратегияR&D стратегия
R&D стратегияDmitry Karpov
 
"Поговорим о грустном": UI, UX как ключевые составляющие фирменного стиля бли...
"Поговорим о грустном": UI, UX как ключевые составляющие фирменного стиля бли..."Поговорим о грустном": UI, UX как ключевые составляющие фирменного стиля бли...
"Поговорим о грустном": UI, UX как ключевые составляющие фирменного стиля бли...Yaroslav Trofimov
 
В чем сила мела. Dribbble Meetup 2015
В чем сила мела. Dribbble Meetup 2015В чем сила мела. Dribbble Meetup 2015
В чем сила мела. Dribbble Meetup 2015igormustaev
 
Digital promotion новые взгляды на методику
Digital promotion новые взгляды на методикуDigital promotion новые взгляды на методику
Digital promotion новые взгляды на методикуDmitry Karpov
 
Курс маленького гения
Курс маленького генияКурс маленького гения
Курс маленького генияDmitry Karpov
 
От Гутенберга к Метро. Геометрический модуль, как вдохновение и инструмент в ...
От Гутенберга к Метро. Геометрический модуль, как вдохновение и инструмент в ...От Гутенберга к Метро. Геометрический модуль, как вдохновение и инструмент в ...
От Гутенберга к Метро. Геометрический модуль, как вдохновение и инструмент в ...Dmitry Karpov
 
Фрагмент семинара «Интерактивные механики которые работают»
Фрагмент семинара «Интерактивные механики которые работают»Фрагмент семинара «Интерактивные механики которые работают»
Фрагмент семинара «Интерактивные механики которые работают»Dmitry Karpov
 
25 упражнений для тех кому больше всех надо.
25 упражнений для тех кому больше всех надо. 25 упражнений для тех кому больше всех надо.
25 упражнений для тех кому больше всех надо. Dmitry Karpov
 
GDC 2016: Modular Level Design of Fallout 4
GDC 2016: Modular Level Design of Fallout 4 GDC 2016: Modular Level Design of Fallout 4
GDC 2016: Modular Level Design of Fallout 4 Joel Burgess
 

En vedette (18)

36℃+360°+365 (in Russian)
36℃+360°+365 (in Russian)36℃+360°+365 (in Russian)
36℃+360°+365 (in Russian)
 
Методы сопоставления видео
Методы сопоставления видеоМетоды сопоставления видео
Методы сопоставления видео
 
Презентация NetCat 5
Презентация NetCat 5Презентация NetCat 5
Презентация NetCat 5
 
Стимуляторы для терминатора. Апгрейд для digital арт-директора
Стимуляторы для терминатора. Апгрейд для digital арт-директораСтимуляторы для терминатора. Апгрейд для digital арт-директора
Стимуляторы для терминатора. Апгрейд для digital арт-директора
 
UX, UI, Design
UX, UI, DesignUX, UI, Design
UX, UI, Design
 
THO MEN SHOW: Sheremetova&Popova
THO MEN SHOW: Sheremetova&Popova THO MEN SHOW: Sheremetova&Popova
THO MEN SHOW: Sheremetova&Popova
 
пять стратегий R&D
пять стратегий R&Dпять стратегий R&D
пять стратегий R&D
 
Выносим мозг. Интерактивные городские объекты.
Выносим мозг. Интерактивные городские объекты.Выносим мозг. Интерактивные городские объекты.
Выносим мозг. Интерактивные городские объекты.
 
R&D стратегия
R&D стратегияR&D стратегия
R&D стратегия
 
"Поговорим о грустном": UI, UX как ключевые составляющие фирменного стиля бли...
"Поговорим о грустном": UI, UX как ключевые составляющие фирменного стиля бли..."Поговорим о грустном": UI, UX как ключевые составляющие фирменного стиля бли...
"Поговорим о грустном": UI, UX как ключевые составляющие фирменного стиля бли...
 
В чем сила мела. Dribbble Meetup 2015
В чем сила мела. Dribbble Meetup 2015В чем сила мела. Dribbble Meetup 2015
В чем сила мела. Dribbble Meetup 2015
 
Digital promotion новые взгляды на методику
Digital promotion новые взгляды на методикуDigital promotion новые взгляды на методику
Digital promotion новые взгляды на методику
 
Курс маленького гения
Курс маленького генияКурс маленького гения
Курс маленького гения
 
От Гутенберга к Метро. Геометрический модуль, как вдохновение и инструмент в ...
От Гутенберга к Метро. Геометрический модуль, как вдохновение и инструмент в ...От Гутенберга к Метро. Геометрический модуль, как вдохновение и инструмент в ...
От Гутенберга к Метро. Геометрический модуль, как вдохновение и инструмент в ...
 
Фрагмент семинара «Интерактивные механики которые работают»
Фрагмент семинара «Интерактивные механики которые работают»Фрагмент семинара «Интерактивные механики которые работают»
Фрагмент семинара «Интерактивные механики которые работают»
 
25 упражнений для тех кому больше всех надо.
25 упражнений для тех кому больше всех надо. 25 упражнений для тех кому больше всех надо.
25 упражнений для тех кому больше всех надо.
 
GDC 2016: Modular Level Design of Fallout 4
GDC 2016: Modular Level Design of Fallout 4 GDC 2016: Modular Level Design of Fallout 4
GDC 2016: Modular Level Design of Fallout 4
 
Приложение Makeoveridea
Приложение MakeoverideaПриложение Makeoveridea
Приложение Makeoveridea
 

Similaire à Бубер Илья (Progrestar) - “From Flash to Mobile. Портирование flash-игры на мобильные платформы: iOS и Android”

«Путь от инди-разработчика до гейм-дизайнера в студии»
«Путь от инди-разработчика до гейм-дизайнера в студии»«Путь от инди-разработчика до гейм-дизайнера в студии»
«Путь от инди-разработчика до гейм-дизайнера в студии»Stfalcon Meetups
 
Тестируем игры для мобильных устройств: от прототипа до запуска
Тестируем игры для мобильных устройств: от прототипа до запускаТестируем игры для мобильных устройств: от прототипа до запуска
Тестируем игры для мобильных устройств: от прототипа до запускаSQALab
 
Разработка игр на базе AlternativaPlatform
Разработка игр на базе AlternativaPlatformРазработка игр на базе AlternativaPlatform
Разработка игр на базе AlternativaPlatformAnton Volkov
 
Введение в тестирование мобильных игр (SQA Days-12)
Введение в тестирование мобильных игр (SQA Days-12)Введение в тестирование мобильных игр (SQA Days-12)
Введение в тестирование мобильных игр (SQA Days-12)Catherine Tipanova
 
Современные базовые принципы UX-проектирования в играх, Ольга Шуберт, ведущий...
Современные базовые принципы UX-проектирования в играх, Ольга Шуберт, ведущий...Современные базовые принципы UX-проектирования в играх, Ольга Шуберт, ведущий...
Современные базовые принципы UX-проектирования в играх, Ольга Шуберт, ведущий...Mail.ru Group
 
Unity3d - простой путь к iPhone приложению
Unity3d - простой путь к iPhone приложениюUnity3d - простой путь к iPhone приложению
Unity3d - простой путь к iPhone приложениюYandex
 
Игровые приложения для мобильных платформ
Игровые приложения для мобильных платформИгровые приложения для мобильных платформ
Игровые приложения для мобильных платформTatiana Aulachynskaya
 
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7CodeFest
 
Earn millions with a casual gameplay
Earn millions with a casual gameplayEarn millions with a casual gameplay
Earn millions with a casual gameplayAnton Volkov
 
Новая эра браузерных 3D-игр"
Новая эра браузерных 3D-игр"Новая эра браузерных 3D-игр"
Новая эра браузерных 3D-игр"DevGAMM Conference
 
Использование игровых элементов и методов в процессе тестирования
Использование игровых элементов и методов в процессе тестированияИспользование игровых элементов и методов в процессе тестирования
Использование игровых элементов и методов в процессе тестированияSQALab
 
Докладчик: Пётр Камышников, глава команды интерфейса на проекте «Аллоды Онлайн».
Докладчик: Пётр Камышников, глава команды интерфейса на проекте «Аллоды Онлайн».Докладчик: Пётр Камышников, глава команды интерфейса на проекте «Аллоды Онлайн».
Докладчик: Пётр Камышников, глава команды интерфейса на проекте «Аллоды Онлайн».Андрей Бростовский
 
Ladutko - Gamification in Quality Assurance
Ladutko - Gamification in Quality AssuranceLadutko - Gamification in Quality Assurance
Ladutko - Gamification in Quality AssuranceAndrey Ladutko
 
Unreal Engine 4: Best Practices and Recent Showcases
Unreal Engine 4: Best Practices and Recent ShowcasesUnreal Engine 4: Best Practices and Recent Showcases
Unreal Engine 4: Best Practices and Recent ShowcasesDevGAMM Conference
 
Tanki Online — multiplayer 3D-action in browser
Tanki Online — multiplayer 3D-action in browserTanki Online — multiplayer 3D-action in browser
Tanki Online — multiplayer 3D-action in browserAnton Volkov
 
«Разработка игр на Windows — возможности и перспективы» Ромуальд Здебский, Mi...
«Разработка игр на Windows — возможности и перспективы» Ромуальд Здебский, Mi...«Разработка игр на Windows — возможности и перспективы» Ромуальд Здебский, Mi...
«Разработка игр на Windows — возможности и перспективы» Ромуальд Здебский, Mi...DataArt
 
CodeFest 2013. Хозя А. — Как screenshot-based средство автоматизации нам стро...
CodeFest 2013. Хозя А. — Как screenshot-based средство автоматизации нам стро...CodeFest 2013. Хозя А. — Как screenshot-based средство автоматизации нам стро...
CodeFest 2013. Хозя А. — Как screenshot-based средство автоматизации нам стро...CodeFest
 

Similaire à Бубер Илья (Progrestar) - “From Flash to Mobile. Портирование flash-игры на мобильные платформы: iOS и Android” (20)

«Путь от инди-разработчика до гейм-дизайнера в студии»
«Путь от инди-разработчика до гейм-дизайнера в студии»«Путь от инди-разработчика до гейм-дизайнера в студии»
«Путь от инди-разработчика до гейм-дизайнера в студии»
 
Тестируем игры для мобильных устройств: от прототипа до запуска
Тестируем игры для мобильных устройств: от прототипа до запускаТестируем игры для мобильных устройств: от прототипа до запуска
Тестируем игры для мобильных устройств: от прототипа до запуска
 
Разработка игр на базе AlternativaPlatform
Разработка игр на базе AlternativaPlatformРазработка игр на базе AlternativaPlatform
Разработка игр на базе AlternativaPlatform
 
Введение в тестирование мобильных игр (SQA Days-12)
Введение в тестирование мобильных игр (SQA Days-12)Введение в тестирование мобильных игр (SQA Days-12)
Введение в тестирование мобильных игр (SQA Days-12)
 
Современные базовые принципы UX-проектирования в играх, Ольга Шуберт, ведущий...
Современные базовые принципы UX-проектирования в играх, Ольга Шуберт, ведущий...Современные базовые принципы UX-проектирования в играх, Ольга Шуберт, ведущий...
Современные базовые принципы UX-проектирования в играх, Ольга Шуберт, ведущий...
 
Unity3d - простой путь к iPhone приложению
Unity3d - простой путь к iPhone приложениюUnity3d - простой путь к iPhone приложению
Unity3d - простой путь к iPhone приложению
 
Игровые приложения для мобильных платформ
Игровые приложения для мобильных платформИгровые приложения для мобильных платформ
Игровые приложения для мобильных платформ
 
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
 
Earn millions with a casual gameplay
Earn millions with a casual gameplayEarn millions with a casual gameplay
Earn millions with a casual gameplay
 
Новая эра браузерных 3D-игр"
Новая эра браузерных 3D-игр"Новая эра браузерных 3D-игр"
Новая эра браузерных 3D-игр"
 
Использование игровых элементов и методов в процессе тестирования
Использование игровых элементов и методов в процессе тестированияИспользование игровых элементов и методов в процессе тестирования
Использование игровых элементов и методов в процессе тестирования
 
Докладчик: Пётр Камышников, глава команды интерфейса на проекте «Аллоды Онлайн».
Докладчик: Пётр Камышников, глава команды интерфейса на проекте «Аллоды Онлайн».Докладчик: Пётр Камышников, глава команды интерфейса на проекте «Аллоды Онлайн».
Докладчик: Пётр Камышников, глава команды интерфейса на проекте «Аллоды Онлайн».
 
Ladutko - Gamification in Quality Assurance
Ladutko - Gamification in Quality AssuranceLadutko - Gamification in Quality Assurance
Ladutko - Gamification in Quality Assurance
 
Kirill Zolovkin, OctoBox Interactive
Kirill Zolovkin, OctoBox InteractiveKirill Zolovkin, OctoBox Interactive
Kirill Zolovkin, OctoBox Interactive
 
Unreal Engine 4: Best Practices and Recent Showcases
Unreal Engine 4: Best Practices and Recent ShowcasesUnreal Engine 4: Best Practices and Recent Showcases
Unreal Engine 4: Best Practices and Recent Showcases
 
Tanki Online — multiplayer 3D-action in browser
Tanki Online — multiplayer 3D-action in browserTanki Online — multiplayer 3D-action in browser
Tanki Online — multiplayer 3D-action in browser
 
«Разработка игр на Windows — возможности и перспективы» Ромуальд Здебский, Mi...
«Разработка игр на Windows — возможности и перспективы» Ромуальд Здебский, Mi...«Разработка игр на Windows — возможности и перспективы» Ромуальд Здебский, Mi...
«Разработка игр на Windows — возможности и перспективы» Ромуальд Здебский, Mi...
 
Stephan Keiss
Stephan Keiss Stephan Keiss
Stephan Keiss
 
Modern wars — инвестиционный проект
Modern wars — инвестиционный проектModern wars — инвестиционный проект
Modern wars — инвестиционный проект
 
CodeFest 2013. Хозя А. — Как screenshot-based средство автоматизации нам стро...
CodeFest 2013. Хозя А. — Как screenshot-based средство автоматизации нам стро...CodeFest 2013. Хозя А. — Как screenshot-based средство автоматизации нам стро...
CodeFest 2013. Хозя А. — Как screenshot-based средство автоматизации нам стро...
 

Plus de DevGAMM Conference

The art of small steps, or how to make sound for games in conditions of war /...
The art of small steps, or how to make sound for games in conditions of war /...The art of small steps, or how to make sound for games in conditions of war /...
The art of small steps, or how to make sound for games in conditions of war /...DevGAMM Conference
 
Breaking up with FMOD - Why we ended things and embraced Metasounds / Daniel ...
Breaking up with FMOD - Why we ended things and embraced Metasounds / Daniel ...Breaking up with FMOD - Why we ended things and embraced Metasounds / Daniel ...
Breaking up with FMOD - Why we ended things and embraced Metasounds / Daniel ...DevGAMM Conference
 
How Audio Objects Improve Spatial Accuracy / Mads Maretty Sønderup (Audiokine...
How Audio Objects Improve Spatial Accuracy / Mads Maretty Sønderup (Audiokine...How Audio Objects Improve Spatial Accuracy / Mads Maretty Sønderup (Audiokine...
How Audio Objects Improve Spatial Accuracy / Mads Maretty Sønderup (Audiokine...DevGAMM Conference
 
Why indie developers should consider hyper-casual right now / Igor Gurenyov (...
Why indie developers should consider hyper-casual right now / Igor Gurenyov (...Why indie developers should consider hyper-casual right now / Igor Gurenyov (...
Why indie developers should consider hyper-casual right now / Igor Gurenyov (...DevGAMM Conference
 
AI / ML for Indies / Tyler Coleman (Retora Games)
AI / ML for Indies / Tyler Coleman (Retora Games)AI / ML for Indies / Tyler Coleman (Retora Games)
AI / ML for Indies / Tyler Coleman (Retora Games)DevGAMM Conference
 
Agility is the Key: Power Up Your GameDev Project Management with Agile Pract...
Agility is the Key: Power Up Your GameDev Project Management with Agile Pract...Agility is the Key: Power Up Your GameDev Project Management with Agile Pract...
Agility is the Key: Power Up Your GameDev Project Management with Agile Pract...DevGAMM Conference
 
New PR Tech and AI Tools for 2023: A Game Changer for Outreach / Kirill Perev...
New PR Tech and AI Tools for 2023: A Game Changer for Outreach / Kirill Perev...New PR Tech and AI Tools for 2023: A Game Changer for Outreach / Kirill Perev...
New PR Tech and AI Tools for 2023: A Game Changer for Outreach / Kirill Perev...DevGAMM Conference
 
Playable Ads - Revolutionizing mobile games advertising / Jakub Kukuryk (Popc...
Playable Ads - Revolutionizing mobile games advertising / Jakub Kukuryk (Popc...Playable Ads - Revolutionizing mobile games advertising / Jakub Kukuryk (Popc...
Playable Ads - Revolutionizing mobile games advertising / Jakub Kukuryk (Popc...DevGAMM Conference
 
Creative Collaboration: Managing an Art Team / Nastassia Radzivonava (Glera G...
Creative Collaboration: Managing an Art Team / Nastassia Radzivonava (Glera G...Creative Collaboration: Managing an Art Team / Nastassia Radzivonava (Glera G...
Creative Collaboration: Managing an Art Team / Nastassia Radzivonava (Glera G...DevGAMM Conference
 
From Local to Global: Unleashing the Power of Payments / Jan Kuhlmannn (Xsolla)
From Local to Global: Unleashing the Power of Payments / Jan Kuhlmannn (Xsolla)From Local to Global: Unleashing the Power of Payments / Jan Kuhlmannn (Xsolla)
From Local to Global: Unleashing the Power of Payments / Jan Kuhlmannn (Xsolla)DevGAMM Conference
 
Strategies and case studies to grow LTV in 2023 / Julia Iljuk (Balancy)
Strategies and case studies to grow LTV in 2023 / Julia Iljuk (Balancy)Strategies and case studies to grow LTV in 2023 / Julia Iljuk (Balancy)
Strategies and case studies to grow LTV in 2023 / Julia Iljuk (Balancy)DevGAMM Conference
 
Why is ASO not working in 2023 and how to change it? / Olena Vedmedenko (Keya...
Why is ASO not working in 2023 and how to change it? / Olena Vedmedenko (Keya...Why is ASO not working in 2023 and how to change it? / Olena Vedmedenko (Keya...
Why is ASO not working in 2023 and how to change it? / Olena Vedmedenko (Keya...DevGAMM Conference
 
How to increase wishlists & game sales from China? Growth marketing tactics &...
How to increase wishlists & game sales from China? Growth marketing tactics &...How to increase wishlists & game sales from China? Growth marketing tactics &...
How to increase wishlists & game sales from China? Growth marketing tactics &...DevGAMM Conference
 
Turkish Gaming Industry and HR Insights / Mustafa Mert EFE (Zindhu)
Turkish Gaming Industry and HR Insights / Mustafa Mert EFE (Zindhu)Turkish Gaming Industry and HR Insights / Mustafa Mert EFE (Zindhu)
Turkish Gaming Industry and HR Insights / Mustafa Mert EFE (Zindhu)DevGAMM Conference
 
Building an Awesome Creative Team from Scratch, Capable of Scaling Up / Sasha...
Building an Awesome Creative Team from Scratch, Capable of Scaling Up / Sasha...Building an Awesome Creative Team from Scratch, Capable of Scaling Up / Sasha...
Building an Awesome Creative Team from Scratch, Capable of Scaling Up / Sasha...DevGAMM Conference
 
Seven Reasons Why Your LiveOps Is Not Performing / Alexander Devyaterikov (Be...
Seven Reasons Why Your LiveOps Is Not Performing / Alexander Devyaterikov (Be...Seven Reasons Why Your LiveOps Is Not Performing / Alexander Devyaterikov (Be...
Seven Reasons Why Your LiveOps Is Not Performing / Alexander Devyaterikov (Be...DevGAMM Conference
 
The Power of Game and Music Collaborations: Reaching and Engaging the Masses ...
The Power of Game and Music Collaborations: Reaching and Engaging the Masses ...The Power of Game and Music Collaborations: Reaching and Engaging the Masses ...
The Power of Game and Music Collaborations: Reaching and Engaging the Masses ...DevGAMM Conference
 
Branded Content: How to overcome players' immunity to advertising / Alex Brod...
Branded Content: How to overcome players' immunity to advertising / Alex Brod...Branded Content: How to overcome players' immunity to advertising / Alex Brod...
Branded Content: How to overcome players' immunity to advertising / Alex Brod...DevGAMM Conference
 
Resurrecting Chasm: The Rift - A Source-less Remastering Journey / Gennadii P...
Resurrecting Chasm: The Rift - A Source-less Remastering Journey / Gennadii P...Resurrecting Chasm: The Rift - A Source-less Remastering Journey / Gennadii P...
Resurrecting Chasm: The Rift - A Source-less Remastering Journey / Gennadii P...DevGAMM Conference
 
How NOT to do showcase events: Behind the scenes of Midnight Show / Andrew Ko...
How NOT to do showcase events: Behind the scenes of Midnight Show / Andrew Ko...How NOT to do showcase events: Behind the scenes of Midnight Show / Andrew Ko...
How NOT to do showcase events: Behind the scenes of Midnight Show / Andrew Ko...DevGAMM Conference
 

Plus de DevGAMM Conference (20)

The art of small steps, or how to make sound for games in conditions of war /...
The art of small steps, or how to make sound for games in conditions of war /...The art of small steps, or how to make sound for games in conditions of war /...
The art of small steps, or how to make sound for games in conditions of war /...
 
Breaking up with FMOD - Why we ended things and embraced Metasounds / Daniel ...
Breaking up with FMOD - Why we ended things and embraced Metasounds / Daniel ...Breaking up with FMOD - Why we ended things and embraced Metasounds / Daniel ...
Breaking up with FMOD - Why we ended things and embraced Metasounds / Daniel ...
 
How Audio Objects Improve Spatial Accuracy / Mads Maretty Sønderup (Audiokine...
How Audio Objects Improve Spatial Accuracy / Mads Maretty Sønderup (Audiokine...How Audio Objects Improve Spatial Accuracy / Mads Maretty Sønderup (Audiokine...
How Audio Objects Improve Spatial Accuracy / Mads Maretty Sønderup (Audiokine...
 
Why indie developers should consider hyper-casual right now / Igor Gurenyov (...
Why indie developers should consider hyper-casual right now / Igor Gurenyov (...Why indie developers should consider hyper-casual right now / Igor Gurenyov (...
Why indie developers should consider hyper-casual right now / Igor Gurenyov (...
 
AI / ML for Indies / Tyler Coleman (Retora Games)
AI / ML for Indies / Tyler Coleman (Retora Games)AI / ML for Indies / Tyler Coleman (Retora Games)
AI / ML for Indies / Tyler Coleman (Retora Games)
 
Agility is the Key: Power Up Your GameDev Project Management with Agile Pract...
Agility is the Key: Power Up Your GameDev Project Management with Agile Pract...Agility is the Key: Power Up Your GameDev Project Management with Agile Pract...
Agility is the Key: Power Up Your GameDev Project Management with Agile Pract...
 
New PR Tech and AI Tools for 2023: A Game Changer for Outreach / Kirill Perev...
New PR Tech and AI Tools for 2023: A Game Changer for Outreach / Kirill Perev...New PR Tech and AI Tools for 2023: A Game Changer for Outreach / Kirill Perev...
New PR Tech and AI Tools for 2023: A Game Changer for Outreach / Kirill Perev...
 
Playable Ads - Revolutionizing mobile games advertising / Jakub Kukuryk (Popc...
Playable Ads - Revolutionizing mobile games advertising / Jakub Kukuryk (Popc...Playable Ads - Revolutionizing mobile games advertising / Jakub Kukuryk (Popc...
Playable Ads - Revolutionizing mobile games advertising / Jakub Kukuryk (Popc...
 
Creative Collaboration: Managing an Art Team / Nastassia Radzivonava (Glera G...
Creative Collaboration: Managing an Art Team / Nastassia Radzivonava (Glera G...Creative Collaboration: Managing an Art Team / Nastassia Radzivonava (Glera G...
Creative Collaboration: Managing an Art Team / Nastassia Radzivonava (Glera G...
 
From Local to Global: Unleashing the Power of Payments / Jan Kuhlmannn (Xsolla)
From Local to Global: Unleashing the Power of Payments / Jan Kuhlmannn (Xsolla)From Local to Global: Unleashing the Power of Payments / Jan Kuhlmannn (Xsolla)
From Local to Global: Unleashing the Power of Payments / Jan Kuhlmannn (Xsolla)
 
Strategies and case studies to grow LTV in 2023 / Julia Iljuk (Balancy)
Strategies and case studies to grow LTV in 2023 / Julia Iljuk (Balancy)Strategies and case studies to grow LTV in 2023 / Julia Iljuk (Balancy)
Strategies and case studies to grow LTV in 2023 / Julia Iljuk (Balancy)
 
Why is ASO not working in 2023 and how to change it? / Olena Vedmedenko (Keya...
Why is ASO not working in 2023 and how to change it? / Olena Vedmedenko (Keya...Why is ASO not working in 2023 and how to change it? / Olena Vedmedenko (Keya...
Why is ASO not working in 2023 and how to change it? / Olena Vedmedenko (Keya...
 
How to increase wishlists & game sales from China? Growth marketing tactics &...
How to increase wishlists & game sales from China? Growth marketing tactics &...How to increase wishlists & game sales from China? Growth marketing tactics &...
How to increase wishlists & game sales from China? Growth marketing tactics &...
 
Turkish Gaming Industry and HR Insights / Mustafa Mert EFE (Zindhu)
Turkish Gaming Industry and HR Insights / Mustafa Mert EFE (Zindhu)Turkish Gaming Industry and HR Insights / Mustafa Mert EFE (Zindhu)
Turkish Gaming Industry and HR Insights / Mustafa Mert EFE (Zindhu)
 
Building an Awesome Creative Team from Scratch, Capable of Scaling Up / Sasha...
Building an Awesome Creative Team from Scratch, Capable of Scaling Up / Sasha...Building an Awesome Creative Team from Scratch, Capable of Scaling Up / Sasha...
Building an Awesome Creative Team from Scratch, Capable of Scaling Up / Sasha...
 
Seven Reasons Why Your LiveOps Is Not Performing / Alexander Devyaterikov (Be...
Seven Reasons Why Your LiveOps Is Not Performing / Alexander Devyaterikov (Be...Seven Reasons Why Your LiveOps Is Not Performing / Alexander Devyaterikov (Be...
Seven Reasons Why Your LiveOps Is Not Performing / Alexander Devyaterikov (Be...
 
The Power of Game and Music Collaborations: Reaching and Engaging the Masses ...
The Power of Game and Music Collaborations: Reaching and Engaging the Masses ...The Power of Game and Music Collaborations: Reaching and Engaging the Masses ...
The Power of Game and Music Collaborations: Reaching and Engaging the Masses ...
 
Branded Content: How to overcome players' immunity to advertising / Alex Brod...
Branded Content: How to overcome players' immunity to advertising / Alex Brod...Branded Content: How to overcome players' immunity to advertising / Alex Brod...
Branded Content: How to overcome players' immunity to advertising / Alex Brod...
 
Resurrecting Chasm: The Rift - A Source-less Remastering Journey / Gennadii P...
Resurrecting Chasm: The Rift - A Source-less Remastering Journey / Gennadii P...Resurrecting Chasm: The Rift - A Source-less Remastering Journey / Gennadii P...
Resurrecting Chasm: The Rift - A Source-less Remastering Journey / Gennadii P...
 
How NOT to do showcase events: Behind the scenes of Midnight Show / Andrew Ko...
How NOT to do showcase events: Behind the scenes of Midnight Show / Andrew Ko...How NOT to do showcase events: Behind the scenes of Midnight Show / Andrew Ko...
How NOT to do showcase events: Behind the scenes of Midnight Show / Andrew Ko...
 

Бубер Илья (Progrestar) - “From Flash to Mobile. Портирование flash-игры на мобильные платформы: iOS и Android”

  • 1.
  • 2. Flash to Mobile. Портирование Flash-игры на мобильные платформы Илья Бубер. Руководитель проектов, Progrestar Inc. www.progrestar.com Twitter: @Progrestar
  • 3. Flash-Игра Копай Исследуй острова Собирай коллекции Собирай команду с друзьями
  • 4. Копай в Соц. Сетях 6 млн довольных пользователей из СНГ, Европы и Мира Миллионы собранных коллекций Тысячи сломанных от бесконечного кликанья мышек.
  • 5. Зачем мы этим занимались?
  • 7. Часть 1. Выбираем Framework Обзор iTorque2D Плюсы Недостатки WYSIWYG редактор Простой скриптовый язык Исходники Возможность компиляции под PC/Mac Немного успешных iOSприложений Редкие обновления Умирающее коммьюнити
  • 8. Часть 1. Выбираем Framework iTorque2D –Зачем его можно использовать? Для платформеров Для людей, плохо владеющих программированием Если собираетесь выпускать десктоп-версию http://www.garagegames.com/products/torque-2d/iphone Искать тут:
  • 9. Часть 1. Выбираем Framework cocos2D Плюсы Недостатки Бесплатный Open Source Огромное количество успешных игр Нативный симулятор Огромное коммьюнити Отсутствие Android Objective C – не самый легкий язык для AS3-разработчика Продались Zynga
  • 10. Часть 1. Выбираем Framework cocos2D –Для чего подходит? Идеально для инди-разработчиков Если не испытываете проблем с низкоуровневым Objective C Лучший выбор для iOS http://www.cocos2d-iphone.org/ Искать тут:
  • 11. Часть 1. Выбираем Framework Ansca Corona Плюсы Недостатки Компиляция под Android LUA Ежедневные обновления Тех. поддержка и коммьюнити Невозможность подключать нативные плагины Компиляция на сервере Corona Не всегда адекватно работающий симулятор
  • 12. Часть 1. Выбираем Framework А нужен ли Android? 400.000 активаций в день Нет проблем с попадением в Market (быстрый аппрув) Слабая конкуренция 4.5 млрд скачанных приложений Появились In-App Purchases
  • 13. Часть 1. Выбираем Framework И побеждает…. http://www.anscamobile.com/corona/ Искать тут:
  • 14.
  • 17. Часть 2. Экспорт ассетов Экспорт с помощью JavaScript Flash API Library MegaMonsters.fla Heroes.fla Islands.fla SuperDudeFolder JavaScript Flash API SeaTurtle MagicMushroom CrazyPirate SAVE
  • 18. Часть 2. Экспорт ассетов Выдираем ассеты с помощью AIR-приложения location_1.swf META-Data Images
  • 19. Часть 2. Экспорт ассетов Анимации в Sprite Sheets Sprite Sheet Выделение памяти в степенях 2 (600x600 такой же размер как 1024x1024) 1024x1024 – Макс. Размер (некоторые девайсы могут 2048x2048) Оптимизируем Sprite Sheet’ы Zwoptex’ом http://zwoptexapp.com/
  • 20. Часть 2. Экспорт ассетов Экспорт переодеваемых персонажей Персонаж Части тела (PNG) Одежда и черты лица Origins (X,Y) Анимация Точки трансформации (X,Y) Motion Tweens Вычисляем абсолютные X,Y для каждой одетой части.
  • 21. Часть3. Game Design Взаимодействие с игрой
  • 22. Часть3. Game Design Полностью переверстанный интерфейс
  • 23. Часть3. Game Design Оптимизация под TouchScreen
  • 24. Часть3. Game Design Мини-игры Мини-игры для TouchScreen’ов Усложняется со временем (до 9 рун) Быстрое принятие решений Энергия в награду Точность важнее скорости Необходимо для прохождения игры Контуры усложняются с прогрессом игрока
  • 25. Часть 3. Game Design Измененные Социальные Механики Карта Друзей Добавление по User Code’у Бонус за приглашение друзей через Facebook Friend Code выдается каждому игроку при регистрации. Если друг введет у себя твой код, вы оба получите СтарМани
  • 26. Часть3. Game Design Избавление от ненужных Социальных Механик
  • 27. Часть3. Game Design Упрощение игры Прохождение карт по очереди Инструменты даны сразу Одни и те же коллекции
  • 28. Часть3. Game Design Волшебные Рубины Волшебные Рубины – основной способ улучшать характеристики своего персонажа Можно добыть только собирая коллекции полностью Не продаются за деньги
  • 29. Часть 3. Game Design Экшен-Бар Побуждает игрока активно взаимодействовать с экраном девайса Уменьшает зависимость доходов от удачи Вызывает позитивные эмоции у игроков Дополнительный стимул тратить СтарМани на открытие препятствий
  • 30. Часть 3. Game Design Gambling Вместо производства расходников, их можно теперь выиграть у Пьяного Торговца
  • 31.
  • 33.
  • 34. Часть 3. Программирование Разное у Corona и Flash Нет фильтров и доступа к пикселям Не всегда удобная система координат Непривычная работа с растровыми объектами-изображениями Нет хорошей среды для программирования
  • 35. Часть3. Программирование Реализация связи с Сервером Браузер Мобильный My iPhone Сохранить новые данные Сохранение ОК! Сокровища Профит Копать ТУТ My iPad Синхронизироваться Новые данные Не нужно постоянное соединение с Интернет
  • 36. Часть3. Программирование Компиляция проекта на Corona Проблемы Симулятор != Девайс Билд происходит на удаленном сервере Иногда билды занимают до 10-15 минут Не всегда корректно работает с вложенными папками в проекте
  • 37. Что мы сделали? Кросс-платформенное мобильное приложение Не требует постоянного соединения с Сетью Проделана огромная работа по оптимизации игры для TouchScreen
  • 38. Спасибо за внимание! Вопросы? ИЛЬЯ БУБЕР ibuber@progrestar.com

Notes de l'éditeur

  1. Наверное, стоит рассказать про библиотеку их стандартную, которую они кусками сделали по образу и подобия флешевых концепций.Про язык:В принципе в слайдах основное есть, язык реально на очень малом числе концепций строится.Общая идея языка такова. Основной тип – таблица. Есть ещё строки, числа и функции. Функции оперируют над всеми типами, в том числе над функциями. Соотстветсвенно, переменные все эти типы могут хранить. Единственный другой тип – userData, бинарные данные подгруженные из C++. В короне это только системные объекты короны.Таблицы индексируются по любому типу – как по числам (массивы), так и по строкам (ассоциативные строковые массивы), так и по таблицам и функциям (чуть более изощрённые семантические творения, ближе к ООП). В принципе, базовый язык на этом заканчивается – пиши себе функции подряд, определяй новые, храни всё в таблицах, всё работает, зарабатывай бабло.Осталось выучить API короны.Но на самом деле, в таблице всегда есть особый элемент – метатаблица. Она и позволяет реализовывать ООП, поскольку определяет свойства таблицы. Метатаблица отвечает за индексацию таблицы – если в неё кладёшь по первому индексу 1, функция индексации обычно при попытке считать первый индекс даст этот элемент, в первом индексе. А можно её поменять, чтоб она давала тот, который после запрашиваемого – второй в данном случае.Почти все навороты языка кроме базового синтаксиса, императивного программироавния (тупо последовательность команд) и функционального программирования (оперирование функциями как объектами) – связано с метатаблицами. Есть ещё рефлексивность кой какая. В короне по-моему только и можно что узнать динамический тип переменной. Сериализации/десериализации точно нет, я из-за этого немного JSON’овский парсер перелопачивал.Про ООП:(может быть тебе даже не стоит полностью в это въезжать, эт я для общего представления...)На самом деле, наследование и инкапсуляция (правильное название «видимости») очень условно только есть. Инкапсуляция на уровне методов и переменных объектов её нет, а на уровне методов и переменных модуля они есть, как бы странно это ни звучало %). Наследование очень точно управляемо... То, что обычно в одну строчку делается, надо расписать довольно подробно – вся эта индексирующая ебола виртуальных методов. Но в каком-то смысле это удобнее и даёт больше контроля, но еболы побольше и понимать приходится больше.Основная суть реализации ООП в том, что кроме того, что можно просить числа, строки и таблицы у таблицы по строке – можно просить функции. При чём не просто функцию, а принимающую на вход таблицу, кроме остальных параметров. А эта таблица – объект класса, и в нём по строкам (названиям) индексируются переменные и функции класса. Поэтому нет честной инкапсуляции, в частности, потому что все методы таблицы индексируются по строкам (но по-хитрому я её реализую для классов, через инкапсуляцию по модулям – но всё равно не для объектов). Если помнишь, с того, что все нестатические методы принимают на вход ссылку на сам объект – this/self – в принципе ООП и начинается, именно за счёт этого у всех методов класса есть доступ к переменным и другим методам, это клей объектов.Надо в классе создавать метод-генератор, который будет генерировать объекты – хуячить в них все функции и переменные. А метатаблица позволяет функции хранить один раз, в одной таблице, и всегда вызывать их оттуда, передавая текущую таблицу-объект одним из аргументов. Просто надо ещё при создании всем объектам ровно эту метатаблицу, индексирующую функции класса, устанавливать.Вот отсюда ООП. Как видишь, оно не совсем настоящее, но в синтаксисе языке реализуется очень естественно, вплоть до того что синтаксис ООП-стиля становится похожим на С++ный (от которого пошёл флешевый), поэтому это очень рапостранено в Lua. Для небольших программ (месяц разработки кодовой части) скорее подходит более процедурный и функциональный стиль.Когда я говорю «есть ООП» я наверное немного берегу психику окружающих от реальности :-D. Но в коде эти концепции все отражаются довольно просто.