A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

16 de Setembro, 20081 Projeto Conceitual de Jogos Saulo Souto Geber Ramalho Saulo Souto

Apresentações semelhantes


Apresentação em tema: "16 de Setembro, 20081 Projeto Conceitual de Jogos Saulo Souto Geber Ramalho Saulo Souto"— Transcrição da apresentação:

1 16 de Setembro, 20081 Projeto Conceitual de Jogos Saulo Souto saulo.souto@meantime.com.br@meantime.com.br Geber Ramalho glr@cin.ufpe.br Saulo Souto saulo.souto@meantime.com.br@meantime.com.br Geber Ramalho glr@cin.ufpe.br Desenvolvendo Jogos em J2ME para celulares Aula 1 Introdução à J2ME

2 16 de Setembro, 20082 Sobre quem vos fala... n Meantime Mobile Creations – Fundada em 2003, uma das principais desenvolvedora, publisher e distribuidora de jogos mobile da América Latina n Um dos pioneiros mundiais na tecnologia J2ME n Várias tecnologias wireless: J2ME, BREW, WAP, SMS e MMS n Parceria com diversos fabricantes, publishers e operadoras n Produzimos mais de 60 jogos para celulares n Atua como publisher no Brasil, com parceria com todas as operadoras

3 16 de Setembro, 20083 Agenda n Principais tecnologias n Introdução a J2ME n Wireless Game Design n Criando nosso Jogo n Sugestão de Melhorias n Dicas de performance / redução de código

4 16 de Setembro, 20084 Principais Tecnologias n SMS/MMS – Jogos baseados na troca de mensagens (forca, quiz, penalty, leilões, etc.) n Brew (Binary Runtime Environment for Windows) – Ambiente de execução para chipset Qualcomm – C++ e API definida pela Qualcomm (animações, som, recursos de rede, etc...) – Principal mercado: EUA n Flash Lite – Versão mais simples do Adobe Flash Player – Plataforma crescente n J2ME – Java otimizado para dispositivos com limitações – Adotado por todos os maiores players do mercado – API’s especificadas pela comunidade JCP – Padrão do mercado

5 16 de Setembro, 20085 Telefones Java (>650 dispositivos) http://developers.sun.com/techtopics/mobility/device/pub/device/list.do 20 dispositivos por página

6 16 de Setembro, 20086 Introdução a plataforma J2ME SERVIDOR DESKTOP SMART- CARDS CELULARES

7 16 de Setembro, 20087 Arquitetura J2ME Device Hardware Host Operating System Configuration: Profiles Libraries KVM

8 16 de Setembro, 20088 Universo J2ME Hoje… n Java Community Process (JCP) n Java Specification Request (JSR) http://java.sun.com/javame/technology/jcp.jsp

9 16 de Setembro, 20089 Configurações n Uma especificação que define o ambiente de software para uma família de dispositivos, geralmente: – Os tipos e quantidade de memória disponível – Tipos de processadores e velocidade – Tipo de conexão de rede n Inclui um conjunto básico de classes Java n É especificada pela JCP n Connected Device Configuration (CDC) – High end consumer devices n Connected, Limited Device Configuration (CLDC) – Low end consumer devices

10 16 de Setembro, 200810 CLDC 1.0 n CLDC - Connected Limited, Device Configuration – Dispositivos limitados com poucos recursos – Processador de, no mínimo 8 Mhz – A partir de 160 K de memória heap reservada pra Java – Acesso a rede com pouca largura de banda n Target Devices – Celulares – Two Way Pagers – Personal Organizers – etc.,

11 16 de Setembro, 200811 Escopo do CLDC n Define: – Linguagem Java e características da VM – I/O – Networking framework – Segurança – Internacionalização n Não define: – Gerenciamento do ciclo de vida da aplicação (instalação, execução, deleção) – Interface com o usuário – Tratamento de eventos – Interação entre usuário e aplicação (comandos, etc…)

12 16 de Setembro, 200812 Limitação do CLDC n CLDC 1.0 possui algumas limitações: – Ausência de ponto flutuante – Ausência de Weak References – Ausência de Finalização  Não existe o método finalize() no CLDC – Não possui suporte a JNI. – Não possui a API de Reflection. – Ausência de daemon-threads e thread groups. – Limitação no suporte a Internacionalização  Permite a conversão de byte stream para Unicode e vice-versa – Limitação no tratamento de Erros  Apenas duas classes: java.lang.VirtualMachineError, java.lang.OutOfMemoryError

13 16 de Setembro, 200813 Limitação do CLDC n CLDC 1.1 adiciona alguns recursos ao CLDC 1.0: – Adição de ponto flutuante – Adição de Weak Reference – Adição de suporte a nomes de Threads – Memória mínima de 162 para 192 kbytes

14 16 de Setembro, 200814 Pacotes do CLDC n Herdados do J2SE – java.lang – java.io – java.util n Específicos do CLDC – javax.microedition.io

