Primer proyecto con Andengine

Directo al grano, hoy probamos por primera vez el motor. Aquí vamos. El día de ayer nos quedamos en la importación de la libreria Andengine desde Git. Las cosas deberian estar más o menos así :

Andengine



Luego creamos un proyecto para android, como quieran que se llame. El mio se llamara watertest.



Para usar la libreria de android la importaremos de esta manera:

Andengine

Nos dirigimos a la pestaña android en las propiedades del proyecto y añadimos una libreria presionando el boton add y eligiendo Andengine:

Importar

Listo, eso es todo lo que necesitamos para importar Andengine y vincularlo a un proyecto. Ahora voy a explicar como es que funciona esto.
Andengine nos ofrece varias clases de las que podemos heredar para empezar nuestro proyecto, por ejemplo: BaseGameActivity, SimpleBaseGameActivity, LayoutGameActivity entre otras. Estas nos facilitan algunos callbacks o funciones necesarias para organizar bien nuestro juego, pero son puramente orientativas y el orden que llevemos será mayormente propio. Es más, cuando hagamos un proyecto más extenso esos metodos quedarán practicamente olvidados, pero de eso hablaremos más adelante.

Lo primero que vamos a hacer es un extend de SimpleBaseGameActivity por hoy, para mostrar como funciona de la manera más simple: (Pueden revisar el codigo completo aquí, recomiendo que lo hagan despues de leer todo)

Ejemplo Andengine

Añadimos los metodos heredados y quedará así:

SimpleBaseGameActivity

Una de las cosas más importantes aquí es entender cual es el orden de las cosas cuando hablamos de iniciar un juego. Para poder mostrar algo en la pantalla de tu pequeño android, primero debes saber donde lo vas a mostrar.

EngineOptions

Luego como no vamos a cargar ningun recurso(imagenes, textos o sonidos). Usaremos un elemento dibujado por el motor, un Rectangulo y lo vamos a colorear de verde o el color que se les plazca.

onCreateResources

Y por ultimo creamos la escena y le añadimos el rectangulo.

onCreateScene

Y obtendremos algo así en la mitad de nuestra pantalla.

Scene

Codigo completo aquí.

Comentarios

  1. Hola, disculpa, la opcion para el nuevo proyecto Android no me sale.
    Cual puede ser el error?

    ResponderEliminar
  2. Si no tienes instalado el sdk de android, te recomiendo descargar eclipse desde google, que ellos mejoraron para trabajar con android. El enlace aquí para x86 http://dl.google.com/android/adt/adt-bundle-windows-x86-20131030.zip

    ResponderEliminar
  3. Tengo instalado eclipse JUNO
    Descargue la libreria AndEngine, pero le aparece una especie de signo de admiracion (!) en rojo a la carpeta.
    Tendria que instalar nuevamente eclipse (otra version)?

    Y muchas gracias por tus respuestas.

    ResponderEliminar
  4. Eso tiene q ver con el buildpath. Me puedes decir que dice tu pestaña problemas?

    ResponderEliminar
  5. En el Build Path, la carpeta AndEngine/gen (missing) aparece con un error.

    ResponderEliminar
  6. entra a las propiedades de proyecto de andengine y dejalo así como en esta imagen : http://grab.by/rTqi

    ResponderEliminar
  7. Lo habia intentado asi, pero no funciona.

    ResponderEliminar
  8. dale un clean al proyecto y si eso no funciona, trata de bajarte la ultima versión de adt bundle :
    http://developer.android.com/sdk/index.html

    ResponderEliminar
  9. Hola muy buen tutorial solo tengo una pregunta donde podria descargar la ultma version de AndEngine
    Te agradeceria mucho si me respondes
    Saludos y muchas grcias

    ResponderEliminar
  10. Donde puedo encontrar el simplebasegameactivity?

    ResponderEliminar
  11. y donde puedo acceder a el, perdona mi ignorancia pero no consigo encntrarlo

    ResponderEliminar
  12. La dirección está en el tutorial anterior a este

    ResponderEliminar
  13. Es una clase y en este ejemplo la veredas para aplicar sus métodos y variables. La puedes encontrar en un paquete dentro de la librería que no recuerdo porque te estoy respondiendo desde mi celular jaja. Apenas entre a la pc la busco aunque la puedes buscar tu mismo en el repositorio de git de andengine

    ResponderEliminar
  14. Tengo una duda, ya que aparece android 4.2.2 y android 2.3.3, las aplicaciones que se desarrollen solo se pueden ejecutar en esas versiones de android? o sirviría para android 4.0?
    Gracias!

    ResponderEliminar
  15. Sería desde la 2.3.3 hacia arriba. Saludos.

    ResponderEliminar
  16. Todo muy bien, pero a la hora de crear un nuevo proyecto no me aparece la opción de Android, solo la normal que es Java project. Ojalá puedas ayudarme

    ResponderEliminar
  17. Cuentame como conseguiste el android IDE

    ResponderEliminar
  18. No realmente. Siempre se indica un SDK minimo que seria el 2.3.3, a partir de ese y para arriba la app funcionará :D

    ResponderEliminar
  19. Oye amigo como le hago para crear el Main Activity porque al crear la app me sale un appcompat_v7 y si la elimino me da mucho errores

    ResponderEliminar
  20. Necesito Ayuda Urgente Amigo Necesito Que Me Resuelvas Esa Duda Ya Que Debo Hacer Un Juego Para Un Proyecto De Mi Preparatoria

    ResponderEliminar
  21. Que otro repositorio hay disponible el del vídeo no me funciona "Paquete del archivo se trunca" :/ Si puedes ayudarme te agradezco.

    ResponderEliminar
  22. Hola, muchas gracias por tu material, tengo un problema, al momento de crear la camara (Camera) me dice que no debe llevar argumentos:
    "mCamera = new Camera(0,0,WIDTH,HEIGHT);
    Error: Multiple markers at this line
    - Line breakpoint:MainActivity [line: 24] - onCreateEngineOptions()
    - Line breakpoint:MainActivity [line: 21] - onCreateEngineOptions()
    - The constructor Camera(int, int, int, int) is undefined

    y al crear las opciones :

    EngineOptions engineOP = new EngineOptions(true, ScreenOrientation.LANDSCAPE_FIXED,new FillResolutionPolicy(), mCamera);

    Error:
    The constructor EngineOptions(boolean, ScreenOrientation, FillResolutionPolicy, Camera) is undefined


    Agradezco mucho tu ayuda o de la comunidad

    Saludos.

    ResponderEliminar
  23. Soy el unico que tiene el metodo onCreateScene void y no Scene

    ResponderEliminar
  24. Hola..!! Una duda al extender la clase principal a SimpleBaseGameActivity es lo que indica la base del juego...?
    que pasa si solo uso el BaseGameActivity...??

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog