¿Cómo empiezo a hacer juegos para Android? [cerrado]


112

Soy nuevo en el desarrollo de juegos. Estoy interesado en desarrollar juegos 2D para la plataforma Android. ¿Cuál es el mejor lugar para comenzar (es decir) ¿Cuáles son los conceptos básicos y cómo proceder? Ya tengo experiencia en programación en Java, pero no tengo experiencia con gráficos o animación.


Haga su pregunta (título) un poco más descriptiva.
Ricket

1
¿Tienes experiencia con Android?
Jesse Dorsey

3
@Ricket o podríamos hacerlo por él :)
Andrew Russell

Tengo curiosidad por saber si OpenGL, aunque más rápido, consume más batería que el 2D normal usando la vista de superficie o cualquier otro método. ¿Alguien sabe una respuesta?
Kelmer

Tendrás que elegir un motor de juego y una idea de juego para ensuciarte las manos. AndEngine parece ser una buena opción para juegos 2D y Flappy Bird es el nuevo 'Hello World' en el desarrollo de juegos. Mira este tutorial sobre Flappy Bird en Android usando AndEngine . ¡Salud!
appsroxcom

Respuestas:


82

Es posible que Android no sea la mejor opción para comenzar el desarrollo del juego porque estarías aprendiendo varias cosas diferentes al mismo tiempo (Android SDK, creación de juegos, optimización, diferentes modelos de teléfonos, etc.). Considere hacer algunos juegos Java simples en su computadora para familiarizarse con la creación de juegos en general; Este tutorial parece un buen lugar para comenzar.

Una vez que se sienta cómodo tanto con Java como con el desarrollo de juegos, comience con los tutoriales de Android . La guía de desarrollo es muy útil, en particular, necesita conocer los fundamentos de Android y el ciclo de vida de la actividad, así como los gráficos . Obtenga las muestras de Android y vea las muestras del juego Lunar Lander y Snake (también está JetBoy , pero eso está enfocado en el JetPlayer).

La clase de lienzo es en realidad lo suficientemente buena para la mayoría de los juegos 2D, pero si necesita un mejor rendimiento o desea pasar a los gráficos 3D más adelante, tendrá que aprender OpenGL ES . Sin embargo, esto está más allá del alcance de comenzar (a menos que ya conozca OpenGL).


Exactamente lo que estaba buscando. Gracias @Firas Assaad
Ragunath Jawahar

Otro buen recurso es el libro Hello, Android, que explora la creación de un juego de Sudoku en varios capítulos, incluido el dibujo utilizando el lienzo y el manejo de la entrada del usuario. También hay un capítulo sobre gráficos en 3D que construye un cubo giratorio con textura.
Firas Assaad

Acabo de pasar de BlackBerry a un desarrollador de juegos de Android y quiero ponerme el sombrero con Firas: la clase Canvas ofrece un rendimiento más que suficiente para un juego 2D. No es necesario agregar la complejidad adicional de OpenGL cuando comienzas.
ADB

Estoy de acuerdo con esta respuesta, ¡pero Android no es el peor lugar para comenzar! Mi primer proyecto de programación fue un visor de cómics. Luego, hice un juego de rompecabezas, y ahora estoy haciendo un juego en 2D con gráficos OpenGL ES 2.0. Aprendí en una curva, pero en los últimos 9 meses, Android me ayudó a obtener una buena base en Java, SQLite y OpenGL junto con un gran comienzo con los conceptos de desarrollo de juegos y OOP. Podría haberlo hecho peor que aprender a programar con Android.
Amplify91

66

18

Si ya está familiarizado con Android y está haciendo aplicaciones básicas de interfaz de usuario con él, entonces querrá echar un vistazo a este tutorial de varias partes que explica cómo dibujar gráficos en una pantalla de Android.


55
el enlace parece estar roto, quizás el sitio ya no existe
Nasir

4

Todos estos son realmente una buena respuesta. Pero estoy un poco sorprendido de que nadie haya mencionado jMonkeyEngine todavía.

Su Java, su shader basado, es súper fácil para comenzar, muy buena documentación, comunidad impresionante, correcciones rápidas de errores, viene con un entorno de desarrollo de juegos (jMP basado en la plataforma NetBeans) y está evolucionando muy muy rápido.

Me gustaría enfatizar más en esto porque el desarrollo del juego y la creación de una biblioteca que alguien usará para crear un juego es bastante diferente. Entonces, si quieres hacer un juego que no sea un motor de juego, simplemente salta a la derecha en jMonkey Engine con los ojos cerrados. :)


Hice una búsqueda rápida en Google sobre jMonkeyEngine y Android. Supuse que a medida que Android usa su propio intérprete de Java, jMonkeyEngine no funcionaría en él. Sin embargo, todavía es Java, por lo que tal vez habrían hecho un puerto. En cualquier caso, un minuto de investigación implica que es un trabajo en progreso.
xuincherguixe

jME funciona en Android, hay varios proyectos en la tienda. Te sugiero que publiques en su foro las especificaciones técnicas.
Quazi Irfan

3

Processing.org es otro buen lugar para comenzar para la codificación / desarrollo (algo simplificado) antes de sumergirse en el SDK de Android. Funciona en Max / Windows / Linux y tiene una versión desarrollada específicamente para la implementación de Android. Lo recomiendo encarecidamente: siempre que tenga un teléfono Android, puede implementar juegos / aplicaciones en su teléfono que cree con esa versión de Processing. Espero eso ayude.


También puede publicar en el mercado de Android a partir de la última versión, aunque no lo he probado.
Gary

He oído que Processing tiene problemas de rendimiento con Android, ¿es eso cierto?
Ragunath Jawahar

No he probado suficientes cosas diferentes para dar una respuesta verdadera / falsa bien respaldada. Mis programas parecen comportarse bien en Android. Yo diría que busque en la web, el foro de Android del procesamiento de búsqueda, etc. O simplemente pruébelo. ;)
Gary

Ok, lo comprobaré @gary comtois
Ragunath Jawahar

2

También soy nuevo en el desarrollo de juegos de Android, y encuentro que el motor de juegos de código abierto AndEngine es una herramienta bastante buena para comenzar. Tiene muchos ejemplos y una comunidad bastante activa.

http://www.andengine.org/


0

Recomiendo encarecidamente el Airplay SDK, ya que funciona en Windows y se implementa en la mayoría de los teléfonos inteligentes. También tienen una gran licencia independiente.


Soy un desarrollador de Java, parece que Airplay SDK es un SDK de C ++ / XCode?
Ragunath Jawahar

Airplay SDK es Marmalade SDK ahora. Tiene SDK separados para C ++, Lua, HTML5 y Objective C
noob
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.