User Tools

Site Tools


apuntes:libgdx

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
apuntes:libgdx [06/02/2019 20:11] – [TiledMaps] Santiago Faciapuntes:libgdx [03/06/2023 18:42] – [Práctica 2.1] Santiago Faci
Line 722: Line 722:
  
 //libGDX// proporciona una serie de componentes para el diseño de UI (User Interface) a través de la librería [[https://github.com/libgdx/libgdx/wiki/Scene2d|Scene2d]] con el que es posible diseñar e implementar menús de juego muy completos. //libGDX// proporciona una serie de componentes para el diseño de UI (User Interface) a través de la librería [[https://github.com/libgdx/libgdx/wiki/Scene2d|Scene2d]] con el que es posible diseñar e implementar menús de juego muy completos.
 +
 +{{ youtube>znrIfjg6vmQ }}
 +\\
  
 Además, recientemente ha aparecido un proyecto muy interesante que surge como una mejora sobre estos componentes, llamado [[https://github.com/kotcrab/vis-editor/wiki/VisUI|VisUI]] que reimplementa algunos de estos componentes y añade otros que no existen, por lo que resulta una librería mucho más apropiada y completa para trabajar. Para usarlo, simplemente tenemos que añadirlo como extensión en el ''build.gradle'' de nuestro proyecto y añadir una dependencia para descargar la librería (Más información en el enlace a la librería). Además, recientemente ha aparecido un proyecto muy interesante que surge como una mejora sobre estos componentes, llamado [[https://github.com/kotcrab/vis-editor/wiki/VisUI|VisUI]] que reimplementa algunos de estos componentes y añade otros que no existen, por lo que resulta una librería mucho más apropiada y completa para trabajar. Para usarlo, simplemente tenemos que añadirlo como extensión en el ''build.gradle'' de nuestro proyecto y añadir una dependencia para descargar la librería (Más información en el enlace a la librería).
Line 1908: Line 1911:
   * [[https://github.com/codeandcoke/minijumper2dx|MiniJumper2dx (juego plataformas)]]   * [[https://github.com/codeandcoke/minijumper2dx|MiniJumper2dx (juego plataformas)]]
  
-===== Práctica 2.1 ===== 
- 
-=== Objetivos === 
- 
-Desarrollo de un videojuego 2D 
- 
-=== Enunciado === 
- 
-Se debe desarrollar un videojuego 2D que cumpla con los requisitos descritos a continuación. La temática del juego será elección del alumno. Se podrán usar tanto elementos gráficos como de audio que no hayan sido creados por uno mismo. 
- 
-Será requisito indispensable que el juego se programe siguiendo el paradigma de Programación Orientada a Objetos. 
- 
-=== Requisitos (1 pto cada uno) === 
- 
-  * El videojuego debe contar con un personaje principal que el jugador podrá manejar y debe tener un inicio, un final y un objetivo claro. Hay que preparar al menos dos niveles de juego claramente diferenciados. 
-  * El videojuego mostrará información en pantalla al usuario (puntuación, energía, pantalla actual) y ésta se actualizará cuando corresponda. 
-  * Utilizar menús para iniciar/configurar/terminar la partida y mostrar las instrucciones del juego. Hay que tener en cuenta que se tendrá que poder jugar otra partida sin necesidad de salir del juego. Añadir, al menos, dos opciones de juego configurables que afecten al desarrollo del mismo. 
-  * El juego dispondrá de características de sonido y animaciones en todos los caracteres con movimiento. 
-  * El juego dispondrá de NPCs (Non-Playable Characters) (al menos 3 diferentes) que deberán interactuar con el personaje del jugador. 
- 
-=== Otras funcionalidades (1 pto cada una) === 
- 
-  * Subir el videojuego, como repositorio, a GitHub y gestionar el proyecto con dicha herramienta (gestionar algunas //issues//, crear alguna //release//, editar la wiki con información sobre el proyecto y las instrucciones del juego). 
-  * Al finalizar la partida se almacenará la puntuación del jugador (con su nombre) y se mostrará el top 10 puntuaciones. 
-  * Añadir algún tipo de Inteligencia Artificial a algún NPC del juego. 
-  * Es posible mostrar/ocultar un menú durante el juego con opciones (activar/desactivar sonido, volver al menú principal, salir del juego y continuar con la partida). 
-  * Añadir dos niveles más al juego 
-  * Añadir opciones de multijugador (al menos dos jugadores) local o en red. 
-  * Añadir dos nuevos tipos de NPCs (al menos otros 3). 
-  * Crear un generador de niveles (utilizando TiledMaps o cualquier otro tipo de fichero de entrada) de forma que sea posible incorporar niveles nuevos para el juego de forma sencilla sin necesidad de tocar el código. 
-  * Guardar y cargar partidas para continuar donde se dejó. 
-  * Modificar el comportamiento o características del jugador durante el juego (más energía, más vidas, mejor armamento, más velocidad, . . .) de forma permanente o temporal (//powerups//). Añadir al menos 3 //powerups// diferentes. 
-  * El usuario podrá escoger entre diferentes personajes del juego (al menos 3) con características diferentes. 
-  * Trasladar el juego a más de una plataforma (PC, móvil, web, . . .). 
  
 ---- ----
  
-(c) 2016-2019 Santiago Faci+(c) 2016-2023 Santiago Faci
  
  
apuntes/libgdx.txt · Last modified: 07/03/2024 22:39 by Santiago Faci