SlideShare ist ein Scribd-Unternehmen logo
1 von 18
SVG в разработке
компьютерных игр: быть или
         не быть


         Юрийчук Павел
          BoosterMedia
             Ciklum
О себе
В Сиклуме с 2011 года в качестве Front end Mobile
games developer
Опыт разработки: Flex/Actionscript/Javascript
Прошлое: Casino games
Текущее: Casual Games
Контакты:
Skype: pavlo.yuriychuck
Email: pluccky@gmail.com
Facebook
Twitter
Теперешнее - Casual Games
Прошлое - Casino games
О чем наше
                        представление
●
    Игрушка
●
    Примеры того что можно сделать
●
    Какие есть альтернативы
●
    О ролях в проекте: действующие лица
     марлезонского балета
●
    О надеждах поговорим или почему же SVG
●
    А что же может он
●
И еще немного
●
    О граблях
●
    О кросс-платформенности
●
    О скорости
●
    О природе R&D
●
    О бытие, или где стоит использовать
     SVG
Вступление. Задача

●
 Dress-up игра с большим количеством экранов и
элементов user interface
Много графики
●


●
 Хорошо бы сократить время и трудоресурсы на
обработку графических ресурсов
Есть версия игры на flash
●



Мало времени на подгонку элементов и верстку
●



HTML5 – целевая платформа iOS & Android
●
Как он выглядит
●
    Игрушки!
      –   Стрелялка
      –   Логика
      –   ТворениеСергеяПажинтова
      –   Пасьянс
      –   УчимгеографиюСША
Альтернативы
●
    Рендерить FXG в Canvas
●
    Bitmap graphics
●
    Велосипеды
Вступление.
          Действующие лица
Художник “золотые руки”
●



Флешер тимлид
●



Менеджер. Просто менеджер.
●


●
 Программист с флексовым прошлым и
джаваскриптовым настоящим
Акт первый. Надежды
●
    SVG Создан в 2001 году
●
    Поддерживается почти всеми браузерами
●
 Экспорт поддерживается многими
редакторами векторной графики
●
 Хорошая интеграция с ECMAScript /
JavaScript
●
 Пользовательский интерфейс можно
использовать сразу после того, как его
нарисовал художник!
Акт второй. Поиски
●
    Как встроить SVG в DOM:
HTML5 Canvas Object
−


In-line SVG
−


●
    Как загрузить сам SVG:
AJAX request, response type == xml
−


●
    Как пользоваться:
Интерактивность, игра жеж
−


−Прогулки по воде или как найти нужный тег
документе
Лирическое
                                 отступление #1
●
    Что предлагает SVG
              –   DOM GetElementByTagName,
                   GetElementById(?),
                   getAttrbuteNS/setAttrbuteNS, childNodes
              –   JavaScript events
              –   SMIL, JS animation,
              –   CSS ;)
●
    Что есть в Flash
              –   UI tree, SetProperty/getProperty
              –   Flash Events
              –   Animation, keyFrames, transitions, paths, movie
                   clip
              –   CSS, Flex only ;)
Акт третий. Грабли
AdoptNode
●



GetElementById
●



CANVG
●



Анимацияивстроенныескрипты
●



Inkscape
●
Акт четвертый. Кросс-
                 платформенность

●
    Не все операции внедрены
     одинаково, некторых вообще нет,
     смотри акт грабли.
●
    Inline SVG только в андроиде и в
      десктоп-браузерах
●
    IOS хорошо работает с Canvas
●
Акт пятый. Быстрее
●
    Пробовали сжимать SVG в ZIP и
     распаковывать JavaScript
      –   Удобно
      –   Канонично
●
    Грузить все элементы одним SVG а потом
      резать на мелкие кусочки
●
    Сжимать SVG на стороне сервера
     mod_deflateилиmod_gzip
Акт шестой.
Прерванный полет R&D

 ●
     Bitmap быстрее
 ●
     CANVG поддерживает ограниченный набор
      SVG инструкций, сложные рисунки с
      трансформациями градиентов – не рисует
 ●
     IOS крешится при попытке распаковать 20kb
       zip, андроид и десктопные браузеры – как
       часы
Заключение. Где же все таки
      стоит использовать SVG
●
    Интерактивные карты, не флеш, но кое что может
●
    Карточные игры
●
    Тетрис
●
    Настольные игры – монополия
