ebook img

Programar Videojuegos con Android PDF

265 Pages·2013·18.56 MB·Spanish
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Programar Videojuegos con Android

Aprende  a   Programar  Videojuegos  con  Android     Carmen María Ortega Gómez Alejandro Carmona Martos http://www.adminso.es Aprende a Programar videojuegos con Android Carmen María Ortega Gómez Alejandro Carmona Martos Tanto la memoria de este trabajo como el software desarrollado se distribuyen bajo la licencia GNU GPL v3. La Licencia Pública General GNU (GNU GPL) es una licencia libre, sin derechos para software y otro tipo de trabajos. Las licencias para la mayoría del software y otros trabajos prácticos están destinadas a suprimir la libertad de compartir y modificar esos trabajos. Por el contrario, la Licencia Pública General GNU persigue garantizar su libertad para compartir y modificar todas las versiones de un programa--y asegurar que permanecerá como software libre para todos sus usuarios. Cuando hablamos de software libre, nos referimos a libertad, no a precio. Las Licencias Públicas Generales están destinadas a garantizar la libertad de distribuir copias de software libre (y cobrar por ello si quiere), a recibir el código fuente o poder conseguirlo si así lo desea, a modificar el software o usar parte del mismo en nuevos programas libres, y a saber que puede hacer estas cosas. Para obtener más información sobre las licencias y sus términos puede consultar: • http://www.gnu.org/licenses/gpl.html (Licencia original en inglés) • http://www.viti.es/gnu/licenses/gpl.html (Traducción de la licencia al castellano) AGRADECIMIENTOS A mis padres, por todo vuestro cariño y comprensión en momentos buenos y malos. Sin vosotros nada hubiera sido posible. A mi novio, por aguantarme todo este tiempo y darme animos, se que no ha sido fácil y sin embargo siempre has estado a mi lado. A mis hermanos que me han ayudado y orientado tantas y tantas veces. A mis sobrinos, por darme alegría en todo momento. Por último quiero agradecerle a mi compañero en este proyecto todo el esfuerzo y dedicación hacia el trabajo realizado. Ha sido un placer reencontrarme contigo. Muchas gracias a todos Carmen María Ortega Gómez Gracias a mis familia, en especial a mis padres que siempre han sido un gran apoyo y un punto de referencia. Gracias a Guillermo por su paciencia, ayuda, compresión y motivación para poder terminar este proyecto. A mi compañera, por la ayuda y esfuerzo realizado. Alejandro Carmona Martos www.adminso.es ÍNDICE Capítulo 1   S. O. ANDROID ................................................................................................... 11   1.1.   ¿QUÉ ES ANDROID? .................................................................................................... 11   1.2.   HISTORIA ANDROID ................................................................................................... 11   1.3.   ARQUITECTURA .......................................................................................................... 12   1.4.   EVOLUCION Y VERSIONES ....................................................................................... 14   1.4.1.  Apple Pie V.1.0 ........................................................................................................ 14   1.4.2.  Banana Bread “Petit Four” V1.1. ............................................................................ 15   1.4.3.  Cupcake V1.5. ......................................................................................................... 16   1.4.4.  Donut V1.6 .............................................................................................................. 17   1.4.5.  Eclair V2.0/V2.1 ...................................................................................................... 18   1.4.6.  Froyo V2.2 ............................................................................................................... 20   1.4.7.  Gingerbread V2.3 .................................................................................................... 21   1.4.8.  Honeycomb V3/V3.1/V3.2 ...................................................................................... 23   1.4.9.  Ice Cream Sandwich V4.0 ....................................................................................... 25   1.4.10.   Jelly Bean V4.1/V4.2/V4.3 ................................................................................ 28   1.5.   COMPARATIVA S.O. ................................................................................................... 30   1.5.1.  Android VS Iphone IOS .......................................................................................... 30   1.5.2.  Android VS Windows Phone. .................................................................................. 31   1.5.3.  Android VS Balckberry. .......................................................................................... 34   Capítulo 2   INTRODUCCIÓN A LA PROGRAMACIÓN EN ANDROID ....................... 37   2.1.   INTRODUCCIÓN A LA PROGRAMACIÓN EN ANDROID. .................................... 37   2.1.1.  Conceptos básicos de Java. ...................................................................................... 37   2.1.2.  Identificadores y palabras clave. .............................................................................. 38   2.2.   REQUERIMIENTO DE SOFTWARE E INSTALACIÓN. ........................................... 38   2.2.1.  Java JDK .................................................................................................................. 38   2.2.2.  ADT (Android Development Toolkit) Bundle ........................................................ 39   2.2.3.  Instalar el SDK y Eclipse IDE ................................................................................. 40   2.2.4.  Instalación de los Paquetes ...................................................................................... 41   2.2.5.  Android Virtual Devices ( AVD ) ........................................................................... 42   2.2.6.  Herramientas de desarrollo de Android ( ADT ) ..................................................... 45   2.2.7.  Configurar Eclipse para acceder al SDK ................................................................. 46   2.2.8.  Creando un Proyecto ................................................................................................ 47   2.2.9.  Estructura de la Aplicacion ...................................................................................... 49 8 Progamar videojuegos con Android 2.2.10.   Ejecutando Aplicacion ....................................................................................... 50   2.3.   ANDROID STUDIO ....................................................................................................... 50   2.3.1.  Descarga del archivo ................................................................................................ 50   2.3.2.  Instalación. ............................................................................................................... 51   2.3.3 Inicio de la aplicación ............................................................................................... 51   Capítulo 3   NIVEL BÁSICO / APP INVENTOR ................................................................. 63   3.1.   INTRODUCCIÓN. ......................................................................................................... 63   3.2.   REQUISITOS Y CONFIGURACIÓN DEL SISTEMA ................................................. 65   3.2.1.  Comprueba tu configuración Java. .......................................................................... 65   3.3.   ¿CÓMO COMENZAR A USAR APP INVENTOR? .................................................... 66   3.4.   APP INVENTOR DESIGNER ....................................................................................... 69   3.5.   APP INVENTOR BLOCKS EDITOR. ........................................................................... 70   3.6.   EJEMPLO PRÁCTICO: CREACIÓN MOLEMASH .................................................... 75   Capítulo 4   NIVEL INTERMEDIO / AVANZADO. LIBGDX ........................................... 86   4.1.   INTRODUCCIÓN A LIBGDX ..................................................................................... 86   4.1.1.  Diagrama de los componentes del sistema. ............................................................. 87   4.1.2.  OpenGL ES y el funcionamiento de LibGDX. ....................................................... 88   4.1.3.  El marco de aplicaciones ......................................................................................... 95   4.1.4.  Clases de arranque ................................................................................................... 96   4.1.5.  El Ciclo de Vida de una aplicación libgdx .............................................................. 97   4.1.6.  Consulta ................................................................................................................. 105   4.1.7.  Inicio de sesión ...................................................................................................... 106   4.1.8.  Threading - Enhebrado .......................................................................................... 106   4.1.9.  Administración de archivos ................................................................................... 107   4.1.10.  Preferencias .......................................................................................................... 113   4.1.11.  Almacenamiento .................................................................................................. 114   4.2.   MANIPULACIÓN DE ENTRADA .............................................................................. 114   4.2.1.  Teclado .................................................................................................................. 115   4.2.2.  Mouse & Touch ..................................................................................................... 115   4.2.3.  Polling o Sondeo .................................................................................................... 116   4.2.4.  Control de eventos / Handling ............................................................................... 118   4.2.5.  Detección de gestos ............................................................................................... 120   4.2.6.  La entrada de texto simple ..................................................................................... 121   4.2.7.  Acelerómetro ......................................................................................................... 122   4.2.8.  Vibrador ................................................................................................................. 123   4.2.9.  Atrás y tecla de menú captura ................................................................................ 124   4.2.10.  El teclado en pantalla ........................................................................................... 124   4.3.   GESTIÓN DE LA MEMORIA ..................................................................................... 125   4.3.1.  La agrupación de objetos ....................................................................................... 126   4.4.   AUDIO .......................................................................................................................... 128   4.4.1.  Efectos sonoros. ..................................................................................................... 128   4.4.2.  Streaming de música. ............................................................................................. 129   4.5.   UTILIDADES MATEMÁTICAS / MATH .................................................................. 130   4.5.1.  Introducción ........................................................................................................... 130   4.5.2.  Utilidades de matemáticas ..................................................................................... 130   4.5.3.  Catmull-Rom Spline .............................................................................................. 130   4.5.4.  Triángulo Ear-Clipping .......................................................................................... 130   4.5.5.  Window media ....................................................................................................... 131   4.5.6.  Interpolación .......................................................................................................... 131   4.5.7.  Vectores, matrices, cuaterniones ........................................................................... 131   4.5.8.  Matrices ................................................................................................................. 132   4.5.9.  Quaternions / Cuaterniones. ................................................................................... 133   4.6.   FÍSICA. ......................................................................................................................... 134   www.adminso.es INDICE 9 4.6.1.  Bibliotecas ............................................................................................................. 134   4.6.2.  Configuración de Box2D con libgdx ..................................................................... 134   4.6.3.  Crear un mundo ..................................................................................................... 134   4.6.4.  Procesador Debug ................................................................................................. 135   4.6.5.  Intensificar la simulación ....................................................................................... 135   4.6.6.  Rendering ............................................................................................................... 136   4.6.7.  Objetos / Organismos ............................................................................................ 136   4.6.8.  Cuerpos dinámicos ................................................................................................. 136   4.6.9.  Cuerpos estáticos ................................................................................................... 137   4.6.10.Cuerpos cinemáticos ............................................................................................. 138   4.6.11.Impulsos / Fuerzas ................................................................................................ 138   4.6.12.Sensores ................................................................................................................ 141   4.6.13.Listener .................................................................................................................. 141   4.6.14.Recursos ................................................................................................................ 142   4.6.15.Instrumentos .......................................................................................................... 142   4.7.   GRÁFICOS ................................................................................................................... 142   4.7.1.  Introducción ........................................................................................................... 142   Capítulo 5   PROGRAMACION EN 2D. LIBGDX ............................................................. 147   5.1.   SPRITEBACH, TEXTUREREGION Y SPRITE. ........................................................ 147   5.1.1.  SpriteBatch ............................................................................................................ 148   5.1.2.  Texture. .................................................................................................................. 148   5.1.3.  TextureRegion ....................................................................................................... 149   5.1.4.  Sprite ...................................................................................................................... 150   5.1.5.  Tinting .................................................................................................................... 151   5.1.6.  Viewport ................................................................................................................ 152   5.2.   NINEPATCHES ........................................................................................................... 152   5.2.1.  Introducción ........................................................................................................... 153   5.2.2.  Crear y crear instancias de un NinePatch manualmente ........................................ 153   5.2.3.  Paquete de la imagen utilizando SkinPacker ......................................................... 156   5.3.   PIXMAPS ..................................................................................................................... 157   5.3.1.  Introducción ........................................................................................................... 157   5.3.2.  Mapa de puntos de creación .................................................................................. 158   5.3.3.  Dibujando. ............................................................................................................. 159   5.4.   MAPAS. ........................................................................................................................ 159   5.4.1.  Clases base ............................................................................................................. 159   5.4.2.  Propiedades ............................................................................................................ 160   5.4.3.  Capas de Mapa ....................................................................................................... 160   5.4.4.  Mapa Objects ......................................................................................................... 161   5.4.5.  Mapa Procesador ................................................................................................... 161   5.5.   MAPAS DE BALDOSAS. ............................................................................................ 162   5.5.1.  Capas ...................................................................................................................... 162   5.5.2.  Cell ......................................................................................................................... 163   5.5.3.  Tilesets y Baldosas ................................................................................................ 163   5.5.4.  Prestación Mapas ................................................................................................... 163   5.5.5.  Cargando TMX / maps baldosas ............................................................................ 165   5.5.6.  Mapas mosaicos. .................................................................................................... 166   5.6.   SCENE2D ..................................................................................................................... 167   5.6.1.  Visión de conjunto. scene2d.ui .............................................................................. 167   5.6.2.  Widgets .................................................................................................................. 172   5.6.3.  Reproductores sin scene2d.ui ................................................................................ 175   5.6.4.  Caracteristicas de Scene2D .................................................................................... 175   5.6.5.  Stage ...................................................................................................................... 176   5.6.6.  Viewport ................................................................................................................ 176   5.6.7.  Draw ...................................................................................................................... 178   www.adminso.es 10 Progamar videojuegos con Android 5.6.8.  Grupo de transformación ....................................................................................... 179   5.6.9.  Hit detección .......................................................................................................... 179   5.6.10.Sistema de eventos ................................................................................................ 180   5.6.11.InputListener ......................................................................................................... 180   5.6.12.Acciones ................................................................................................................ 182   5.6.13.Interpolación ......................................................................................................... 183   Capítulo 6   PROGRAMACIÓN EN 3D. .............................................................................. 185   6.1.   ANIMACIONES EN 3D Y SKINNING. ..................................................................... 186   6.2.   USANDO LAS ANIMACIONES ................................................................................. 187   6.2.1.  La aplicación de una sola animación ..................................................................... 187   6.2.2.  Looping .................................................................................................................. 187   6.2.3.  AnimationDesc ...................................................................................................... 187   6.2.4.  AnimationListener ................................................................................................. 188   6.2.5.  Animaciones fusión ............................................................................................... 188   6.2.6.  Animaciones cola ................................................................................................... 188   6.2.7.  Animación Acción ................................................................................................. 188   6.2.8.  Velocidad de animación ........................................................................................ 188   6.2.9.  Transformaciones nodo ......................................................................................... 189   6.2.10.   Skinning ........................................................................................................... 189   6.3.   3D BASIC UTILIZANDO LIBGDX ............................................................................ 189   6.3.1.  Cargando modelos usando LibGDX ...................................................................... 194   6.3.2.  Carga de una escena con LibGDX ......................................................................... 199   6.3.3.  Creación de un sombreado con LibGDX ............................................................... 205   6.3.4.  Uso de materiales con LibGDX. ............................................................................ 214   6.4.   INTRODUCCIÓN A BULLET 3D .............................................................................. 227   6.4.1.  Videojuegos de ejemplo ........................................................................................ 227   6.4.2.  Compilar y ejecutar ................................................................................................ 227   6.4.3.  Constantes .............................................................................................................. 228   6.4.4.  Video. ..................................................................................................................... 229   6.4.5.  Globales ................................................................................................................. 230   6.4.6.  Videojuego ............................................................................................................. 230   6.4.7.  El bucle de control ................................................................................................. 232   6.4.8.  Condicionales ........................................................................................................ 233   6.4.9.  Mapas de terreno .................................................................................................... 233   Capítulo 7   VIDEOJUEGO EN 2D. ..................................................................................... 239   7.1.   DISEÑAR UN JUEGO. ................................................................................................ 239   7.1.1.  El papel más poderoso que el código. ................................................................... 239   7.1.2.  Mecánica del juego. ............................................................................................... 241   7.1.3.  Pantallas del juego. ................................................................................................ 241   7.1.4.  La aplicación y el gestor ventana. .......................................................................... 241   7.1.5.  Entrada. .................................................................................................................. 241   7.2.   COMENZANDO CON EL CÓDIGO. .......................................................................... 242   7.2.1.  Descargar la librería ............................................................................................... 242   7.2.2.  Crear un proyecto a través de gdx.setup.ui de Libgdx. ......................................... 243   7.2.3.  importamos el proyecto. ........................................................................................ 244   7.2.4.  Desmenuzando el código. Paso a paso. ................................................................. 246   BIBLIOGRAFÍA ...................................................................................................................... 265   www.adminso.es

Description:
INTRODUCCIÓN A LIBGDX . 87. 4.1.2. OpenGL ES y el funcionamiento de LibGDX. 96. 4.1.5. El Ciclo de Vida de una aplicación libgdx .
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.