Que estàs buscant?
Els materials podran proporcionar-se tant en català com en castellà o anglès.
B3_Que els estudiants tinguin la capacitat de reunir i interpretar dades rellevants (normalment dins de la seva àrea d'estudi), per emetre judicis que incloguin una reflexió sobre temes rellevants de caire social, científica o ètica
B4_Que els estudiants puguin transmetre informació, idees, problemes i solucions a un públic tan especialitzat com no especialitzat
V6. Desenvolupar videojocs en llenguatges de programació d'alt nivell en motors gràfics a partir de les especificacions.
V15. Dissenyar i planificar estratègies d'assegurament de la qualitat, test i anàlisi de dades de videojocs i productes interactius.
T1_Que els estudiants coneixin un tercer idioma, que serà preferentment l'anglès, amb un nivell adequat de forma oral i per escrit, d'acord amb les necessitats que tindran les graduades i els graduats a cada titulació
T2_Que els estudiants tinguin capacitat per a treballar com a membres d'un equip interidisciplinar ja sigui com un membres més, o realitzant tasques de direcció amb la finalitat de contribuir a desenvolupar projectes amb pragmatisme i sentit de la responsabilitat, assumint compromisos tenint en compte els recursos disponibles
L'assignatura introdueix a l'alumne a la programació de jocs 2D. L'eina principal que s'usa és Unity, tot i que l'assignatura es centra més en els conceptes clau del desenvolupament de jocs i no en l'eina específica que s'usa per implementar els exemples i pràctiques.
Durant el desenvolupament de 3 projectes independent s'introdueixen teòricament els conceptes principals a les primeres classes amb petits exemples que els alumnes puguin experimentar. Una vegada explicats els conceptes, els alumnes es dediquen a realitzar el seus projecte, tenint el suport del professor a tot moment durant les classes. Els jocs haurà de lliurar-se dintre del termini i en la forma escaient adequats.
L'exàmen consisteix en implementar de manera pràctica i eòrica conceptes exposats a classe.
Aquesta assignatura disposa de recursos metodològics i digitals per fer possible la seva continuïtat en modalitat no presencial en el cas de ser necessari per motius relacionats amb la Covid-19. D'aquesta forma s'assegurarà l'assoliment dels mateixos coneixements i competències que s'especifiquen en aquest pla docent.
En acabar l’assignatura els estudiants han de ser capaços de:
E6.1. Dissenyar l'arquitectura del software d'un videojoc d'acord a unes especificacions.
E6.6. Desenvolupar videojocs 2D i 3D (o parts del mateix) en llenguatges d'alt nivell sobre plataformes i motors destinats a tal efecte.
L’assignatura utilitza les següents metodologies de treball:
Classe magistral, Càpsules de vídeo, Resolució de problemes i Laboratori en grup reduït.
Tema 1: Introducció i física del jugador
1.1 Character Movement
1.2 Física de salts
1.2.1 Salts verticals
1.2.2 Salts horitzontals
1.3 Modificació de la gravetat
Tema 2: Intel·ligència Artificial
2. 1 Detecció del jugador
2.1.1 Distància
2.1.2 Camp de visió
2.1.3 Obstacles
2. 2 Patroling
2.2.1 Waypoints
2.2.2 Detecció de plataformes
2.2.3 Pathfinding
Tema 3: UI & Scriptable Objects
3.1 UI
3. 2 Sistema de diàlegs
3.2.1 Diàleg sense interacció
3.2.2 Opcions de diàleg
3.2.3 Resultat del diàleg
3.3 Inventari
3.3.1 Afegir objectes a inventari
3.3.2 Fer servir objectes del inventari
3.4 Botiga
Tema 4 Spawning & Procedural Generation
4.1 Generació de mapes
4.1.1 Grid based dungeons
4.1.2 Automates cel·lulars
4.1.3 Random Room placement
4.1.4 BSP Tree
4.2 Perlin noise
4.3 Object Pooling
Tema 5 Command Pattern
5.1 Store Actions
5.2 Entities
5.3 Undo / Redo
Amb l’objectiu de recollir evidència de l’assoliment dels resultats d’aprenentatge esperats es realitzaran les següents activitats de caràcter avaluatiu (relacionades amb totes les competències comunes):
Les pràctiques tracten de desenvolupar un joc de plataformes 2D en el qual els alumnes hauran d'implementar una solució als problemes que aquest tipus de jocs plantegen i que s'expliquen a classe. El professorat deixarà clares les funcionalitats que ha de tenir el joc i quins elements haurà de tenir. Els alumnes podran decidir com implementar-los i proposar diferents estratègies (mecàniques, tipus d'enemics, trampes...) on es demostri la seva habilitat com a programadors.
A1. Pràctiques de laboratori: Projecte Videojoc 2D - Joc 1 (Evidència del resultat d’aprenentatge E6.1 i E6.6)
Control jugador + Física
A2. Pràctiques de laboratori: Projecte Videojoc 2D - Joc 2 (Evidència del resultat d’aprenentatge E6.1 i E6.6)
IA Enemics
A3. Pràctiques de laboratori: Projecte Videojoc 2D - Joc 3 (Evidència del resultat d’aprenentatge E6.1 i E6.6)
UI - Botiga
A4. Pràctiques de laboratori: Projecte Videojoc 2D - Joc 4 (Evidència del resultat d’aprenentatge E6.1 i E6.6)
Gerneració procedura
A5. Pràctiques de laboratori: Projecte Videojoc 2D - Joc 5 (Evidència del resultat d’aprenentatge E6.1 i E6.6)
Command Pattern
A6. Examen final pràctic i teòric (Evidència de tots els resultats d’aprenentatge)
Criteris generals de les activitats:
El professor presentarà un enunciat per cada activitat i els criteris d’avaluació i/o rúbriques.
El professor informarà de les dates i format del lliurament de l’activitat.
La nota de cada alumne es calcularà seguint els següents percentatges:
A1. Pràctiques de laboratori: Projecte Videojoc 2D - Joc 1 10%
A2. Pràctiques de laboratori: Projecte Videojoc 2D - Joc 2 10%
A3. Pràctiques de laboratori: Projecte Videojoc 2D - Joc 3 10%
A4. Pràctiques de laboratori: Projecte Videojoc 2D - Joc 3 10%
A5. Pràctiques de laboratori: Projecte Videojoc 2D - Joc 3 10%
A6. Examen final pràctic i teòric 50%
Consideracions:
La nota màxima que es pot obtenir en la convocatòria extraordinària serà 5.
Una activitat no entregada o lliurada amb retard i sense justificació (citació judicial o assumpte mèdic) compta com un 0.
http://gameprogrammingpatterns.com/
https://www.habrador.com/tutorials/programming-patterns/
Learning C# Programming with Unity 3D. Alex Okita.
Tutorial web d'eines de creació de jocs amb el motor Unity (http://unity3d.com/es/learn)
https://unity3d.college/
Gamma, E., Helm, R., Johnson, R. and Vlissides, J.
Design patterns: Elements of reusable object-oriented software
1995 - Addison-Wesley - Reading, Mass.