●
    Общеедлянихвсех:
      –   Мало анимации и она не интенсивная
      –   Не мобильные браузеры – медленная
           отрисовка и грузит процессор
      –   Не критично время загрузки ресурсов
●

Weitere ähnliche Inhalte

Was ist angesagt?

Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...
Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...
Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...Ontico
 
Frontend - экосистема и будущее: iforum 2015
Frontend - экосистема и будущее: iforum 2015Frontend - экосистема и будущее: iforum 2015
Frontend - экосистема и будущее: iforum 2015Eldar Djafarov
 
HappyDev-lite-2016-весна 05 Андрей Юдин. Javascript - мультиинструмент для всех
HappyDev-lite-2016-весна 05 Андрей Юдин. Javascript - мультиинструмент для всехHappyDev-lite-2016-весна 05 Андрей Юдин. Javascript - мультиинструмент для всех
HappyDev-lite-2016-весна 05 Андрей Юдин. Javascript - мультиинструмент для всехHappyDev-lite
 
Инновации и JavaScript
Инновации и JavaScriptИнновации и JavaScript
Инновации и JavaScriptMax Klymyshyn
 
Современный фронтенд -- как не утонуть в море хайпа?
Современный фронтенд -- как не утонуть в море хайпа?Современный фронтенд -- как не утонуть в море хайпа?
Современный фронтенд -- как не утонуть в море хайпа?Vladimir Malyk
 
Java script и frontend завтра - Kharkiv JS 2013
Java script и frontend завтра - Kharkiv JS 2013Java script и frontend завтра - Kharkiv JS 2013
Java script и frontend завтра - Kharkiv JS 2013Andrey Listochkin
 
Mihail Zachepilo - WebAssembly powered Machine Learning
Mihail Zachepilo - WebAssembly powered Machine LearningMihail Zachepilo - WebAssembly powered Machine Learning
Mihail Zachepilo - WebAssembly powered Machine LearningMaria Kuneva
 
Как верстать сайты быстрее чем их рисуют
Как верстать сайты быстрее чем их рисуютКак верстать сайты быстрее чем их рисуют
Как верстать сайты быстрее чем их рисуютYuriy Artyukh
 
«Mobile To The People» - Дмитрий Колодько
«Mobile To The People» - Дмитрий Колодько«Mobile To The People» - Дмитрий Колодько
«Mobile To The People» - Дмитрий КолодькоITсonnect ITconnect
 
Онлайн-кинотеатр для SmartTV на веб-технологиях / Михаил Лабанов (Ayyo)
Онлайн-кинотеатр для SmartTV на веб-технологиях / Михаил Лабанов (Ayyo)Онлайн-кинотеатр для SmartTV на веб-технологиях / Михаил Лабанов (Ayyo)
Онлайн-кинотеатр для SmartTV на веб-технологиях / Михаил Лабанов (Ayyo)Ontico
 
"Vue.js или как наконец отказаться от React"
"Vue.js или как наконец отказаться от React""Vue.js или как наконец отказаться от React"
"Vue.js или как наконец отказаться от React"Fwdays
 
HTML GL - возьмите столько FPS, сколько вам нужно, и немного эффектов в прида...
HTML GL - возьмите столько FPS, сколько вам нужно, и немного эффектов в прида...HTML GL - возьмите столько FPS, сколько вам нужно, и немного эффектов в прида...
HTML GL - возьмите столько FPS, сколько вам нужно, и немного эффектов в прида...Ontico
 
State of the Standardized Web
State of the Standardized WebState of the Standardized Web
State of the Standardized WebYandex
 
Как сделать хороший прототип вовремя?
Как сделать хороший прототип вовремя?Как сделать хороший прототип вовремя?
Как сделать хороший прототип вовремя?Mikhail Kulakov
 
WebGL - создание 3D графики в браузере
WebGL - создание 3D графики в браузереWebGL - создание 3D графики в браузере
WebGL - создание 3D графики в браузереСтудия Атвинта
 
Trainspotting Transporting: RabbitMQ, Akka.NET, Rx, MVI, Cycle.js
Trainspotting Transporting: RabbitMQ, Akka.NET, Rx, MVI, Cycle.jsTrainspotting Transporting: RabbitMQ, Akka.NET, Rx, MVI, Cycle.js
Trainspotting Transporting: RabbitMQ, Akka.NET, Rx, MVI, Cycle.jsDevOWL Meetup
 
