Desafio do desenvolvimento multiplataforma, 2º SouWebPel

24

description

 

Transcript of Desafio do desenvolvimento multiplataforma, 2º SouWebPel

Page 1: Desafio do desenvolvimento multiplataforma, 2º SouWebPel
Page 2: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

O desafio (e soluções) do desenvolvimento multiplataforma

Luiz Alessandro NörnbergCTO, Izyplay Game Studio

[email protected]

Page 3: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Diretor de Tecnologia no Izyplay Game Studio• Editor do blog Abrindo o Jogo• 10 anos como diretor de R&D na Gestum S.A.• Total de 20 anos de desenvolvimento de jogos digitais• Midcore gamer (sempre que dá tempo...)

“Possuo a maior parte do EXP na parte tecnológica,mas já completei várias quests de game design.”

3

Luiz Alessandro Nörnberg

Page 4: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Desafio• Soluções• Na prática...

4

Agenda

Page 5: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

Desafio

Page 6: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• “Write once, run every where”• Alcançar o maior público possível• Alcançar o público o maior tempo possível

– Estar sempre disponível quando o público quiser

6

Qual é mesmo o desafio?

Page 7: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Jogos casuais– Cada vez mais um “serviço”, acessivel em varias

plataformas.– Baixo valor comercial, “ganha na quantidade”

• Advergames– Nem precisa explicar...– Quanto mais impactados, melhor

7

Principalmente em

Page 8: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Infelizmente, é assim que é• A segmentação ainda é reforçada pelos fabricantes

– Todos querem seus apps e games– De preferência, SÓ na plataforma deles...

• Não existe hoje uma solução ideal crossplataforma

8

Porque é um desafio

Page 9: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Desktop (Web)• Smartphone• Tablet• Web• Smart TV

Falando em games......não esqueçamos os consoles

9

Quais plataformas temos hoje?

• iOS• Android• Windows Phone• Blackberry Tablet OS (Playbook)• Windows 7• Windows 8• Mac• Linuxes

Page 10: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

Soluções

Page 11: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Muitos frameworks e ferramentas• Corona, Moai, Construct 2, Phonegap, Appmobi, etc.• A maioria não é para todas plataformas• Os mais flexíveis adicionam muitas camadas extras• Não raramente demandam linguagem própria ou

pouco conhecida

11

Muitas opções

Page 12: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Action Script 3 (AS3)• Javascript + HTML 5• Unity

12

Tendências

Page 13: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Ainda é uma possibilidade, em termos técnicos• Presente em muitos locais (desktop, blu-ray, set-top

box, feature phone)• Ausente onde é importante hoje (smartphones,

tablets, smart TVs)• Fazem apenas 4 anos que eu sugeria Java como

multiplataforma!

13

E o Java?

Page 14: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Há tempos mantendo-se como opção multiplataforma• Principal opção para jogos “pesados” (leia-se 3D)• Windows, Linux, Mac• iOS, Android, Windows Phone• Web• Consoles!

14

Unity

Page 15: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Flash volta à cena para mobile• Quer dizer, o AIR, Adobe Integrated Runtime• Mesmo o AIR possui resistência em algumas

plataformas (Windows Phone, Smart TVs)• Atende Win 7, Mac, Linux, iOS, Android, Blackberry• Provavelmente vai atender Win 8 e Win Phone 8• Hoje, é a melhor tecnologia crossplataforma para

serviços leves e médios

15

Flash rises

Page 16: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Única crossplataforma de fato• Desde o desktop até a Smart TV• Potencial muito grande (hoje, apenas isso)

– Digamos que apenas serviços leves• Problemas:

– Falta de ferramentas / workflow– Falta de padronização– Variações grandes no grau de suporte (WebGL,

áudio, cache, etc)

16

Javascript + HTML 5

Page 17: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

Na prática...

Page 18: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Projetos simples conseguem ter codebase única• Projetos complexos precisam ser adaptativos

– Sim, estou falando de IFs no código– Não são pecado, não...

• Diferenças grandes exigem código separado

18

Apps adaptativos

Page 19: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• O projeto precisa prever a multiplataforma (principalmente o game design)

• Quando possível, projeta-se pelo mínimo denominador comum

• Caso contrário, teremos código separado

19

Além da implementação

Page 20: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• O importante é isolar a base do código, o “core”• Ter blocos de código em separado não é realmente um

problema, se bastar compilar cada um separadamente

20

Mesma “base” do código

Page 21: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Sim!• Desempenho (dependendo do projeto)• Máxima integração com a plataforma (look and feel)• Recursos específicos da plataforma (sensores, etc)• Há quem critique o desenvolvimento crossplataforma

por conta destes aspectos.• A solução, por enquanto, é realmente portar o código.

21

Ganhei multiplataforma, perdi algo?

Page 22: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

Em conclusão

Page 23: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

• Estas são as tecnologias crossplataformas “de verdade”• AIR e HTML servem para apps (além de games)• Unity é a opção para foco apenas em jogos (consoles)

O cenário é muito melhor do que a 3 anos atrás, mas certamente ainda bem pior do que daqui a 3 anos...

23

AIR, HTML, Unity

Page 24: Desafio do desenvolvimento multiplataforma, 2º SouWebPel

[email protected]

24

Obrigado