Que estàs buscant?
E6. Desenvolupar videojocs en llenguatges de programació d'alt nivell en motors gràfics a partir de les especificacions.
G3. Reunir i interpretar dades rellevants (normalment dins de la seva àrea d'estudi) per emetre judicis que incloguin una reflexió sobre temes rellevants d'índole social, científica o ètica.
G5. Desenvolupar les habilitats d'aprenentatge necessàries per emprendre estudis posteriors amb un alt grau d'autonomia.
T1. Comunicar en un tercer idioma, que serà preferentment l'anglès, amb un nivell adequat de forma oral i per escrit i d'acord amb les necessitats que tindran els graduats i graduades.
T2. Treballar com a membre d'un equip interdisciplinari ja sigui com un membre més o realitzant tasques de direcció amb la finalitat de contribuir a desenvolupar projectes amb pragmatisme i sentit de la responsabilitat, assumint compromisos i tenint en compte els recursos disponibles.
El nou perfil de dissenyador ha d'adquirir nocions de programació, matemàtiques i física per adaptar-se a aquests nous requeriments del desenvolupament de videojocs.
A l'inici de l'assignatura de Programació II, els alumnes ja són capaços de resoldre certs problemes amb l'ús d'estructures de control i d'emmagatzemar informació en variables i contenidors de dades (impartit en Fonaments de la Programació), i també tenen clars els conceptes d'encapsulació, polimorfisme i l'enviament de missatges entre els diferents objectes en el paradigma orientat a objectes (impartit en Programació I). El llenguatge vehicular entre les assignatures de programació ha estat C# i per no desfocalizar als alumnes, ha de seguir sent-ho en les altres assignatures de programació del primer any.
Programació II és el primer apropament dels alumnes a la programació aplicada als videojocs. Tot i que l'objectiu del grau són dissenyadors capaços de programar mecàniques i molt probablement de fer-ho en motors de videojocs com Unity3D i UE4, l’aprenentatge s'ha de centrar en forjar una base de resolució de problemes de disseny mitjançant algoritmes més que en aprendre una eina o motor en concret.
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.
A nivell general, aquesta assignatura contribueix als següents resultats d'aprenentatge especificats per a la matèria a la qual pertany (Desenvolupament):
E6.5. Incorporar les lleis de la física i comportaments intel·ligents de forma eficaç mitjançant llibreries específiques.
E6.6. Desenvolupar videojocs 2D i 3D (o parts del mateix) en llenguatges d’alt nivell sobre plataformes i motors destinats a tal efecte.
E6.2. Interpretar l’anàlisi del software per a la seva posterior desenvolupament.
L'assignatura fara servir les següents metodologies de treball:
Classe magistral, estudi de casos, laboratoris en grup reduït i aprenentatge basat en preguntes.
1. Paradigmes de programació
1.1. Programació estructurada
1.2. Programació orientada a objectes
2. Programació gràfica
2.1.Conceptes
2.1.1 Renderitzat 2D
2.1.2 Bucle de joc: draw i update
2.2. Llibreria SFML
2.2.1. Inputs: active polling i event handling
2.2.2. Sprites
2.2.3. So i text
3. Programació bàsica amb motor
3.1. Estructura engine-game-actor
3.2. Actors
3.2.1. Moviment: rotació, direcció, velocitat i acceleració
3.2.2. LERP i Moviment polar
3.2.3. Animated Actors
3.3. HUD
4. Programació d’eines i comportaments
4.1. Eines del motor
4.1.1 Escena: gestió d’actors i funció lambda
4.1.2. Timers i Spawners
4.1.3. Tilemaps
4.1.4. Viewports
4.2. Comportaments
4.2.1. FSM
4.2.2. Steering
4.2.3. Inner i outer radius
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:
A1. Exercicis a realitzar a classe o a casa (Evidencia del resultat d’aprenentatge E6.2)
A2. Pràctica de laboratori 1: Llistes i actors (Evidencia del resultat d’aprenentatge E6.6)
A3. Pràctica de laboratori 2: Actors animats i Spawners (Evidencia del resultat d’aprenentatge E6.6 i E6.5)
A4. Pràctica de laboratori 3: FSMs i Steerings (Evidencia del resultat d’aprenentatge E6.6)
A5. Examen Final (Evidencia 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. Exercicis a realitzar a classe o a casa: 14%
A2. Pràctica de laboratori 1: Llistes i actors: 12%
A3. Pràctica de laboratori 2: Actors animats i Spawners: 12%
A4. Pràctica de laboratori 3: FSMs i Steerings: 12%
A5. Examen Final: 50%
Nota final = A1 0,14 + A2 0,12 + A3 0,12 + A4 0,12 + A5 0,5
Consideracions:
Cal obtenir una nota igual o superior a 5 al examen final per a poder aprovar l’assignatura.
Una activitat no entregada o lliurada amb retard i sense justificació (citació judicial o ingrés mèdic) compta com un 0.
És responsabilitat de l’alumne evitar el plagi en totes les seves formes. En el cas de detectar plagi, independentment del seu abast, en alguna activitat correspondrà a tenir una nota de 0. A més el professor comunicarà a la cap d’estudis la situació per a que es prenguin mesures aplicables en materia de règim sancionador.
L'assistència a les pràctiques de laboratori és obligatòria.
Recuperacions:
L’examen de recuperació tan sols recupera la nota del examen final. L'alumne amb un NP a l'examen final no podrà presentar-se al examen de recuperació.
Moreira, A., Haller, J., & Hansson, H. V. (2013). SFML game development. Packt Publishing
Buckland, M. (2005). Programming game AI by example. Jones & Bartlett Learning.