Información general


Tipo de asignatura: obligatoria

Coordinador: Ana Beatriz Pérez Zapata

trimestre: Segundo trimestre

Créditos: 4

Profesorado: 

Lasse Loepfe

Idiomas de impartición


  • Castellano
  • Català

Los materiales podrán proporcionarse tanto en catalán como en español o inglés. 

Competencias


Competencias específicas
  • V6. Desarrollar videojuegos en lenguajes de programación de alto nivel en motores gráficos a partir de sus especificaciones.

Descripción


La asignatura introduce al alumno en la programación de juegos 2D. La herramienta principal que se usa es Unity, aunque la asignatura se centra más en los conceptos clave del desarrollo de juegos y no en la herramienta específica que se usa para implementar los ejemplos y prácticas.

Durante el desarrollo de 4 proyectos independiente introducen teóricamente los conceptos principales en las primeras clases con pequeños ejemplos que los alumnos puedan experimentar. Una vez explicados los conceptos, los alumnos se dedican a realizar sus proyecto, teniendo el apoyo del profesor en todo momento durante las clases. Los juegos deberá entregarse dentro del plazo y en la forma adecuados.

El examen consiste en implementar de forma práctica y eòrica conceptos expuestos en clase.

 

Contenidos


Tema 1: Introducción y física del jugador

1.1 Character Movimiento

1.2 Física de saltos

      1.2.1 Saltos verticales

      1.2.2 Saltos horizontales

1.3 Modificación de la gravedad

 

Tema 2: Inteligencia Artificial

2. 1 Detección del jugador

     2.1.1 Distancia

     2.1.2 Campo de visión

     2.1.3 obstáculos

2. 2 Patroling

   2.2.1 puntos de ruta

   2.2.2 Detección de plataformas

   2.2.3 Búsqueda de caminos


 

Tema 3: UI & Scriptable Objects

3.1 IU

3. 2 Sistema de diálogos

    3.2.1 Diálogo sin interacción

    3.2.2 Opciones de diálogo

    3.2.3 Resultado del diálogo

3.3 Inventario

     3.3.1 Añadir objetos a inventario

     3.3.2 Emplear objetos del inventario

3.4 Tienda

 


Tema 4 Command Pattern

4.1 Store Actions

4.2 entidades

4.3 Undo / Redo

 

Tema 5(extra) Spawning & Procedural Generation

5.1 Generación de mapas

               5.1.1 Grid based dungeons

               5.1.2 Automates celulares

               5.1.3 Random Room placement

               5.1.4 BSP Tree

5.2 Perlin noise

5.3 Object Pooling

Sistema de evaluación


La nota de cada alumno se calculará siguiendo los siguientes porcentajes:

A1. Prácticas de laboratorio: Proyecto Juego 2D - Juego 1 12.5%

A2. Prácticas de laboratorio: Proyecto Juego 2D - Juego 2 12.5%

A3. Prácticas de laboratorio: Proyecto Juego 2D - Juego 3 12.5%

A4. Prácticas de laboratorio: Proyecto Juego 2D - Juego 3 12.5%

A5. Examen final práctico y teórico 50%

 

 

Consideraciones:

  • Hay que obtener una nota superior a 5 al examen final para aprobar la asignatura.
  • Hay que obtener una nota superior a 5 a en el promedio de las prácticas para aprobar la asignatura.
  • La nota máxima que se puede obtener en la convocatoria extraordinaria será 5.

  • Una actividad no entregada o entregada con retraso y sin justificación (citación judicial o asunto médico) cuenta como un 0.

  • Es responsabilidad del alumno evitar el plagio en todas sus formas. En caso de detectar un plagio, independientemente de su alcance, en alguna actividad corresponderá a tener una nota de 0. Además, el profesor comunicará al director del departamento la situación para que se tomen medidas aplicables en materia de régimen sancionador.

Bibliografía


Básico

https://www.habrador.com/tutorials/programming-patterns/

Learning C # Programming with Unity 3D. Alex Okita.

Tutorial web de herramientas de creación de juegos con el motor Unity (http://unity3d.com/es/learn)

http://gameprogrammingpatterns.com/

Complementario

https://unity3d.college/

Gama, E., Helm, R., Johnson, R. and Vlissides, J.

Design patterns: Elementos of reusable object-oriented software

1995 - Addison-Wesley - Reading, Mass.