JSLab. Дмитрий Смолин, Дмитрий Филипенко. "React и Webpack с помощью кирки, л...
JSLab. Дмитрий Смолин, Дмитрий Филипенко. "React и Webpack с помощью кирки, л...JSLab. Дмитрий Смолин, Дмитрий Филипенко. "React и Webpack с помощью кирки, л...
JSLab. Дмитрий Смолин, Дмитрий Филипенко. "React и Webpack с помощью кирки, л...GeeksLab Odessa
 

Was ist angesagt? (19)

Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...
Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...
Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...
 
Frontend - экосистема и будущее: iforum 2015
Frontend - экосистема и будущее: iforum 2015Frontend - экосистема и будущее: iforum 2015
Frontend - экосистема и будущее: iforum 2015
 
HappyDev-lite-2016-весна 05 Андрей Юдин. Javascript - мультиинструмент для всех
HappyDev-lite-2016-весна 05 Андрей Юдин. Javascript - мультиинструмент для всехHappyDev-lite-2016-весна 05 Андрей Юдин. Javascript - мультиинструмент для всех
HappyDev-lite-2016-весна 05 Андрей Юдин. Javascript - мультиинструмент для всех
 
Инновации и JavaScript
Инновации и JavaScriptИнновации и JavaScript
Инновации и JavaScript
 
Современный фронтенд -- как не утонуть в море хайпа?
Современный фронтенд -- как не утонуть в море хайпа?Современный фронтенд -- как не утонуть в море хайпа?
Современный фронтенд -- как не утонуть в море хайпа?
 
Java script и frontend завтра - Kharkiv JS 2013
Java script и frontend завтра - Kharkiv JS 2013Java script и frontend завтра - Kharkiv JS 2013
Java script и frontend завтра - Kharkiv JS 2013
 
Mihail Zachepilo - WebAssembly powered Machine Learning
Mihail Zachepilo - WebAssembly powered Machine LearningMihail Zachepilo - WebAssembly powered Machine Learning
Mihail Zachepilo - WebAssembly powered Machine Learning
 
Как верстать сайты быстрее чем их рисуют
Как верстать сайты быстрее чем их рисуютКак верстать сайты быстрее чем их рисуют
Как верстать сайты быстрее чем их рисуют
 
«Mobile To The People» - Дмитрий Колодько
«Mobile To The People» - Дмитрий Колодько«Mobile To The People» - Дмитрий Колодько
«Mobile To The People» - Дмитрий Колодько
 
Онлайн-кинотеатр для SmartTV на веб-технологиях / Михаил Лабанов (Ayyo)
Онлайн-кинотеатр для SmartTV на веб-технологиях / Михаил Лабанов (Ayyo)Онлайн-кинотеатр для SmartTV на веб-технологиях / Михаил Лабанов (Ayyo)
Онлайн-кинотеатр для SmartTV на веб-технологиях / Михаил Лабанов (Ayyo)
 
"Vue.js или как наконец отказаться от React"
"Vue.js или как наконец отказаться от React""Vue.js или как наконец отказаться от React"
"Vue.js или как наконец отказаться от React"
 
AngularJS
AngularJSAngularJS
AngularJS
 
HTML GL - возьмите столько FPS, сколько вам нужно, и немного эффектов в прида...
HTML GL - возьмите столько FPS, сколько вам нужно, и немного эффектов в прида...HTML GL - возьмите столько FPS, сколько вам нужно, и немного эффектов в прида...
HTML GL - возьмите столько FPS, сколько вам нужно, и немного эффектов в прида...
 
State of the Standardized Web
State of the Standardized WebState of the Standardized Web
State of the Standardized Web
 
Как сделать хороший прототип вовремя?
Как сделать хороший прототип вовремя?Как сделать хороший прототип вовремя?
Как сделать хороший прототип вовремя?
 
WebGL - создание 3D графики в браузере
WebGL - создание 3D графики в браузереWebGL - создание 3D графики в браузере
WebGL - создание 3D графики в браузере
 
Background js
Background jsBackground js
Background js
 
Trainspotting Transporting: RabbitMQ, Akka.NET, Rx, MVI, Cycle.js
Trainspotting Transporting: RabbitMQ, Akka.NET, Rx, MVI, Cycle.jsTrainspotting Transporting: RabbitMQ, Akka.NET, Rx, MVI, Cycle.js
Trainspotting Transporting: RabbitMQ, Akka.NET, Rx, MVI, Cycle.js
 
