SlideShare a Scribd company logo
1 of 32
Кросс-платформенная
игровая разработка на
.NET
Июль 15, 2015
Perepechko Grigory
.NET Tech Lead
$549.1
Выручки
в 2014
миллионов
5.7
DAU
миллионов
18.5
MAU
миллионов
$0.27
DARPU
53%
Выручки с
телефонов
2010
Компания
основана в 7
Платформ
5
Игр
1000+
Сотрудников
https://3.downloader.disk.yandex.ru/preview/5e18301535bb4
524b1222c59c1ef6e86239c866d5ea8446a79b509ed8268e980/
inf/7mv97l0_f1GRcB8bRLC8M-
9AMsDKsusPdhF_VpGw_JjRypK0epAInHHgi4pRhSAUdCmOsdgg
jm7mTiGS9j2Kew%3D%3D?uid=0&filename=wpss2015071400
13png&disposition=inline&hash=&limit=0&content_type=imag
e%2Fpng&tknv=v2&size=1280x947
https://3.downloader.disk.yandex.ru/preview/5e18301535bb4
524b1222c59c1ef6e86239c866d5ea8446a79b509ed8268e980/
inf/7mv97l0_f1GRcB8bRLC8M-
9AMsDKsusPdhF_VpGw_JjRypK0epAInHHgi4pRhSAUdCmOsdgg
jm7mTiGS9j2Kew%3D%3D?uid=0&filename=wpss2015071400
13png&disposition=inline&hash=&limit=0&content_type=imag
e%2Fpng&tknv=v2&size=1280x947
1. Текстуры/атлас в .png/.pvr/.zpvr/.webp. Тайлинг, автобатчинг
2. Видео-спрайты (.bik), Видеомаски, Эффекты на уровне glsl/hlsl
3. Поддержка .ogg/.wav. Effect/Song аналогичные XNA
4. Спрайтовые анимации/стейт-машины на уровне ресурсов
5. Виджеты такие как button, checkbox, virtualized scroll
6. Поддержка Bitmap/TrueType шрифтов
7. Сценграф, json-based формат, экспорт сцен из Flash
1. IoC/DI
2. MVP
3. Event Aggregator
4. Async-based TAP
5. T4 для View
6. PCL
Архитектура приложения
Плюсы:
1. .NET это удобно!
2. Легко пишутся Unit-test`ы
3. Фичи модульны и практически не зависят друг от друга
4. 95% кода – в PCL
5. Разработка/отладка ведется под Windows
6. Любые изменения в ресурсах видны на этапе сборки
Минусы:
1. Требуется понимание сути IoC/Event Aggregator
2. Легко написать неэффективный код (минус .NET)
3. В PCL нет System.IO, Marshal и др.
Итоговые мысли о .NET
1. Шикарный перфоманс 
2. В итоге все больше кода уходит в native
3. Unsafe – огромное благо
4. Аллокаторы памяти тоже
5. Zero Alloc Rule (dotMemory MemoryTraffic)
6. Мощный и красивый язык разработк
7. Крупный проект выйдет за лимит apple по размеру бинарника
8. Нестабильность стабильного Xamarin (40+ багов)
9. Более сложная архитектура клиента из за необходимости в потоках
10.Хороших разработчиков на .NET не больше чем на C++
1.Git Branching Strategy с упрощениями
2.Фича в своей ветке пишется и тестируется.
3.На каждый коммит, в каждой ветке – билд всех платформ
4.Изначально билд степы в TC, теперь с проектом build scripts
15:00:00|INFO|1|MO-2015|Логирование в продакшн среде
В QA билдах логи шлются в локальный LogStorage
В Release билдах логи шлются при краше в HockeyApp
Критичная для аналитики инфа шлется в hadoop/GA
Серверное логирование ведется в Kibana
Нужен свой редактор сцен и ресурсов!
1.2d меши
2.Скиннинг
3.Скелетные анимации
4.Освещение на картах нормалей
5.Объединение с web flash версией
6.Ручная аллокация памяти
7.Движок на плюсах 
Спасибо за внимание!
mylce@ya.ru
pk.grigory.perepechko

More Related Content

Similar to Mobile .NET gamedev is not only Unity

3д принтеры
3д принтеры3д принтеры
3д принтерыOleg Korotkov
 
#ITsubbotnik Spring 2017: Sergey Mishanin "Report Portal. Руководство для аде...
#ITsubbotnik Spring 2017: Sergey Mishanin "Report Portal. Руководство для аде...#ITsubbotnik Spring 2017: Sergey Mishanin "Report Portal. Руководство для аде...
#ITsubbotnik Spring 2017: Sergey Mishanin "Report Portal. Руководство для аде...epamspb
 
МРТ для данных / Анастасия Горячева (Avito)
МРТ для данных / Анастасия Горячева (Avito)МРТ для данных / Анастасия Горячева (Avito)
МРТ для данных / Анастасия Горячева (Avito)Ontico
 
МРТ для данных, Frontend Conf 2016
МРТ для данных, Frontend Conf 2016МРТ для данных, Frontend Conf 2016
МРТ для данных, Frontend Conf 2016Anastasia Goryacheva
 
Новая эра браузерных 3D-игр"
Новая эра браузерных 3D-игр"Новая эра браузерных 3D-игр"
Новая эра браузерных 3D-игр"DevGAMM Conference
 
Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33
Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33
Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33MoscowJS
 

Similar to Mobile .NET gamedev is not only Unity (6)

3д принтеры
3д принтеры3д принтеры
3д принтеры
 
#ITsubbotnik Spring 2017: Sergey Mishanin "Report Portal. Руководство для аде...
#ITsubbotnik Spring 2017: Sergey Mishanin "Report Portal. Руководство для аде...#ITsubbotnik Spring 2017: Sergey Mishanin "Report Portal. Руководство для аде...
#ITsubbotnik Spring 2017: Sergey Mishanin "Report Portal. Руководство для аде...
 
МРТ для данных / Анастасия Горячева (Avito)
МРТ для данных / Анастасия Горячева (Avito)МРТ для данных / Анастасия Горячева (Avito)
МРТ для данных / Анастасия Горячева (Avito)
 
МРТ для данных, Frontend Conf 2016
МРТ для данных, Frontend Conf 2016МРТ для данных, Frontend Conf 2016
МРТ для данных, Frontend Conf 2016
 
Новая эра браузерных 3D-игр"
Новая эра браузерных 3D-игр"Новая эра браузерных 3D-игр"
Новая эра браузерных 3D-игр"
 
Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33
Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33
Предсказуемый Viewport, Вопиловский Константин, KamaGames Studio, MoscowJs 33
 

Mobile .NET gamedev is not only Unity