Study programme competencies |
Code
|
Study programme competences
|
A8 |
CE08 - Coñecer os fundamentos da xeración de gráficos por computador |
A24 |
CE24 - Coñecer a arquitectura e o funcionamento interno de motores de videoxogos e ter a capacidade de programalos |
A25 |
CE25 - Analizar, avaliar e optimizar o rendemento dun videoxogo |
B1 |
CB6 - Posuír e comprender coñecementos que acheguen unha base ou oportunidade de ser orixinais no desenvolvemento e/ou aplicación de ideas, a miúdo nun contexto de investigación |
B2 |
CB7 - Que os estudantes saiban aplicar os coñecementos adquiridos e a súa capacidade de resolución de problemas en contornas novas ou pouco coñecidos dentro de contextos máis amplos (ou multidisciplinares) relacionados coa súa área de estudo |
B3 |
CB8 - Que os estudantes sexan capaces de integrar coñecementos e enfrontarse á complexidade de formular xuízos a partir dunha información que, sendo incompleta ou limitada, inclúa reflexións sobre as responsabilidades sociais e éticas vinculadas á aplicación dos seus coñecementos e xuízos |
B4 |
CB9 - Que os estudantes saiban comunicar as súas conclusións e os coñecementos e razóns últimas que as sustentan a públicos especializados e non especializados dun modo claro e sen ambigüidades |
B5 |
CB10 - Que os estudantes posúan as habilidades de aprendizaxe que lles permitan continuar estudando dun modo que haberá de ser en gran medida autodirigido ou autónomo |
B6 |
CG1 - Capacidade de organización e planificación, especialmente na formulación de traballos conducentes á creación dos contidos audiovisuais dixitais que compoñen un videoxogo |
B7 |
CG2 - Capacidade de resolver problemas de forma efectiva, principalmente de carácter tecnolóxico e no campo da creación de contidos dixitais interactivos |
B8 |
CG3 - Coñecementos informáticos, en especial os relativos ao uso de tecnoloxías e programas de última xeración no campo de estudo |
B10 |
CG5 - Valorar críticamente o coñecemento, a tecnoloxía e a información dispoñible para resolver os problemas con que deben enfrontarse |
B13 |
CG8 - Capacidade de aplicar os coñecementos na práctica, integrando as diferentes partes do programa, relacionándoas e agrupándoas no desenvolvemento de produtos complexos |
C3 |
CT3 - Habilidade para a xestión da información |
C4 |
CT4 - Capacidade de abstracción, análise, síntese e estruturación da información e as ideas |
C7 |
CT7 - Comprender e valorar a importancia que ten a investigación, a innovación e o desenvolvemento tecnolóxico na profesión e no avance socioeconómico e cultural da sociedade |
C8 |
CT8 - Coñecemento e utilización das novas tecnoloxías necesarias para o exercicio da súa profesión e para a aprendizaxe ao longo da súa vida |
Learning aims |
Learning outcomes |
Study programme competences |
Coñecer as principais características da plataforma hardware sobre a que se executa un videoxogo |
AJ8
|
BJ8 BJ10
|
CJ3 CJ4 CJ8
|
Coñecer a estrutura software dun videoxogo e dun motor de videoxogos |
AJ8 AJ24
|
BJ6 BJ8 BJ10 BJ13
|
CJ3 CJ4 CJ8
|
Coñecer os aspectos máis importantes á hora de analizar o rendemento dun videoxogo e como detectar os seus principais colos de botella |
AJ8 AJ24 AJ25
|
BJ1 BJ2 BJ3 BJ4 BJ5 BJ6 BJ7 BJ13
|
CJ3 CJ4 CJ7
|
Aprender a optimizar un videoxogo para mellorar o seu rendemento nunha determinada plataforma |
AJ8 AJ24 AJ25
|
BJ6 BJ7 BJ10 BJ13
|
CJ3 CJ4
|
Contents |
Topic |
Sub-topic |
Introdución: Motivación e perspectiva global |
1. Motivación
2. Rendemento dun videoxogo: introdución
3. Rendemento en Unreal Engine: Profiling |
Arquitectura dun motor de videoxogos |
1. Introdución
2. Estrutura e funcionamento básico dun videoxogo
3. O bucle principal do xogo (game loop) |
CPU Profiling |
1. Introdución á optimización en CPU
2. Profiling da CPU en Unreal Engine
3. Optimizando o rendemento da CPU
4. Profiling con Intel Vtune Amplifier
5. Rendemento do sistema de almacenamento secundario (disco) |
Gráficos 3D Interactivos. Fundamentos |
1. Introdución
2. Real-time rendering: conceptos básicos
3. Instanciación
4. Culling
5. Luces e sombras
6. Pases de render |
GPU Profiling |
1. Introdución á optimización en GPU
2. Profiling da GPU en Unreal Engine
3. Optimizando o rendemento da GPU
4. Vista de optimización en Unreal Engine (optimization view modes) |
Planning |
Methodologies / tests |
Competencies |
Ordinary class hours |
Student’s personal work hours |
Total hours |
Laboratory practice |
A8 A24 A25 B1 B2 B3 B4 B5 B6 B7 B8 B10 B13 C3 C4 C7 C8 |
9.5 |
50 |
59.5 |
Mixed objective/subjective test |
A8 A24 A25 B3 B4 B7 B8 B10 C3 |
1.5 |
0 |
1.5 |
Guest lecture / keynote speech |
A8 A25 B1 B3 B8 B10 C7 |
9 |
4 |
13 |
|
Personalized attention |
|
1 |
0 |
1 |
|
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students. |
Methodologies |
Methodologies |
Description |
Laboratory practice |
Sesións experimentais que permitan ao alumnado familiarizarse desde un punto de vista práctico cos contidos expostos nas clases teóricas. Inclúe tanto tarefas dirixidas como outras orientadas a ser resoltas de forma autónoma por cada estudante. |
Mixed objective/subjective test |
Proba na que cada estudante ten que amosar que adquiriu as competencias propias da materia a través da resposta a preguntas teóricas e da resolución de problemas. |
Guest lecture / keynote speech |
Clases teóricas, nas que se expón o contido de cada tema. O alumnado disporá de todo o material preciso con anterioridade á clase e o equipo docente promoverá unha actitude activa, realizando preguntas que permitan clarexar aspectos concretos e deixando cuestións abertas para a reflexión do alumnado. |
Personalized attention |
Methodologies
|
Laboratory practice |
|
Description |
A atención personalizada estará garantida na realización das prácticas de laboratorio, sendo imprescindible para dirixir ao alumnado no desenvolvemento do seu traballo. Esta atención personalizada serve, ademais, para validar e avaliar o traballo realizado por cada estudante nas distintas fases do seu desenvolvemento, ata a súa finalización.
Estudantes con matrícula a tempo parcial e con dispensa académica de exención de docencia: deberanse poñer en contacto cos profesores da materia para establecer as medidas de atención personalizada específicas. |
|
Assessment |
Methodologies
|
Competencies |
Description
|
Qualification
|
Laboratory practice |
A8 A24 A25 B1 B2 B3 B4 B5 B6 B7 B8 B10 B13 C3 C4 C7 C8 |
Realización de prácticas, nas que cada estudante ten que empregar os coñecementos adquiridos para resolver distintos problemas de forma autónoma. |
70 |
Mixed objective/subjective test |
A8 A24 A25 B3 B4 B7 B8 B10 C3 |
Proba na que cada estudante ten que amosar que adquiriu as competencias propias da materia mediante a reposta a preguntas teóricas e a resolución de problemas. |
30 |
|
Assessment comments |
Estudantes con matrícula a tempo parcial e con dispensa académica de exención de docencia: deberanse poñer en contacto co profesorado da materia para posibilitar a realización das tarefas avaliables fóra da organización habitual da mesma Os criterios de avaliación para a segunda oportunidade son os mesmos que para a primeira.
|
Sources of information |
Basic
|
Joey de Vries (Kendall & Welling, 2020). Learn OpenGL: Learn modern OpenGL graphics programming in a step-by-step fashion. https://learnopengl.com
T. Akenine-Möller, E. Haines, N. Hoffman, A. Pesce, M. Iwanicki, and S. Hillaire (A K Peters/CRC Press, 2018). Real-Time Rendering (4th Ed.). http://www.realtimerendering.com
Oscar Swierad (Self publishing, 2018). Unreal Art Optimization. https://unrealartoptimization.github.io
Documentación en liña do motor Unreal Engine (). Unreal Engine doc: Engine Features->Performance and Profiling. https://docs.unrealengine.com/en-US/Engine/Performance |
Da documentación en liña oficial de UE4 é relevante especialmente o capítulo adicado a Rendemento e Optimización, pero o resto da documentación tamén é imprescindible para entender moitos dos aspectos implementados no motor e as distintas posibilidades que ofrece.
|
Complementary
|
John L. Hennessy, David A. Patterson (2017). Computer Architecture: A Quantitative Approach (6th Edition). Morgan Kaufmann
Mike McShaffry, David Graham (2012). Game Coding Complete (4th Edition). Cengage Learning PTR
Jason Gregory (2014). Game Engine Architecture (2nd Edition). A K Peters/CRC Press
Robert Nystrom (2014). Game Programming Patterns. Genever Benning |
Inclúense estes catro libros como bibliografía complementaria.
Os tres primeiros son específicos do desenvolvementos de videoxogos e teñen unha parte do seu contido adicada a aspectos de depuración, profiling e rendemento.
O cuarto libro, Hennessy&Patterson, é un clásico da arquitectura de computadores e pode axudar a profundizar en temas de explotación da xerarquía de memoria, multiproceso, etc.
|
Recommendations |
Subjects that it is recommended to have taken before |
Computer Graphics Fundamentals/730529004 | Video Game Programming/730529008 |
|
Subjects that are recommended to be taken simultaneously |
Advanced Video Game Programming/730529019 |
|
Subjects that continue the syllabus |
|
Other comments |
Aínda que as clases desenvolveranse en galego e/ou castelán, o material da materia estará, practicamente na súa totalidade, en inglés.
Para
axudar a conseguir unha contorna inmediata sostible e cumprir co obxectivo da acción número 5, «Docencia e investigación saudable e sustentable ambiental e social», do «Plan de Acción Green Campus
Ferrol», a entrega dos traballos documentais que se realicen nesta materia:
Solicitaranse en formato virtual e/ou soporte informáticoRealizarase a través de Moodle e/ou correo electrónico, en formato dixital sen necesidade de imprimilosEn caso de precisarse algunha entrega en papel:
- Non se empregarán plásticos
- Realizaranse impresións a dobre cara
- Empregarase papel reciclado.
- Evitarase a impresión de borradores
Débese facer un uso sustentable dos recursos e impultar a prevención de impactos negativos sobre o medio.Segundo se recolle nas distintas normativas de aplicación para a docencia universitaria, esta materia incorpora a perspectiva de xénero (usarase linguaxe non sexista, propiciarase a intervención en clase de alumnos e alumnas...) Traballarase para identificar e modificar prexuízos e actitudes sexistas, racistas ou xenófobas e proporanse accións e medidas para corrixilas. |
|