Java ME Game Development Tenha mais de 100 milhões de usuários  baixando seus jogos !
Agenda Me apresentando... Introdução Java ME Histórico dos Jogos Eletrônicos Desenvolvimento de Jogos e Java ME Como Ganhar Dinheiro com Jogos ?
Me Apresentando... Analista de Sistemas (PUC-Campinas) Experiência com Java desde 2001 Trabalhando com mobilidade desde 2005 Criação de uma plataforma para jogos multi-player para celulares. Um dos fundadores da comunidade JME Brasil. Blog oficial no Java.net (Mobile & Embedded). Consultor Java ME profissional (corporativo) Desenvovedor de diversos “pequenos” projetos
Introdução Java ME Conhecendo a plataforma que possui o maior número de clientes potenciais !
Plataforma Java
CLDC & CDC
MIDP MIDP: Mobile Information Device Profile Complementa a plataforma CLDC / CDC Permite criar aplicações mais “ricas”: Conexão em rede Multimedia User Interface Maior segurança GAME API !!!
Vantagens do Java ME Larga adoção pelos fabricantes. Grande comunidade de desenvolvedores. Farta fonte de pesquisa / documentação. Fácil aprendizado (similar ao Java SE). Tecnologia em constante evolução. Multi-plataforma.
Ambiente de Desenvolvimento Sun Wireless Toolkit Compilador, bibliotecas, emuladores e doc. IDEs de Desenvolvimento Eclipse (MTJ ou EclipseME) Netbeans (Mobility Pack) Ferramentas, SDKs e Emuladores Nokia Motorola Sony Ericsson
Histórico dos Jogos Eletrônicos Do Odissey ao iPhone !
Evolução dos Jogos - Inicio 1952, primeiro jogo: Jogo da velha em um MF. 1961, lançado SpaceWar. 1972, Criação da Atari. 1976, Primeiro console com cartucho: Farchild 1976, Atari é comprada pela Warner. Crash dos jogos.
Evolução dos Jogos – Era Moderna 1994, Lançamento do Sega Saturn (3D) Plataformas únicas de desenvolvimento. Sony Lança o PlayStation. MS entra na briga: Xbox. Jogos on-line e MORPG. Popularização dos celulares.
Desenvolvimento de Jogos &  Java ME Mudando a forma de pensar...
Java is Everywhere ! Todos conectados. Rede crescendo exponencialmente. Uma arquitetura: Java ! Oportunidades: Telefone ? Plataforma para conteúdo multimedia Próxima revolução social 5 centavos por download ? Milhares R$ por mês... Um estádio lotado... uma rede cheia de “clientes” O que estar por vir ? Você decide: Java is Everywhere!
Jogos Móveis Mudança na forma de pensar. Público altamente diversificado. Jogos devem ser: Divertidos. Bem acabados, mas não pesados. Fácil de jogar. Multiplayer (Bluetooth, Internet, etc.) Ágeis.
Elementos de Game Development em Java ME MIDP 2.0 GameCanvas Layer TiledLayer LayerManager Sprite RMS
GameCanvas Incluído no MIDP 2.0 (evolução do Canvas). Permite manipulação em baixo nível da tela. Permite vibração do telefone. Redesenho da tela quando necessário. Buffer duplo. Melhor controle das teclas pressionadas.
Layer, TiledLayer e LayerManager Utilizados para criação de cenários e mapas. Permite verificação de colisões. LayerManager gerenciamento de diversos Layers e TiledLayers. Um LayerManager irá compor tanto o background como o mapa do jogo.
Sprite Utilizado para figuras com maiores interações. Normalmente utilizado para personagens. Permite animações. Também utilizado para elementos maiores que exigem um melhor tratamento: Montanhas, Castelos, etc.
RMS – Record Management Store Persistência de informações em JME. Armazenar informações sobre o jogo: Configurações, Placares e recordes, Estado atual do jogo, Itens dos jogadores, etc.
Estrutura Básica de um Jogo SplashScreen Menu Principal (de boa qualidade) Instruções do jogo Configurações Detalhes sobre o criador (propaganda) Game Screen
SplashScreen Tela que “pisca” com um logo, informação! Crie uma identificação visual, ASSINATURA! Pode-se mostrar uma tela tema do jogo. Exibição rápida, no total em torno de 5 s. Deve perimitir ao usuário pular essa exibição.
Configurações O jogador DEVE poder personalizar alguns aspectos do jogo: Dificuldade Sons / Vibração Controles Sempre escolha aspectos relevantes para permitir configurações.
Menu Principal Evite usar listas simples. Use algo visual, porém intuitivo. Será a primeira impressão do jogador.
Game Development ! ;-) Carregar dados relativos a configuração ou continuação do jogo. Inicialização de cenários, personagens e posicionamentos de sprites. Game Loop: Verificação de colisões Interações dos controles (pode ser independente) Atualizações de cenários e sprites (personagens e outros elementos do jogo). Validação de condições (fim de jogo, etc.)
Exemplo – Desert Explorer River Raid adaptado
Como ganhar dinheiro com jogos ? Você sabia que pode ter mais de 100 milhões de clientes em potencial, só no Brasil ?!?
Serviço X Downloads Serviço: Jogo grátis Jogador paga centavos para atualizações, itens e interações com servidor. Jogador se sente estimulado a jogar mais. Download: Jogador paga para fazer download do jogo. Mais dificil de conter a pirataria. Jogo (em si) é mais limitado, sem atualização.
Como entrar no mercado ? Publique seu primeiro jogo (simples). Divulge entre os amigos. Crie um site pessoal. Dê detalhes do jogo (manuais e screenshots) Disponibilize versões gratuitas. Publique mais jogos. Mande CV para Game Studios.
Que jogos desenvolver ? Comece pelos jogos simples. Pense em jogos regionais primeiramente: Jogos de carta brasileiros. Futebol. Comece com jogos simples e o evolua. Crie versões, não tente fazer o jogo perfeito! Analise jogos já existentes e tente imaginá-los no celular. Como ficaria ?!?
Alguma Dúvida ?!?
Obrigado! Antonio Marin Neto [email_address] http://netomarin.googlepages.com http://weblogs.java.net/blog/netomarin/ Google Talk: netomarin@gmail.com Skype: netomarin MSN: neto_marin@hotmail.com Visite: http://www.jmebrasil.org

