Como começo a criar jogos para Android? [fechadas]


112

Eu sou novo no desenvolvimento de jogos. Estou interessado em desenvolver jogos 2D para a plataforma Android. Qual é o melhor lugar para começar (ie) Quais são os princípios básicos e como proceder? Eu já tenho experiência em programação em Java, mas não tenho experiência com gráficos ou animação.


Faça sua pergunta (título) um pouco mais descritiva.
Ricket 31/08/10

1
Você tem experiência com Android?
Jesse Dorsey

3
@Ricket ou podemos fazer isso por ele :)
Andrew Russell

Estou curioso para saber se o OpenGL, embora mais rápido, consome mais bateria que o 2D comum usando a visualização de superfície ou qualquer outro método. Alguém sabe uma resposta?
Kelmer

Você terá que escolher um mecanismo de jogo e uma idéia de jogo para sujar as mãos. O AndEngine parece ser uma boa opção para jogos 2D e o Flappy Bird é o novo 'Hello World' no desenvolvimento de jogos. Confira este tutorial sobre o Flappy Bird no Android usando o AndEngine . Felicidades!
appsroxcom

Respostas:


82

O Android pode não ser a melhor opção para iniciar o desenvolvimento de jogos, porque você aprenderia várias coisas diferentes ao mesmo tempo (SDK do Android, criação de jogos, otimização, diferentes modelos de telefone etc.). Considere criar alguns jogos Java simples no seu computador para se familiarizar com a criação de jogos em geral; este tutorial parece um bom lugar para começar.

Quando estiver familiarizado com o Java e o desenvolvimento de jogos, comece com os tutoriais do Android . O guia de desenvolvimento é muito útil, em particular você precisa conhecer os fundamentos do Android e o ciclo de vida das atividades, além de gráficos . Obtenha as amostras do Android e confira as amostras dos jogos Lunar Lander e Snake (também há o JetBoy , mas focado no JetPlayer).

A classe canvas é boa o suficiente para a maioria dos jogos 2D, mas se você precisar de melhor desempenho ou quiser mudar para gráficos 3D mais tarde, precisará aprender o OpenGL ES . No entanto, isso está além do escopo de começar (a menos que você já conheça o OpenGL).


Exatamente o que eu estava procurando. Obrigado, @Firas Assaad
Ragunath Jawahar

Outro bom recurso é o livro Hello, Android, que explora a criação de um jogo de Sudoku em vários capítulos, incluindo desenho usando tela e manipulação de entrada do usuário. Há também um capítulo sobre gráficos 3D que constrói um cubo rotativo texturizado.
Firas Assaad 31/08/10

Acabei de mudar do BlackBerry para o desenvolvedor de jogos para Android e quero jogar meu chapéu com o Firas: a classe Canvas oferece desempenho mais do que suficiente para um jogo em 2D. Não é necessário adicionar a complexidade extra do OpenGL ao iniciar.
BAD

Concordo com esta resposta, mas o Android não é o pior lugar para começar! Meu primeiro projeto de programação foi um visualizador de histórias em quadrinhos. Então, eu fiz um jogo de quebra-cabeça e agora estou fazendo um jogo em 2D com gráficos do OpenGL ES 2.0. Eu aprendi em um pedaço de curva, mas nos últimos 9 meses, o Android me ajudou a obter uma boa base em Java, SQLite e OpenGL, além de um ótimo começo com OOP e conceitos de desenvolvimento de jogos. Eu poderia ter feito pior do que aprender a programar com o Android.
Amplify91

66


4

Todos estes são realmente uma boa resposta. Mas estou um pouco surpreso que ninguém tenha mencionado o jMonkeyEngine ainda.

Seu java, baseado em shader, é super fácil de começar, documentação muito boa, comunidade incrível, correções rápidas de bugs, vem com um ambiente de desenvolvimento de jogos (jMP baseado na plataforma NetBeans) e está evoluindo muito rapidamente.

Eu enfatizaria mais porque, o desenvolvimento de jogos e a criação de uma biblioteca que alguém usará para criar um jogo são bem diferentes. Portanto, se você quiser fazer um jogo não um mecanismo de jogo, basta pular direto no jMonkey Engine com os olhos fechados. :)


Eu fiz uma pesquisa rápida no google sobre jMonkeyEngine e Android. Eu presumi que, como o Android usa seu próprio interpretador Java, o jMonkeyEngine não funcionaria nele. Ainda é Java, então talvez eles tivessem feito uma porta. De qualquer forma, um minuto de pesquisa implica que é um trabalho em andamento.
Xuincherguixe

O jME funciona no Android, existem vários projetos na loja. Eu sugiro que você publique em seu fórum para especificações técnicas.
Quazi Irfan 28/07/12

3

Processing.org é outro bom ponto de partida para a codificação / desenvolvimento (um tanto simplificada) antes de mergulhar no Android SDK. Funciona no Max / Windows / Linux e possui uma versão desenvolvida especificamente para a implantação do Android. Eu o recomendo - contanto que você tenha um telefone Android, poderá implantar jogos / aplicativos no seu telefone criados com essa versão do Processing. Espero que ajude.


Você também pode publicar no mercado Android a partir da versão mais recente, embora ainda não tenha tentado.
gary

Ouvi dizer que o processamento tem problemas de desempenho com o Android, isso é verdade?
Ragunath Jawahar 01/09/10

Eu não tentei coisas diferentes o suficiente para dar uma resposta verdadeira / falsa bem fundamentada. Meus programas parecem se comportar bem no Android. Eu diria que pesquise na web, no fórum Android do processamento de pesquisas, etc ... Ou apenas experimente. ;)
gary

Ok, vou dar uma olhada em @gary comtois
Ragunath Jawahar

2

Também sou novo no desenvolvimento de jogos para Android e acho o mecanismo de jogo de código aberto AndEngine uma ferramenta muito boa para começar. Tem vários exemplos e uma comunidade bastante ativa.

http://www.andengine.org/


0

Eu recomendo fortemente o SDK do Airplay, pois ele funciona no Windows e é implantado na maioria dos smartphones. Eles também têm uma ótima licença Indie.


Sou desenvolvedor Java, parece que o Airplay SDK é um C ++ / XCode SDK?
Ragunath Jawahar 01/09/10

O Airplay SDK é o Marmalade SDK agora. Tem SDK separadas para C ++, Lua, HTML5 e Objectivo C
Noob
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.