15 16 de Setembro, 200815 Profiles n Um profile ou “perfil” é uma coleção de API´s em Java que complementa uma configuração a fim de prover habilidades para uma família de dispositivos n É especificada pela JCP n O principal objetivo é garantir a interoperabilidade entre uma família de dispositivos. n MIDP (Mobile Information Device Profile): Principal e presente na maioria absoluta dos dispositivos – MIDP 1.0 – MIDP 2.0 – MIDP 3.0 (em breve)

16 16 de Setembro, 200816 MIDP n Mobile Information Device Profile (MIDP). n MIDP define: – Interface com o Usuário – Persistência (usando um modelo simples orientado a registros) – Networking (estende o Generic Connection framework do CLDC) – Ciclo de vida da Aplicação – Tratamento de eventos n Requisitos de Hardware (MIDP 1.0) – memória: 128 + 32 KB sobre CLDC. – tela mínima: 96 x 54 – 2 colors. – entrada: teclado, touch screen,... – connectividade: HTTP 1.1

17 16 de Setembro, 200817 Pacotes do MIDP 1.0 n MIDP Packages: – javax.microedition.midlet  javax.microedition.midlet.MIDlet – javax.microedition.lcdui – javax.microedition.rms  javax.microedition.rms.RecordStore

18 16 de Setembro, 200818 Pacotes adicionais do MIDP 2.0 n MIDP 2.0 Packages: – javax.microedition.media  javax.microedition.media.Player  javax.microedition.media.Control – javax.microedition.media.control  javax.microedition.media.control.VolumeControl – javax.microedition.lcdui.game – javax.microedition.io  javax.microedition.io.PushRegistry Layer TiledLayerSprite LayerManager GameCanvas * game Canvas lcdui Displayable

19 16 de Setembro, 200819 O que é um MIDlet n É uma aplicação MIDP: – Possui uma classe Java que estende da classe MIDlet e implementa os seguintes métodos:  startApp()  pauseApp()  destroyApp() – Possui um modelo de ciclo de vida similar aos Applets.

20 16 de Setembro, 200820 O que é um MIDlet (cont.) n Gerenciado pelo “Java Application Manager” (JAM) – Uma aplicação que deve vir acompanhando a implementação do MIDP e que controla a instalação, execução e remoção dos MIDlets – Provê o ambiente de execução dos MIDlets – Trata todos os erros ocorridos durante a instalação e execução dos aplicativos sem “derrubar” o dispositivo

21 16 de Setembro, 200821 Ciclo de vida dos MIDlets

22 16 de Setembro, 200822 MIDlet Suites e Descritores (JAD) n Uma MIDlet Suite é um conjunto de arquivos empacotados em um arquivo JAR – Uma suite deve possuir pelo menos um MIDlet – JAR contém: Arquivos.class, arquivos de imagem (.png), manifest, … – MIDLets numa mesma suite podem compartilhar classes e recursos contidos no JAR n JAD (Java Application Descriptor) – Pequeno arquivo texto que descreve uma Suite – Usado pela JAM para fazer verificações antes de baixar a Suite – Pode ser usado para guardar propriedades da aplicação MIDlet-1: AloMundo,, org.cesar.j2me.AloMIDlet MIDlet-Name: Alô Mundo! MIDlet-Vendor: C.E.S.A.R MIDlet-Version: 1.0 MIDlet-Jar-Size: 7808 MIDlet-Jar-URL: HelloExamples.jar

23 16 de Setembro, 200823 Passos para o desenvolvimento 1 1 2 2 3 3 4 4 5 5 6 6

24 16 de Setembro, 200824 Ambiente de Desenvolvimento n Editor texto + Sun Wireless Toolkit (WTK) (free) – http://java.sun.com/products/sjwtoolkit/ n NetBeans Mobility + WTK (free) – http://www.netbeans.org/products/mobility/ n Eclipse + EclipseME + WTK (free) – http://www.eclipse.org/downloads/index.php http://www.eclipse.org/downloads/index.php – http://eclipseme.org/docs/installation.html n SDK´s dos fabricantes (Nokia, Motorola, SonyEricsson, Siemens,…) – http://developer.motorola.com/docstools/sdks/ – http://forum.nokia.com/ http://forum.nokia.com – http://developer.sonyericsson.com/site/global/home/p_home.jsp

25 16 de Setembro, 200825 Nosso ambiente…

26 16 de Setembro, 200826 Exercício 1 - Criar o famigerado “Alô mundo!” - Conceitos de Display - Criação e exibição de um High-Level Displayable - Conceitos de adição e tratamento de Comandos

27 16 de Setembro, 200827 Dica: Esteja com a API ao alcance... n http://java.sun.com/javame/reference/apis/jsr118/


Carregar ppt "16 de Setembro, 20081 Projeto Conceitual de Jogos Saulo Souto Geber Ramalho Saulo Souto"

Apresentações semelhantes


Anúncios Google