JSLab. Дмитрий Смолин, Дмитрий Филипенко. "React и Webpack с помощью кирки, л...
JSLab. Дмитрий Смолин, Дмитрий Филипенко. "React и Webpack с помощью кирки, л...JSLab. Дмитрий Смолин, Дмитрий Филипенко. "React и Webpack с помощью кирки, л...
JSLab. Дмитрий Смолин, Дмитрий Филипенко. "React и Webpack с помощью кирки, л...
 

Andere mochten auch

Game Apps Monetization. How not to drown in the ocean of opportunities?
Game Apps Monetization. How not to drown in the ocean of opportunities?Game Apps Monetization. How not to drown in the ocean of opportunities?
Game Apps Monetization. How not to drown in the ocean of opportunities?Clickky
 
"Мобильные игры: что ждать от рынка в ближайшем будущем?" - Леонид Сиротин, G...
"Мобильные игры: что ждать от рынка в ближайшем будущем?" - Леонид Сиротин, G..."Мобильные игры: что ждать от рынка в ближайшем будущем?" - Леонид Сиротин, G...
"Мобильные игры: что ждать от рынка в ближайшем будущем?" - Леонид Сиротин, G...Procontent.Ru Magazine
 
Ailove Development Mobile Game | RIW 2010
Ailove Development Mobile Game | RIW 2010Ailove Development Mobile Game | RIW 2010
Ailove Development Mobile Game | RIW 2010Maks Chekmarev
 
Vizor: Ultrafine design. Game mechanics development sans prototyping
Vizor: Ultrafine design. Game mechanics development sans prototypingVizor: Ultrafine design. Game mechanics development sans prototyping
Vizor: Ultrafine design. Game mechanics development sans prototypingDevGAMM Conference
 
Социальные игры умерли — да здравствуют мобильные игры? - Артем Бочаров - Gam...
Социальные игры умерли — да здравствуют мобильные игры? - Артем Бочаров - Gam...Социальные игры умерли — да здравствуют мобильные игры? - Артем Бочаров - Gam...
Социальные игры умерли — да здравствуют мобильные игры? - Артем Бочаров - Gam...Sociality Rocks!
 
Обучение & GAME DESIGNER
Обучение & GAME DESIGNERОбучение & GAME DESIGNER
Обучение & GAME DESIGNERVadim Loktionov
 
Martine Spaans - “How to turn your game from junkfood into fine dining”
Martine Spaans - “How to turn your game from junkfood into fine dining”Martine Spaans - “How to turn your game from junkfood into fine dining”
Martine Spaans - “How to turn your game from junkfood into fine dining”DevGAMM Conference
 
Live Mobile: "Mobile Games: What To Expect From The Market In The Near Future...
Live Mobile: "Mobile Games: What To Expect From The Market In The Near Future...Live Mobile: "Mobile Games: What To Expect From The Market In The Near Future...
Live Mobile: "Mobile Games: What To Expect From The Market In The Near Future...Андрей Акимов
 
Redistributable intro To Scrum, Russian
Redistributable intro To Scrum, RussianRedistributable intro To Scrum, Russian
Redistributable intro To Scrum, RussianAlexey Krivitsky
 
2010/12 FlashGAMM Casual Games “How to turn your game from junkfood into fine...
2010/12 FlashGAMM Casual Games “How to turn your game from junkfood into fine...2010/12 FlashGAMM Casual Games “How to turn your game from junkfood into fine...
2010/12 FlashGAMM Casual Games “How to turn your game from junkfood into fine...AstonMartine
 
Lean Lego Game for Agileee 2012
Lean Lego Game for Agileee 2012Lean Lego Game for Agileee 2012
Lean Lego Game for Agileee 2012Dmytro Mindra
 
Геймификация процесса разработки ПО
Геймификация процесса разработки ПОГеймификация процесса разработки ПО
Геймификация процесса разработки ПОAskhat Urazbaev
 
Геймификация в обучении (или несколько мифов и примеров)
Геймификация в обучении (или несколько мифов и примеров)Геймификация в обучении (или несколько мифов и примеров)
Геймификация в обучении (или несколько мифов и примеров)Timofey (Tim) Yevgrashyn
 
Юнит-тесты: от общего к частному. Доклад Александра Свинцова На LoveQA РИТ
Юнит-тесты: от общего к частному. Доклад Александра Свинцова На LoveQA РИТЮнит-тесты: от общего к частному. Доклад Александра Свинцова На LoveQA РИТ
Юнит-тесты: от общего к частному. Доклад Александра Свинцова На LoveQA РИТBadoo Development
 
