Que estàs buscant?
Els materials podran proporcionar-se tant en català com en castellà o anglès.
B2_Que els estudiants sàpiguen aplicar els seus coneixements a la seva feina o vocació d'una forma professional i tinguin les comptències que demostren mitjançant l'elaboració i defensa d'arguments i la resolució de problemes dins de la seva àrea d'estudi
B5_Que els estudiants hagin desenvolupat aquelles habilitats d'aprenentatge necessàries per emprendre estudis posteriors amb un alt grau d'autonomia
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 està pensada per perfils d’alumnes amb orientació tecnològica (perfil de desenvolupadors) que vulguin aprofundir en la programació de jocs i en els llenguatges més avançats. L’alumne aprendrà a programar amb el llenguatge C++ i a través d’aquest, comprendrà els conceptes de gestió de memòria i altres característiques pròpies de la programació orientada a objectes. Amb això, l’estudiant aprofundirà i consolidarà els conceptes de programació vistos al llarg de la carrera. S’usarà el motor de jocs Unreal, doncs aquest suporta el llenguatge de programació C++ i és també una oportunitat per a aprofundir en aquest motor de jocs amb l’ús d’un altre llenguatge.
L’assignatura es contextualitza dins de la branca de desenvolupament de videojocs. Està relacionada amb les assignatures de desenvolupament de jocs, motors de jocs, programació amb llenguatges interpretats i programació gràfica avançada (optativa).
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.
Al finalitzar l’assignatura, l’estudiant/a ha de ser capaç de:
L'assignatura de llenguatges avançats és eminentment pràctica, on l'estudiant podrà aplicar tots els coneixements adquirits durant el curs acadèmic en el desenvolupament dels seus futurs jocs.
A causa d'això, les classes també seran eminentment pràctiques i s'incentivarà el treball en grup en la mateixa classe.
En cadascuna de les classes, el professor realitzarà una introducció als conceptes teoricopràctics que seran practicats pels propis alumnes a la mateixa aula, el que els ajudarà a consolidar aquests conceptes que seran després utilitzats pels propis estudiants en les pràctiques proposades durant el curs.
Durant el desenvolupament de les pràctiques, per les quals es donarà temps a classe per procedir al seu desenvolupament, el professor realitzarà un seguiment de cada un dels alumnes, per a determinar el seu avanç i, si cal, procedir amb més classes per reforçar els coneixements necessaris o mancances que es puguin detectar.
Sempre que el professor ho consideri adient proposarà als alumnes activitats de reforç per complementar els coneixements ja adquirits durant el curs acadèmic.
Tema 0. Introducció a C++
Introducció històrica i classificació del llenguatge: multi-paradigmes
Tipus de dades: comparació amb Java
Declaracions i definicions
Namespaces, àmbits i validesa
Tipus definits per l’usuari (structs, unions)
Referencies
Punters
Gestió dinàmica de memòria
Classes (Herència, polimorfisme i funcions virtuals). Comparació amb Java
Plantilles: programació genèrica. Contenidors (STL)
Tema 1. C++ i Unreal, projectes amb codi: objectiu, contexte i justificació
Inserció de components amb C++
Creació de Blueprints a partir de classes C++. Comunicació C++ i Blueprints
Entrades d’usuari (teclat/ratolí)
Control del Moviment
Creació d’events de Blueprint des de C++ (BlueprintNativeEvent)
Tema 2. Desenvolupament d’un component de escena reutilitzable
Us de timers
Us de shape tracing
Nous “nodes” en Blueprint. Trucada a funcions C++ (BlueprintCallable)
Generació d’events delegables en Blueprints des de C++ (Event Broadcasting)
Tema 3. HISM
Les tasques assignades als alumnes consistiran en:
Projecte fet en grup que consistirà en completar el projecte desenvolupat a classe durant tota l’assignatura amb els requisits indicats pel professor. Valor total de l'assignatura: 60%
Examen final individual amb l’obligatorietat d’aprovar-lo (obtenir una nota igual o superior a 5). Valor total de l'assignatura: 40%
Per aprovar l'assignatura, els alumnes han d’obtenir una nota igual o superior a 5 segons l'expressió: Nota de l'examen 0,4 + Nota projecte 0,6 (sempre i quan l'examen final estigui aprovat).