Tag Archives: android

Actions en libgdx

Como ya os dije en el anterior post en libgdx nos da en la mayoria de casos una estructura para hacer un juego, pero algunas clases vamos a tener que implementarlas nosotros mismos, y cosas tan basicas como las acciones o los sprites parece que están a media (o esa impresión me da en un primer vistado) asi que lo primero que debemos hacer es comprender como está estructurada toda su filosofía y como hacer algo tan básico como mover un sprite con una acción para ir probando cosas

Empezamos por el package Scene2d en este paquete libgdx ofrece las clases básicas para hacer un juego en 2D, en principio nos vamos a centrar en estas 4 clases:

Stage es un contenedor para actores, podemos imaginar que será una pantalla de nuestro juego, no tiene porque ser de la dimensión de pantalla, puede ser mucho mas grande ya que controla la zona que se está viendo, permite hacer zoom o scrolls sobre ella. Recibe los eventos del touch y te dice sobre que actor de los que contiene se esta interactuando.

Actor es cualquier cosa de nuestro juego con la que podamos interactuar .. un sprite de toda la vida. Es una clase Abstracta, eso quiere decir que no la podemos instanciar, será obligatorio crear nuestra clase que implemente este método. Y será necesario implementar el método draw()

Group es una agrupación de Actors .. se usa para crear Sprites mas complejos que mantengan una jerarquía entre ellos

Action es la clase que se usa para aplicar cualquier transformación a un Actor,

libgdx incluye las siguientes acciones:

  • FadeIn – Modifica el alpha de un actor hasta llegar a 1.0f
  • FadeOut – Modifica el alpha de un actor hasta llegar a 0.0f
  • FadeTo – Modifica el alpha de un actor hasta llegar a un valor indicado
  • MoveBy – Desplaza un actor un valor determinado
  • MoveTo – Desplaza el actor hasta una posición
  • RotateBy – Rota el actor un ángulo especificado
  • RotateTo – Rota el actor hasta llegar a un ángulo
  • ScaleTo – Scala el actor a un factor indicado

Para combinar acciones nos ofrece estas 2 clases

  • Parallel – Ejecuta todas las acciones a la vez
  • Sequence – Ejecuta las acciones una por una

Otras acciones para combinar que no hacen ningún efecto por si solas

  • Repeat – Repite una acción las veces indicadas
  • Forever – Repite una acción para siempre
  • Delay – Hace una pausa de un tiempo antes de ejecutar la acción
  • Remove – Borra el actor de la Stage

Además de estas acciones todas implementan un Interpolator para modificar la velocidad o aceleración del movimiento, de esta forma se puede modificar el Rate de las acciones

  • AccelerateDecelerateInterpolator
  • AccelerateInterpolator
  • AnticipateInterpolator
  • DecelerateInterpolator
  • LinearInterpolator
  • OvershootInterpolator

Continue reading “Actions en libgdx” »

Wellcome to Android

Desde hace un tiempo vengo ya con ganas de empezar a hacer algo en Android, y llevo unos días probando distintos frameworks orientados al desarrollo de juegos, tampoco os creáis que he probado todo lo habido, de momento solo 3, así que os voy a contar con cual me he centrado y como funciona. Os hablo de LibGDX

Libgdx se presenta como una librería para desarrollar juegos cross-platform, y es que al estar desarrollada en java funciona en windows, mac, linux y android, en todos ellos tirando contra unas librerías nativas para manejar openGl … suena bien pero será cierto? Tengo que decir antes que nada que lo de ‘game development library’ de momento esta muy lejos de la realidad, la librería te ofrece muchas ventajas para manejar opengl de forma genérica, de hecho la propia documentación dice What its “A high-performance, cross-platform game development framework to be used as the basis for engines and games” and what is not “A game engine including everything but the kitchen sink” … os queda claro no? … que no te lo va a dar todo comido y algo tendrás que hacer

A continuación .. instalamos el entorno, preparamos el sdk de Android, configuramos el emulador y a probar nuestro primer hello world
Continue reading “Wellcome to Android” »