Эволюция сервисов видео монетизации Unity Ads и сервиса реплей-шеринга Everyp...
Эволюция сервисов видео монетизации Unity Ads и сервиса реплей-шеринга Everyp...Эволюция сервисов видео монетизации Unity Ads и сервиса реплей-шеринга Everyp...
Эволюция сервисов видео монетизации Unity Ads и сервиса реплей-шеринга Everyp...DevGAMM Conference
 
Final project report of a game
Final project report of a gameFinal project report of a game
Final project report of a gameNadia Nahar
 
An Introduction To Game development
An Introduction To Game developmentAn Introduction To Game development
An Introduction To Game developmentAhmed
 

Andere mochten auch (20)

Game Apps Monetization. How not to drown in the ocean of opportunities?
Game Apps Monetization. How not to drown in the ocean of opportunities?Game Apps Monetization. How not to drown in the ocean of opportunities?
Game Apps Monetization. How not to drown in the ocean of opportunities?
 
"Мобильные игры: что ждать от рынка в ближайшем будущем?" - Леонид Сиротин, G...
"Мобильные игры: что ждать от рынка в ближайшем будущем?" - Леонид Сиротин, G..."Мобильные игры: что ждать от рынка в ближайшем будущем?" - Леонид Сиротин, G...
"Мобильные игры: что ждать от рынка в ближайшем будущем?" - Леонид Сиротин, G...
 
Ailove Development Mobile Game | RIW 2010
Ailove Development Mobile Game | RIW 2010Ailove Development Mobile Game | RIW 2010
Ailove Development Mobile Game | RIW 2010
 
Vizor: Ultrafine design. Game mechanics development sans prototyping
Vizor: Ultrafine design. Game mechanics development sans prototypingVizor: Ultrafine design. Game mechanics development sans prototyping
Vizor: Ultrafine design. Game mechanics development sans prototyping
 
Lapshin
LapshinLapshin
Lapshin
 
Социальные игры умерли — да здравствуют мобильные игры? - Артем Бочаров - Gam...
Социальные игры умерли — да здравствуют мобильные игры? - Артем Бочаров - Gam...Социальные игры умерли — да здравствуют мобильные игры? - Артем Бочаров - Gam...
Социальные игры умерли — да здравствуют мобильные игры? - Артем Бочаров - Gam...
 
Обучение & GAME DESIGNER
Обучение & GAME DESIGNERОбучение & GAME DESIGNER
Обучение & GAME DESIGNER
 
Martine Spaans - “How to turn your game from junkfood into fine dining”
Martine Spaans - “How to turn your game from junkfood into fine dining”Martine Spaans - “How to turn your game from junkfood into fine dining”
Martine Spaans - “How to turn your game from junkfood into fine dining”
 
Live Mobile: "Mobile Games: What To Expect From The Market In The Near Future...
Live Mobile: "Mobile Games: What To Expect From The Market In The Near Future...Live Mobile: "Mobile Games: What To Expect From The Market In The Near Future...
Live Mobile: "Mobile Games: What To Expect From The Market In The Near Future...
 
Redistributable intro To Scrum, Russian
Redistributable intro To Scrum, RussianRedistributable intro To Scrum, Russian
Redistributable intro To Scrum, Russian
 
2010/12 FlashGAMM Casual Games “How to turn your game from junkfood into fine...
2010/12 FlashGAMM Casual Games “How to turn your game from junkfood into fine...2010/12 FlashGAMM Casual Games “How to turn your game from junkfood into fine...
2010/12 FlashGAMM Casual Games “How to turn your game from junkfood into fine...
 
Введение в Scrum
Введение в ScrumВведение в Scrum
Введение в Scrum
 
Lean Lego Game for Agileee 2012
Lean Lego Game for Agileee 2012Lean Lego Game for Agileee 2012
Lean Lego Game for Agileee 2012
 
Геймификация процесса разработки ПО
Геймификация процесса разработки ПОГеймификация процесса разработки ПО
Геймификация процесса разработки ПО
 
Геймификация в обучении (или несколько мифов и примеров)
Геймификация в обучении (или несколько мифов и примеров)Геймификация в обучении (или несколько мифов и примеров)
Геймификация в обучении (или несколько мифов и примеров)
 