Jme Games

  • 1.
    Java ME GameDevelopment Tenha mais de 100 milhões de usuários baixando seus jogos !
  • 2.
    Agenda Me apresentando...Introdução Java ME Histórico dos Jogos Eletrônicos Desenvolvimento de Jogos e Java ME Como Ganhar Dinheiro com Jogos ?
  • 3.
    Me Apresentando... Analistade Sistemas (PUC-Campinas) Experiência com Java desde 2001 Trabalhando com mobilidade desde 2005 Criação de uma plataforma para jogos multi-player para celulares. Um dos fundadores da comunidade JME Brasil. Blog oficial no Java.net (Mobile & Embedded). Consultor Java ME profissional (corporativo) Desenvovedor de diversos “pequenos” projetos
  • 4.
    Introdução Java MEConhecendo a plataforma que possui o maior número de clientes potenciais !
  • 5.
  • 6.
  • 7.
    MIDP MIDP: MobileInformation Device Profile Complementa a plataforma CLDC / CDC Permite criar aplicações mais “ricas”: Conexão em rede Multimedia User Interface Maior segurança GAME API !!!
  • 8.
    Vantagens do JavaME Larga adoção pelos fabricantes. Grande comunidade de desenvolvedores. Farta fonte de pesquisa / documentação. Fácil aprendizado (similar ao Java SE). Tecnologia em constante evolução. Multi-plataforma.
  • 9.
    Ambiente de DesenvolvimentoSun Wireless Toolkit Compilador, bibliotecas, emuladores e doc. IDEs de Desenvolvimento Eclipse (MTJ ou EclipseME) Netbeans (Mobility Pack) Ferramentas, SDKs e Emuladores Nokia Motorola Sony Ericsson
  • 10.
    Histórico dos JogosEletrônicos Do Odissey ao iPhone !
  • 11.
    Evolução dos Jogos- Inicio 1952, primeiro jogo: Jogo da velha em um MF. 1961, lançado SpaceWar. 1972, Criação da Atari. 1976, Primeiro console com cartucho: Farchild 1976, Atari é comprada pela Warner. Crash dos jogos.
  • 12.
    Evolução dos Jogos– Era Moderna 1994, Lançamento do Sega Saturn (3D) Plataformas únicas de desenvolvimento. Sony Lança o PlayStation. MS entra na briga: Xbox. Jogos on-line e MORPG. Popularização dos celulares.
  • 13.
    Desenvolvimento de Jogos& Java ME Mudando a forma de pensar...
  • 14.
    Java is Everywhere! Todos conectados. Rede crescendo exponencialmente. Uma arquitetura: Java ! Oportunidades: Telefone ? Plataforma para conteúdo multimedia Próxima revolução social 5 centavos por download ? Milhares R$ por mês... Um estádio lotado... uma rede cheia de “clientes” O que estar por vir ? Você decide: Java is Everywhere!
  • 15.
    Jogos Móveis Mudançana forma de pensar. Público altamente diversificado. Jogos devem ser: Divertidos. Bem acabados, mas não pesados. Fácil de jogar. Multiplayer (Bluetooth, Internet, etc.) Ágeis.
  • 16.
    Elementos de GameDevelopment em Java ME MIDP 2.0 GameCanvas Layer TiledLayer LayerManager Sprite RMS
  • 17.
    GameCanvas Incluído noMIDP 2.0 (evolução do Canvas). Permite manipulação em baixo nível da tela. Permite vibração do telefone. Redesenho da tela quando necessário. Buffer duplo. Melhor controle das teclas pressionadas.
  • 18.
    Layer, TiledLayer eLayerManager Utilizados para criação de cenários e mapas. Permite verificação de colisões. LayerManager gerenciamento de diversos Layers e TiledLayers. Um LayerManager irá compor tanto o background como o mapa do jogo.
  • 19.
    Sprite Utilizado parafiguras com maiores interações. Normalmente utilizado para personagens. Permite animações. Também utilizado para elementos maiores que exigem um melhor tratamento: Montanhas, Castelos, etc.
  • 20.
    RMS – RecordManagement Store Persistência de informações em JME. Armazenar informações sobre o jogo: Configurações, Placares e recordes, Estado atual do jogo, Itens dos jogadores, etc.
  • 21.
    Estrutura Básica deum Jogo SplashScreen Menu Principal (de boa qualidade) Instruções do jogo Configurações Detalhes sobre o criador (propaganda) Game Screen
  • 22.
    SplashScreen Tela que“pisca” com um logo, informação! Crie uma identificação visual, ASSINATURA! Pode-se mostrar uma tela tema do jogo. Exibição rápida, no total em torno de 5 s. Deve perimitir ao usuário pular essa exibição.
  • 23.
    Configurações O jogadorDEVE poder personalizar alguns aspectos do jogo: Dificuldade Sons / Vibração Controles Sempre escolha aspectos relevantes para permitir configurações.
  • 24.
    Menu Principal Eviteusar listas simples. Use algo visual, porém intuitivo. Será a primeira impressão do jogador.
  • 25.
    Game Development !;-) Carregar dados relativos a configuração ou continuação do jogo. Inicialização de cenários, personagens e posicionamentos de sprites. Game Loop: Verificação de colisões Interações dos controles (pode ser independente) Atualizações de cenários e sprites (personagens e outros elementos do jogo). Validação de condições (fim de jogo, etc.)
  • 26.
    Exemplo – DesertExplorer River Raid adaptado
  • 27.
    Como ganhar dinheirocom jogos ? Você sabia que pode ter mais de 100 milhões de clientes em potencial, só no Brasil ?!?
  • 28.
    Serviço X DownloadsServiço: Jogo grátis Jogador paga centavos para atualizações, itens e interações com servidor. Jogador se sente estimulado a jogar mais. Download: Jogador paga para fazer download do jogo. Mais dificil de conter a pirataria. Jogo (em si) é mais limitado, sem atualização.
  • 29.
    Como entrar nomercado ? Publique seu primeiro jogo (simples). Divulge entre os amigos. Crie um site pessoal. Dê detalhes do jogo (manuais e screenshots) Disponibilize versões gratuitas. Publique mais jogos. Mande CV para Game Studios.
  • 30.
    Que jogos desenvolver? Comece pelos jogos simples. Pense em jogos regionais primeiramente: Jogos de carta brasileiros. Futebol. Comece com jogos simples e o evolua. Crie versões, não tente fazer o jogo perfeito! Analise jogos já existentes e tente imaginá-los no celular. Como ficaria ?!?
  • 31.
  • 32.
    Obrigado! Antonio MarinNeto [email_address] http://netomarin.googlepages.com http://weblogs.java.net/blog/netomarin/ Google Talk: netomarin@gmail.com Skype: netomarin MSN: neto_marin@hotmail.com Visite: http://www.jmebrasil.org