Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Android / Hola Bolivia con LibGDX

Hola Bolivia con LibGDX

Autor jc mouse martes, agosto 20, 2013

¿Que es LibGDX?

LibGDX es un framework escrito en java y C/C++  para el desarrollo de videojuegos, es multiplataforma (Windows, Linux, Mac, Android, IOS, GWT) , permite programar aplicaciones para celulares con android como también juegos de escritorio, función útil cuando no se quiere probar el juego en el lento emulador de android.

Cuenta con módulos para interactuar con gráficos, sonidos, eventos de teclado y dispositivos táctiles,  OpenGL ES 1.x y 2.0. Sistema 2D y  pronto soporte 3D.

Hola mundo con LibGDX

LibGDX nos permite crear nuestro juego en un proyecto de escritorio y después migrarlo a Android, en el sitio oficial (en ingles) puedes ver un ejemplo de como trabajar de esta forma, sin embargo para salir de lo común, en este tutorial, crearemos nuestro infaltable «Hello World» directamente en una aplicación Android, necesitamos:

Eclipse Indigo con Android instalado y configurado.

LibGDX, descarga y descomprime en algún lugar de tu pc la versión Nightly Builds

– Si cuenta con la posibilidad, un celular inteligente conectado a tu pc, caso contrario, prepárese a sufrir con el emulador.

Nivel: Java intermedio, Android intermedio

Tiempo: 15 minutos

Proyecto Eclipse

1.Crea un nuevo Application Android Project con la siguiente configuración:

Application Name: LibGDXHello

Project Name: LibGDXHello

Package Name: com.bolivia.libgdxhello

Activity: Blank Activity

Activity Name: MainActivity.java

Layout Name: activity_main.xml

2. Ve al directorio donde tiene LibGDX y copia los siguientes archivos:

– gdx.jar

– gdx-backend-android.jar

– armeabi (carpeta y contenido)

– armeabi-v7a (carpeta y contenido)

y colócalos en la carpeta LIBS/ del proyecto

Clic derecho sobre el proyecto -> Refresh para actualizar el proyecto.

3. Clic derecho sobre el proyecto Build Path -> Configure Build Path... -> Pestaña LIBRARIES -> Add Jars

Busque las librerías gdx.jar y gdx–backend-android.jar en el proyecto, seleccione -> OK -> OK

librerias

4. Pintaremos una imagen a modo de «Hola Mundo» 🙂 perdone mi nacionalismo al usar mi tricolor, usted esta en la libertad de usar la imagen que desee, siempre y cuando esta sea múltiplo de 2. 🙂

La imagen se llama bandera.jpg, debe colocarla en la carpeta ASSETS

tricolor

5. Crea una clase Hello.java en el paquete donde tenemos nuestro MainActivity.java.

Hasta este momento debemos tener esto en nuestro proyecto:

gdxhello proyecto

6. Vamos ahora con el código.

La clase Hello.java es nuestro juego en si, y se extiende ApplicationListener, entonces implementa una serie de métodos que los iremos viendo y explicando en futuros posts. Por el momento, hacemos uso de create() para iniciar los objetos y de render() para pintar la textura.

Hello.java

package com.bolivia.libgdxhello;

import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL10;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;

public class Hello implements ApplicationListener{

 private SpriteBatch batch;
 private Texture texture;
 float alto;

 @Override
 public void create() {
    //obtiene alto de pantalla
    alto = Gdx.graphics.getHeight();
    //para dibujar texturas se hace uso de SpriteBatch 
    batch = new SpriteBatch();
    //se carga la imagen de la carpeta ASSETS
    texture = new Texture( Gdx.files.internal("bandera.jpg"));
 }

 @Override
 public void dispose() { }

 @Override
 public void pause() { }

 @Override
 public void render() {
  //se limpia pantalla
  Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
  //pinta textura
  batch.begin();
        batch.draw(texture, 20, alto/2);        
        batch.end();
 }

 @Override
 public void resize(int arg0, int arg1) { }

 @Override
 public void resume() { }

}

– Para implementar esta clase en nuestra clase MainActivity.java debemos cambiar el extends Activity por extends AndroidApplication.

A continuación dejo la MainActivity original y la modificada para que se estudie los cambios.

MainActivity Original

package com.bolivia.libgdxhello;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
 }

 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater().inflate(R.menu.main, menu);
  return true;
 }

}

MainActivity Modificado

package com.bolivia.libgdxhello;

import com.badlogic.gdx.backends.android.AndroidApplication;
import android.os.Bundle;

public class MainActivity  extends AndroidApplication {

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState); 
  initialize( new Hello(), false );
 }

}

7. Nuestro Hola Mundo esta listo, ejecuta y debes ver algo como esto:

android bolivia

Descarga el proyecto LibGDXHello en este enlace económico

Enjoy! 🙂

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Plantilla android de aviso de página en construcción

Plantilla android de aviso de página en construcción

Cuando tenemos dominio web pero aun no tenemos el contenido listo es común colocar en su lugar una simple web de aviso q...

Reconocimiento Óptico de Caracteres con Tess4J

Reconocimiento Óptico de Caracteres con Tess4J

El reconocimiento óptico de caracteres o OCR (Optical Character Recognition), es un proceso dirigido a la digitalización...

SQLite INSERT, UPDATE, DELETE, QUERY

SQLite INSERT, UPDATE, DELETE, QUERY

En este segundo post sobre Android y SQLite, veremos el uso de los métodos de gestión de base de datos más utilizados, e...

Uso de BitmapFont en LibGDX

Uso de BitmapFont en LibGDX

En este tutorial conoceremos lo que es el uso de BitmapFont en LibGDX y algún uso que le podemos dar como crear un menú,...

Crea un componente swing para cargar fotos en miniaturas

Crea un componente swing para cargar fotos en miniaturas

En este tutorial crearemos un componente swing para java que podremos usar en cualquiera de nuestros proyectos, el compo...

JTable con imágenes

JTable con imágenes

En este post dejo una forma de como utilizar imágenes en un JTable ademas de implementar MouseListener para realizar dif...

1 comentario en “Hola Bolivia con LibGDX”

  1. john dice:

    Buena Tarde, como puedo cerrar el gráfico desde el botón cerrar de la ventana sin cerrar la aplicación?

    Toda la aplicación se realizó en un CategoryDataset (JFreeChart) en un JPanel.

    He probado con:
    this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
    ————————————————————————————————————————
    Graficos_Label_Inferior demo = new Graficos_Label_Inferior(title);
    demo.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
    demo.pack();
    RefineryUtilities.centerFrameOnScreen(demo);

Los comentarios estan cerrados

Comparte lo que sabes

Categorias

Últimas entradas

Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...

En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...

Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...

Google Bard la inteligencia artificial de Google se actualiza con una mejora que entra a competir con el resto de IAs y...

Herramientas

Generador de Enlaces a Whatsapp