Post-Mortem on Sheep Happens
Post-Mortem on Sheep HappensPost-Mortem on Sheep Happens
Post-Mortem on Sheep Happens
 
Юнит-тесты: от общего к частному. Доклад Александра Свинцова На LoveQA РИТ
Юнит-тесты: от общего к частному. Доклад Александра Свинцова На LoveQA РИТЮнит-тесты: от общего к частному. Доклад Александра Свинцова На LoveQA РИТ
Юнит-тесты: от общего к частному. Доклад Александра Свинцова На LoveQA РИТ
 
Эволюция сервисов видео монетизации Unity Ads и сервиса реплей-шеринга Everyp...
Эволюция сервисов видео монетизации Unity Ads и сервиса реплей-шеринга Everyp...Эволюция сервисов видео монетизации Unity Ads и сервиса реплей-шеринга Everyp...
Эволюция сервисов видео монетизации Unity Ads и сервиса реплей-шеринга Everyp...
 
Final project report of a game
Final project report of a gameFinal project report of a game
Final project report of a game
 
An Introduction To Game development
An Introduction To Game developmentAn Introduction To Game development
An Introduction To Game development
 

Ähnlich wie SVG in game development

WebGL. Что за технология, почему стоит изучать и как начать ей пользоваться, ...
WebGL. Что за технология, почему стоит изучать и как начать ей пользоваться, ...WebGL. Что за технология, почему стоит изучать и как начать ей пользоваться, ...
WebGL. Что за технология, почему стоит изучать и как начать ей пользоваться, ...Denis Safonov
 
Оптимизация графики на практике
Оптимизация графики на практикеОптимизация графики на практике
Оптимизация графики на практикеTimophy Chaptykov
 
Как анимировать тысячи объектов на карте и не подвесить браузер
Как анимировать тысячи объектов на карте и не подвесить браузерКак анимировать тысячи объектов на карте и не подвесить браузер
Как анимировать тысячи объектов на карте и не подвесить браузерDotNetConf
 
Как сделать веб-карту, сохранить здоровье и возненавидеть IE
Как сделать веб-карту, сохранить здоровье и возненавидеть IEКак сделать веб-карту, сохранить здоровье и возненавидеть IE
Как сделать веб-карту, сохранить здоровье и возненавидеть IEАртём Кудзев
 
Разработка мобильных приложений на HTML5
Разработка мобильных приложений на HTML5Разработка мобильных приложений на HTML5
Разработка мобильных приложений на HTML5DevDay
 
Meet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy SamilyakMeet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy SamilyakAmasty
 
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработкиБэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработкиITCrowd Almaty
 
Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)Pavel Chertorogov
 
Антон Корзунов "Графика на карте в API 2.0"
Антон Корзунов "Графика на карте в API 2.0"Антон Корзунов "Графика на карте в API 2.0"
Антон Корзунов "Графика на карте в API 2.0"Yandex
 
2.5D игры и особенности разработки многопользовательских игр
2.5D игры и особенности разработки многопользовательских игр2.5D игры и особенности разработки многопользовательских игр
2.5D игры и особенности разработки многопользовательских игрGleb Polushkin
 
Mihail Zachepilo - WebAssembly powered Machine Learning
Mihail Zachepilo - WebAssembly powered Machine LearningMihail Zachepilo - WebAssembly powered Machine Learning
Mihail Zachepilo - WebAssembly powered Machine LearningOdessaJS Conf
 
CodeFest 2014. Чаптыков Т. — Автоматизация хранения графики в новой онлайн-ве...
CodeFest 2014. Чаптыков Т. — Автоматизация хранения графики в новой онлайн-ве...CodeFest 2014. Чаптыков Т. — Автоматизация хранения графики в новой онлайн-ве...
CodeFest 2014. Чаптыков Т. — Автоматизация хранения графики в новой онлайн-ве...CodeFest
 
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...TKConf
 
Интерактивные карты планировок на сайтах торговых центров
Интерактивные карты планировок на сайтах торговых центровИнтерактивные карты планировок на сайтах торговых центров
Интерактивные карты планировок на сайтах торговых центровАгентство AlterEGO
 
Async Javascript
Async JavascriptAsync Javascript
Async JavascriptGetDev.NET
 
2.5D игры и особенности разработки многопользовательских игр (Глеб Полушкин)
2.5D игры и особенности разработки многопользовательских игр (Глеб Полушкин)2.5D игры и особенности разработки многопользовательских игр (Глеб Полушкин)
2.5D игры и особенности разработки многопользовательских игр (Глеб Полушкин)Ontico
 
