Join Now
Quality Rating:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)
Expertise Level:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)

This page was last modified 15:57, 27 October 2007.

Design de Games escalonável

From Forum Nokia Wiki

Original: No more portings-designing scalable games

Hoje a maioria dos desenvolvedores de games escolhem a estratégia de criar vários arquivos JAR para cada plataforma J2ME.

Mas eu gostaria de de sugerir um metódo alternativo: Um arquivo JAR para diferentes plataformas J2ME. Em "plataformas diferentes" eu digo, aparelhos com diferentes resoluções de tela, tamanho da memória Heap, API's disponíveis etc.

Contents

Principais decisões ao projetar um aplicação independente de plataforma

Não importe (import) classes de API's adicionais

No lugar use o método Class.forName().

Por exemplo:

try {
      Class.forName( "com.nokia.mid.ui.FullCanvas");
      return PLATFORM_NOKIA;
} catch (Throwable ex) {}

Se você usar 'imports' seu games/aplicação pode não ser instalado corretamente em todos os aparelhos alvos.

UI e elementos do game independentes de resolução

Game designers precisam projetar a Interface de Usuário do game independede da resolução de tela. Isto significa que as coordenadas da UI e dos elementos do game não podem ser hardcoded (codificadas de forma fixa, diretamente no código). Ao invés disso você precisa determinar a posição e o tamanho da UI e dos elementos do games, dependendo da resolução atual ('on run') do aparelho em uso.

Para que todos os textos sejam legíveis normalmente, nos aparelhos alvo, use system fonts (fontes do sistema). Mas preste atenção que a UI precisa ser especifica para o tamanho atual da fonte em altura e largura.

Não use funções específicas de alguma plataforma

Por examplo:

- Evite o uso da funcionalidade da Nokia UI API para implementar vibração em dispositivos, porque não funciona nos aparelhos Nokia S60.

- Nos aparelhos Samsung devices é necessário chamar o metódo System.gc() para limpar a memória Heap de imagens desnecessária, mas você não deve chamar, pois em outro aparelhos para evitar atrasos (lags).

Use controles independentes de plataforma

Como usar isto é apresentado neste artigo: Platform_independent_key_events_processing

Teste seu game/aplicação em cada plataforma alvo

Para garantir que seu game/aplicação trabalhar corretamente em todos os aparelhos alvos é recomendado o teste do game/aplicação em aparelhos reais ou usar o programa do Forum.Nokia Remote Device Access.


Benefícios dos games/aplicações independentes de plataforma

- Redução do custo e tempo no desenvolvimento de um game/aplicação;

- Simplificação do suporte e no desenvolvimento da equipe de marketing porque é apenas um arquivo JAR;

- O mesmo game para todas as plataformas;

- Simplificação na distribuição;

- Evolução do produto e aprimoramentos simplificados;

Pequenos acrescimos

- Insignificante aumento do tamanho do aquivo JAR, por causa de funcionalidades para todas as plataformas serão incluidas em apenas um arquivo;

- O desenvolvimento é limitado para uma "minoria" de aparelhos de uma grande quantidade suportada;

Sumário

Como você pode ver, desenvolver game/aplicativos para plataformas independentes é uma alternativa real para a estratégia de vários arquivos JAR a qual é uma preciável na redução do tempo de desenvolvimento e a consequente redução dos custos para este desenvolvimento.

Related Discussions
Thread Thread Starter Forum Replies Last Post
Problems with MIDP 1.0 games on Nokia 6600 sebflash Mobile Java General 9 2003-11-11 13:01
The workaround deeper Browsing and Mark-ups 6 2003-12-30 12:43
web design werstyle_teen News, Announcements and Job Listings 0 2006-11-29 08:21
Uploading to N-Gage iLya Mobile Java General 2 2004-02-27 20:58
JAVA Array of Class mercury_dim Mobile Java General 4 2003-10-03 20:00
 
Powered by MediaWiki
     
     RDF Facets:
     
     
     qfnZtypeQUqfnTypeZCommunityContentQ
     qfnZtypeQUqfnTypeZWebpageQ
     qfnZtypeQUqfnTypeZWikiContentQ
     qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX