Desarrollo de videojuegos sobre la plataforma Android

  • 276 views
Uploaded on

Esta es la presentación del Proyecto de Final de Carrera "Desarrollo de videojuegos sobre la plataforma Android". …

Esta es la presentación del Proyecto de Final de Carrera "Desarrollo de videojuegos sobre la plataforma Android".

En este link se puede acceder a la memoria del proyecto, con más información sobre este: http://hdl.handle.net/2099.1/14016

More in: Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
276
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
14
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Desarrollo de videojuegos sobre la plataforma Android Facultad de Informática de Barcelona David García Povedano
  • 2. Índice 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas y coste económico 8. Conclusiones 02/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 3. Índice 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas y coste económico 8. Conclusiones 03/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 4. Objetivos del proyecto • Estudio y análisis de la plataforma Android en el contexto del desarrollo de videojuegos en 2D. • Desarrollo de un primer videojuego de mecánica sencilla con el que integrar los conocimientos adquiridos. • Desarrollo de un segundo videojuego de mecánica más compleja y fácilmente ampliable. 04/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 5. Índice 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego 1 “Ping Pang Pung” 6. Videojuego 2 “Terrestrial Blast!” 7. Horas dedicadas y coste económico 8. Conclusiones 05/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 6. ¿Qué es Android? (I) • Conjunto de software que implementa un ecosistema móvil. • Características: – Código Libre. – Software gratuito. – Ecosistema abierto. 06/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 7. ¿Qué es Android? (II) • Objetivos de Android: – Ser un ecosistema Estándar. • El 52.5% de los Smartphone vendidos en el tercer cuarto de 2011 implementan el ecosistema Android. 07/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 8. Índice 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 3.1. Las actividades 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas y coste económico 8. Conclusiones 08/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 9. Las aplicaciones en Android • Las aplicaciones, en lenguaje Java, son interpretadas en tiempo real por la máquina virtual Dalvik. • Las aplicaciones se componen de componentes de diferentes tipos: – Actividades – Servicios – … 09/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 10. Las actividades • Cada actividad es una pantalla de la aplicación. • Son asíncronas. Gestionamos su ciclo de vida a través de la implementación de unas operaciones que el S.O. llamará ante determinadas circunstancias. • Se ejecutan en el UI Thread. Thread que gestiona la interacción con el usuario. 10/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 11. Índice 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 4.1. Estructura de un videojuego en Android 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas y coste económico 8. Conclusiones 11/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 12. Estructura de un videojuego • Simulamos un nivel del videojuego mediante su discretización en diferentes imágenes o frames. 12/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 13. Estructura de un videojuego en Android • Dividimos el bucle en tres hilos de ejecución que se ejecutan concurrentemente. 13/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 14. Índice 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 5.1. Objetivos de “Ping Pang Pung” 5.2. Diagrama de actividades 5.3. Muestra de la jugabilidad 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas y coste económico 8. Conclusiones 14/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 15. Objetivos de “Ping Pang Pung” • Integrar los conocimientos adquiridos durante la carrera con los adquiridos a través de la fase de estudio y análisis de Android. • Crear un primer videojuego simple pero adictivo. • Utilizar la librería de gráficos OpenGL ES 1.0. 15/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 16. Diagrama de componentes 16/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 17. Muestra de la jugabilidad 17/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 18. Índice 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 6.1. Objetivos de “Terrestrial Blast!” 6.2. Muestra de la jugabilidad 6.3. Arquitectura del videojuego 6.4. Los dos niveles de abstracción 7. Horas dedicadas y coste económico 8. Conclusiones 18/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 19. Objetivos de “Terrestrial Blast!” • Crear un videojuego donde, además de la eficiencia, también se tenga en cuenta la extensibilidad, la portabilidad y la reutilización. • Crear un segundo videojuego con un mecanismo más complejo que el anterior. Que haga uso del sensor de orientación para presentar un control más novedoso. • Utilizar la librería de gráficos OpenGL ES 1.X y la librería de físicas Box2D. 19/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 20. Muestra de la jugabilidad 17/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 21. Arquitectura del videojuego (I) 21/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 22. 22/32 Arquitectura del videojuego (II)
  • 23. 23/32 Arquitectura del videojuego (III)
  • 24. Los dos niveles de abstracción • Nivel de abstracción bajo: – Se trabaja con el lenguaje Java. – Se implementan herramientas y características con las que posteriormente se definirán elementos del videojuego. • Nivel de abstracción alto: – Se trabaja con el lenguaje XML. – Se definen niveles y elementos para estos niveles (enemigos, aliados, escenarios, …). Para ello se utilizan las características implementadas a través del nivel de abstracción bajo. 24/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 25. Índice 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas y coste económico 7.1. Horas dedicadas 7.2. Coste económico 8. Conclusiones 25/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 26. Horas dedicadas • Horas dedicadas totales: 477 horas. 26/32 Gráfico de horas dedicadas al proyecto Estudio y análisis de Android (148h) Primer videojuego "Ping Pang Pung" (49h) Segundo videojuego "Terrestrial Blast!" (212h) Documentación (68h) 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 27. Coste económico • Los recursos humanos tienen diferente coste según el puesto que ocupan: – Director: 25 € brutos/h. – Analista: 20 € brutos/h. – Diseñador: 20 € brutos/h. – Diseñador gráfico: 15 € brutos/h. – Programador: 15 € brutos/h. • Coste total de los recursos humanos: 8.625€. • Coste total de los recursos materiales: 1.300€. • Coste total del proyecto: 9.925€. 27/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 28. Índice 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Primer videojuego “Ping Pang Pung” 6. Segundo videojuego “Terrestrial Blast!” 7. Horas dedicadas y coste económico 8. Conclusiones 8.1. Conclusiones generales 8.2. Conclusiones personales 28/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 29. Conclusiones generales (I) • Se puede desarrollar un videojuego para Android de forma cómoda (con matices) y, sobretodo, muy barata. Gracias, entre otras cosas, a la extensa información oficial. • Es perfectamente posible realizar un videojuego en 2D, relativamente potente, para dispositivos Android de gama media-baja, haciendo uso exclusivamente del lenguaje Java. Junto con algunas librerías adicionales. 29/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 30. Conclusiones generales (II) • Eso sí, cuando desarrollamos un videojuego para dispositivos móviles es muy importante el uso eficiente de las librerías utilizadas y de los recursos del sistema. • La división del desarrollo de un videojuego en dos niveles de abstracción potenciando la extensibilidad, la reutilización y la portabilidad nos aporta múltiples ventajas. 30/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 31. Conclusiones personales • He adquirido unos amplios conocimientos acerca del desarrollo de videojuegos 2D en Android. Así como, conocimientos acerca del S.O. en general. • He aprendido a desarrollar videojuegos. Y a utilizar librerías multiplataforma para el desarrollo de estos, como son OpenGL y Box2D. • He aprendido a diseñar una arquitectura para un videojuego que, además de tener en cuenta la propiedad de eficiencia, también potencia la extensibilidad, la portabilidad y la reutilización. 31/32 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 1. Objetivos del proyecto 2. ¿Qué es Android? 3. Las aplicaciones en Android 4. Estructura de un videojuego 5. Videojuego “Ping Pang Pung” 6. Videojuego “Terrestrial Blast!” 7. Horas dedicadas… 8. Conclusiones
  • 32. Desarrollo de videojuegos sobre la plataforma Android Facultad de Informática de Barcelona David García Povedano Fecha 17 de Enero de 2012 Director: Lluís Solano Albajes