Жесточайшая оптимизация производительности веб-страниц. Google pagespeed.
Жесточайшая оптимизация производительности веб-страниц. Google pagespeed.Жесточайшая оптимизация производительности веб-страниц. Google pagespeed.
Жесточайшая оптимизация производительности веб-страниц. Google pagespeed.Dmitry Dudin
 
Разработка сложного мультимедийного приложения на JavaScript+HTML5 и PhoneGap...
Разработка сложного мультимедийного приложения на JavaScript+HTML5 и PhoneGap...Разработка сложного мультимедийного приложения на JavaScript+HTML5 и PhoneGap...
Разработка сложного мультимедийного приложения на JavaScript+HTML5 и PhoneGap...Ontico
 

Ähnlich wie SVG in game development (20)

WebGL. Что за технология, почему стоит изучать и как начать ей пользоваться, ...
WebGL. Что за технология, почему стоит изучать и как начать ей пользоваться, ...WebGL. Что за технология, почему стоит изучать и как начать ей пользоваться, ...
WebGL. Что за технология, почему стоит изучать и как начать ей пользоваться, ...
 
Оптимизация графики на практике
Оптимизация графики на практикеОптимизация графики на практике
Оптимизация графики на практике
 
Как анимировать тысячи объектов на карте и не подвесить браузер
Как анимировать тысячи объектов на карте и не подвесить браузерКак анимировать тысячи объектов на карте и не подвесить браузер
Как анимировать тысячи объектов на карте и не подвесить браузер
 
Как сделать веб-карту, сохранить здоровье и возненавидеть IE
Как сделать веб-карту, сохранить здоровье и возненавидеть IEКак сделать веб-карту, сохранить здоровье и возненавидеть IE
Как сделать веб-карту, сохранить здоровье и возненавидеть IE
 
Разработка мобильных приложений на HTML5
Разработка мобильных приложений на HTML5Разработка мобильных приложений на HTML5
Разработка мобильных приложений на HTML5
 
Meet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy SamilyakMeet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy Samilyak
 
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработкиБэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
 
Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)
 
Kothic JS - Web Browser Crash Test
Kothic JS - Web Browser Crash TestKothic JS - Web Browser Crash Test
Kothic JS - Web Browser Crash Test
 
Антон Корзунов "Графика на карте в API 2.0"
Антон Корзунов "Графика на карте в API 2.0"Антон Корзунов "Графика на карте в API 2.0"
Антон Корзунов "Графика на карте в API 2.0"
 
2.5D игры и особенности разработки многопользовательских игр
2.5D игры и особенности разработки многопользовательских игр2.5D игры и особенности разработки многопользовательских игр
2.5D игры и особенности разработки многопользовательских игр
 
Mihail Zachepilo - WebAssembly powered Machine Learning
Mihail Zachepilo - WebAssembly powered Machine LearningMihail Zachepilo - WebAssembly powered Machine Learning
Mihail Zachepilo - WebAssembly powered Machine Learning
 
CodeFest 2014. Чаптыков Т. — Автоматизация хранения графики в новой онлайн-ве...
CodeFest 2014. Чаптыков Т. — Автоматизация хранения графики в новой онлайн-ве...CodeFest 2014. Чаптыков Т. — Автоматизация хранения графики в новой онлайн-ве...
CodeFest 2014. Чаптыков Т. — Автоматизация хранения графики в новой онлайн-ве...
 
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...
 
Интерактивные карты планировок на сайтах торговых центров
Интерактивные карты планировок на сайтах торговых центровИнтерактивные карты планировок на сайтах торговых центров
Интерактивные карты планировок на сайтах торговых центров
 
Async Javascript
Async JavascriptAsync Javascript
Async Javascript
 
2.5D игры и особенности разработки многопользовательских игр (Глеб Полушкин)
2.5D игры и особенности разработки многопользовательских игр (Глеб Полушкин)2.5D игры и особенности разработки многопользовательских игр (Глеб Полушкин)
2.5D игры и особенности разработки многопользовательских игр (Глеб Полушкин)
 
Жесточайшая оптимизация производительности веб-страниц. Google pagespeed.
Жесточайшая оптимизация производительности веб-страниц. Google pagespeed.Жесточайшая оптимизация производительности веб-страниц. Google pagespeed.
Жесточайшая оптимизация производительности веб-страниц. Google pagespeed.
 
