Informació general


Tipus d'assignatura: Optativa

Coordinador: Juan José Pons López

Trimestre: Segon trimestre

Crèdits: 6

Professorat: 

Jordi Arnal Montoya

Curs acadèmic: 2025

Curs d'impartició: 4

Llengües d'impartició


  • Català
  • Castellano
  • English

Els materials podran proporcionar-se tant en català com en castellà o anglès.

Competències / Resultats d'aprenentatge


Competències específiques
  • E6. Desenvolupar videojocs en llenguatges de programació d'alt nivell en motors gràfics  a partir de les especificacions.

Competències generals
  • G1. Demostrar tenir i comprendre coneixements avançats de la seva àrea d'estudi que inclouen els aspectes teòrics, pràctics i metodològics, amb un nivell de profunditat que arriba fins a l'avantguarda del coneixement.

  • G2. Resoldre problemes complexos del seu àmbit laboral, mitjançant l'aplicació dels seus coneixements, l'elaboració d'arguments i procediments, i l'ús d'idees creatives i innovadores.

  • G5. Desenvolupar les habilitats d'aprenentatge necessàries per emprendre estudis posteriors amb un alt grau d'autonomia.

Competències transversals
  • 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.

Presentació de l'assignatura


L’assignatura de Programació gràfica avançada s’emmarca en la especialitat de desenvolupament. Si bé dins del grau s’han vist assignatures relacionades amb la programació de Motor i Gameplay, en aquesta assignatura es parlarà més detalladament de la creació d’efectes gràfics avançats mitjançant la programació de les targes de vídeo actuals. Aquesta assignatura tot i estar relacionada amb la branca de programació i tenir relació amb les assignatures de Programació I, Programació II, Fonaments matemàtics dels videojocs i Motors de jocs és molt propera a la branca artística del grau ja que els resultats que es busquen és la millora visual del producte mitjançant programació gràfica. L’assignatura es presenta com una assignatura eminentment pràctica on els alumnes implementen i experimenten amb shaders.

Continguts


Tema 1: Render pipeline

  1. Fixed pipeline
  2. Shaders
  3. Vertex Shader/Pixel Shader

 

Tema 2: Il·luminació

  1. Fixed pipeline
  2. Forward rendering/Deferred rendering
  3. Lambert
  4. Phong
  5. PBR
  6. Ombres

 

Tema 3: PostProcessing

  1. Depth of field
  2. Volumetric lighting
  3. SSR
  4. Color correction
  5. Noise
  6. Vignetting
  7. Fog
  8. Screen Space Ambient Occlusion (SSAO)

Activitats i sistema d'avaluació


La nota de cada alumne es calcularà seguint els següents percentatges:

A1. Pràctica de laboratori: Custom shader amb Unity 25%

A2. Examen parcial 25%

A3. Pràctica de laboratori: Custom shader amb Unity fent servir Shader Graph 25%

A4. Examen final 25%

Nota final = A1 0.25 + A2 0.25 + A3 0.25 + A4 0.25

Consideracions:

  • Cal obtenir una nota superior a 4 als dos examens per aprovar l’assignatura.
  • És responsabilitat de l’alumne evitar el plagi en totes les seves formes. En el cas de detectar un plagi, independentment del seu abast, en alguna activitat correspondrà a tenir una nota de 0. A més, el professor comunicarà a la Direcció de Departament la situació per a que es prenguin mesures aplicables en matèria de règim sancionador.
  • TecnoCampus estableix: qualsevol forma de frau acadèmic serà sancionada d’acord amb la normativa d’avaluació del centre. En cas que es detectin indicis de frau, inclòs l’ús indegut d’eines d’intel·ligència artificial generativa, el professorat de l’assignatura podrà convocar l’estudiant a una entrevista individual amb l’objectiu de verificar-ne l’autoriaPer aquest motiu, l’ús d’intel·ligències artificials generatives (IAG) per a la resolució dels problemes plantejats en l’assignatura —ja sigui en exercicis, pràctiques o proves— es contraproduent, queda estrictament prohibit i serà considerat un cas de frau per plagi. En aquest sentit, no es permet l’ús d’IAG per a generar codi de programació, ni tan sols en forma de fragments, encara que aquest codi sigui posteriorment modificat o personalitzat.  l'ús crític d'IAGs com a vehicle per a resoldre dubtes sobre la matèria no es considera un mal ús d'aquests mecanismes sempre i quan això no entri en contradicció amb el que s'ha indicat abans i l'estudiant no perdi de vista el fet que pot obtenir respostes incorrectes i/o no ajustades als continguts de la matèria. 

Recuperació:

  • Cal obtenir una nota superior a 5 a l’examen de recuperació per aprovar l’assignatura.
  • En cas de superar la recuperació, la nota final màxima de l’assignatura serà de 5

Bibliografia


Bàsic

Engel, Wolfgang. GPU PRO 3: Advanced Rendering Techniques (2012).

Engel, Wolfgang. ShaderX4: Advanced Rendering Techniques (2006).

Fernando, Randima. GPU Gems: Programming Techniques, Tips and Tricks for Real-Time Graphics (2004).