Разработка сложного мультимедийного приложения на JavaScript+HTML5 и PhoneGap...
Разработка сложного мультимедийного приложения на JavaScript+HTML5 и PhoneGap...Разработка сложного мультимедийного приложения на JavaScript+HTML5 и PhoneGap...
Разработка сложного мультимедийного приложения на JavaScript+HTML5 и PhoneGap...
 
Web-browser crash test via geodata
Web-browser crash test via geodataWeb-browser crash test via geodata
Web-browser crash test via geodata
 

SVG in game development

  • 1. SVG в разработке компьютерных игр: быть или не быть Юрийчук Павел BoosterMedia Ciklum
  • 2. О себе В Сиклуме с 2011 года в качестве Front end Mobile games developer Опыт разработки: Flex/Actionscript/Javascript Прошлое: Casino games Текущее: Casual Games Контакты: Skype: pavlo.yuriychuck Email: pluccky@gmail.com Facebook Twitter
  • 5. О чем наше представление ● Игрушка ● Примеры того что можно сделать ● Какие есть альтернативы ● О ролях в проекте: действующие лица марлезонского балета ● О надеждах поговорим или почему же SVG ● А что же может он ●
  • 6. И еще немного ● О граблях ● О кросс-платформенности ● О скорости ● О природе R&D ● О бытие, или где стоит использовать SVG
  • 7. Вступление. Задача ● Dress-up игра с большим количеством экранов и элементов user interface Много графики ● ● Хорошо бы сократить время и трудоресурсы на обработку графических ресурсов Есть версия игры на flash ● Мало времени на подгонку элементов и верстку ● HTML5 – целевая платформа iOS & Android ●
  • 8. Как он выглядит ● Игрушки! – Стрелялка – Логика – ТворениеСергеяПажинтова – Пасьянс – УчимгеографиюСША
  • 9. Альтернативы ● Рендерить FXG в Canvas ● Bitmap graphics ● Велосипеды
  • 10. Вступление. Действующие лица Художник “золотые руки” ● Флешер тимлид ● Менеджер. Просто менеджер. ● ● Программист с флексовым прошлым и джаваскриптовым настоящим
  • 11. Акт первый. Надежды ● SVG Создан в 2001 году ● Поддерживается почти всеми браузерами ● Экспорт поддерживается многими редакторами векторной графики ● Хорошая интеграция с ECMAScript / JavaScript ● Пользовательский интерфейс можно использовать сразу после того, как его нарисовал художник!
  • 12. Акт второй. Поиски ● Как встроить SVG в DOM: HTML5 Canvas Object − In-line SVG − ● Как загрузить сам SVG: AJAX request, response type == xml − ● Как пользоваться: Интерактивность, игра жеж − −Прогулки по воде или как найти нужный тег документе
  • 13. Лирическое отступление #1 ● Что предлагает SVG – DOM GetElementByTagName, GetElementById(?), getAttrbuteNS/setAttrbuteNS, childNodes – JavaScript events – SMIL, JS animation, – CSS ;) ● Что есть в Flash – UI tree, SetProperty/getProperty – Flash Events – Animation, keyFrames, transitions, paths, movie clip – CSS, Flex only ;)
  • 15. Акт четвертый. Кросс- платформенность ● Не все операции внедрены одинаково, некторых вообще нет, смотри акт грабли. ● Inline SVG только в андроиде и в десктоп-браузерах ● IOS хорошо работает с Canvas ●
  • 16. Акт пятый. Быстрее ● Пробовали сжимать SVG в ZIP и распаковывать JavaScript – Удобно – Канонично ● Грузить все элементы одним SVG а потом резать на мелкие кусочки ● Сжимать SVG на стороне сервера mod_deflateилиmod_gzip
  • 17. Акт шестой. Прерванный полет R&D ● Bitmap быстрее ● CANVG поддерживает ограниченный набор SVG инструкций, сложные рисунки с трансформациями градиентов – не рисует ● IOS крешится при попытке распаковать 20kb zip, андроид и десктопные браузеры – как часы
  • 18. Заключение. Где же все таки стоит использовать SVG ● Интерактивные карты, не флеш, но кое что может ● Карточные игры ● Тетрис ● Настольные игры – монополия ● Общеедлянихвсех: – Мало анимации и она не интенсивная – Не мобильные браузеры – медленная отрисовка и грузит процессор – Не критично время загрузки ресурсов ●