Diferenças entre edições de "Computação Gráfica"

Da wiki Wiki Universidade Aberta
(Planos da Unidade Curricular (PUC):)
(Planos da Unidade Curricular (PUC):)
 
(Há 117 revisões intermédias de 16 utilizadores que não estão a ser apresentadas)
Linha 1: Linha 1:
 
[[Category:Informática]]
 
[[Category:Informática]]
 +
[[Category:Engenharia_Informática]]
  
 
==Guia Informativo Oficial==
 
==Guia Informativo Oficial==
Linha 5: Linha 6:
  
 
== Planos da Unidade Curricular (PUC): ==
 
== Planos da Unidade Curricular (PUC): ==
 +
 +
* [https://wiki.dcet.uab.pt/files/images/2/2e/21020-CG_PUC_2024-2025.pdf PUC Computação Gráfica 2024-2025]
 +
* [https://wiki.dcet.uab.pt/files/images/f/fb/PUC_2023_2024.pdf PUC Computação Gráfica 2023-2024]
 +
* [https://wiki.dcet.uab.pt/files/images/c/ce/CG_PUC_22_23.pdf PUC Computação Gráfica 2022-2023]
 +
* [https://wiki.dcet.uab.pt/files/images/9/9c/21-22Plano_da_Unidade_Curricular.pdf PUC Computação Gráfica 2021-2022]
 +
* [https://wiki.dcet.uab.pt/files/images/b/b8/CG_19_20.pdf PUC Computação Gráfica 2019-2020]
 
* [http://wiki.dcet.uab.pt/files/images/e/e0/CG_PUC_2016_17.pdf PUC Computação Gráfica 2016-2017]
 
* [http://wiki.dcet.uab.pt/files/images/e/e0/CG_PUC_2016_17.pdf PUC Computação Gráfica 2016-2017]
 
* [http://wiki.dcet.uab.pt/files/images/2/2b/PUC-CG-2013-2014.pdf PUC Computação Gráfica 2013-2014]
 
* [http://wiki.dcet.uab.pt/files/images/2/2b/PUC-CG-2013-2014.pdf PUC Computação Gráfica 2013-2014]
  
== Enunciados e Resoluções de e-Fólios, p-Fólios e Exames de anos anteriores: ==
+
== Enunciados e Resoluções de e-Fólios,p-Fólios e Exames de anos anteriores ==
 +
=== Ano Letivo 2023/2024 ===
 +
*[https://wiki.dcet.uab.pt/files/images/4/48/Efolio_A_v1_2023-2024.pdf E-fólio A] => [https://wiki.dcet.uab.pt/files/images/f/fa/Ferreira2102841_-_Efolio_A.zip Resolução com 4 valores (David Ferreira)]
 +
*[https://wiki.dcet.uab.pt/files/images/f/f3/CG_eFolioB_2324.pdf Enunciado Efólio B]
 +
*[https://wiki.dcet.uab.pt/files/images/c/cc/Enunciado_efolioGlobal_21020_2023_2024_epoca_normal.pdf E-fólio Global]
 +
 
 +
=== Ano Letivo 2022/2023 ===
 +
*[https://wiki.dcet.uab.pt/files/images/0/07/Efolio_A_v1_2022-2023.pdf E-fólio A] => [https://wiki.dcet.uab.pt/files/images/6/69/CG_E-F%C3%B3lio_A_2022-2023_%284_valores%29%28Pedro_Gaspar%29.zip Resolução com 4 valores (Pedro Gaspar)] => [https://wiki.dcet.uab.pt/files/images/3/36/EfASousa2000027.zip Sugestão de Resolução 2 - EfA (4 val.)]
 +
*[https://wiki.dcet.uab.pt/files/images/c/c4/CompGrafica-2022-23_EFolioB.pdf E-fólio B] => [https://wiki.dcet.uab.pt/files/images/8/8d/CG_E-F%C3%B3lio_B_2022-2023_%284_valores%29%28Pedro_Gaspar%29.zip Resolução com 4 valores (Pedro Gaspar)] => [https://wiki.dcet.uab.pt/files/images/6/67/EfB_Sousa2000027.zip Sugestão de Resolução 2 - EfA (4 val.)]
 +
*[https://wiki.dcet.uab.pt/files/images/5/53/Enunciado_efolioGlobal_21020eg1_2022_2023_v2_placeh.pdf E-fólio Global] [https://wiki.dcet.uab.pt/files/images/4/4f/CG-EfolioGlobal2022-23-Errata.png (Errata)]
 +
 
 +
=== Ano Letivo 2021/2022 ===
 +
*[https://wiki.dcet.uab.pt/files/images/0/06/EfolioA_CG_20212022.pdf E-fólio A] => [https://wiki.dcet.uab.pt/files/images/c/c7/Resolu%C3%A7%C3%A3o_efolioA_3-3valores.zip  Resolução com 3.3 Valores]
 +
*[https://wiki.dcet.uab.pt/files/images/2/21/EfolioBv3_CG_20212022.pdf E-fólio B] => [https://wiki.dcet.uab.pt/files/images/7/76/Resolu%C3%A7%C3%A3o_efolioB_3-7valores.zip Resolução com 3.7 Valores]
 +
*[https://wiki.dcet.uab.pt/files/images/7/7f/Enunciado_efolioGlobal_21020eg1_2021_2022_v2.pdf E-fólio Global - Época Normal]  => [https://wiki.dcet.uab.pt/files/images/b/b4/CG_20-21_Normal_Criterios.pdf Critérios]
 +
*[https://wiki.dcet.uab.pt/files/images/9/9e/Enunciado_efolioGlobal_Recurso_2021_2022.pdf E-fólio Global - Recurso] => [https://wiki.dcet.uab.pt/files/images/9/9b/Resolu%C3%A7%C3%A3o_efolioGlobal_9valores.pdf Resolução com 9 valores]
 +
*[https://wiki.dcet.uab.pt/files/images/b/b2/Enunciado_exame_Recurso_2021_2022_v2.pdf Exame - Recurso]
 +
 
 +
=== Ano Letivo 2020/2021 ===
 +
*[https://wiki.dcet.uab.pt/files/images/6/62/Efolio_A_CG_20.pdf E-fólio A]
 +
*[https://wiki.dcet.uab.pt/files/images/2/26/EfolioB_CG.pdf E-fólio B]
 +
*[https://wiki.dcet.uab.pt/files/images/f/f5/Enunciado_efolioGlobal_21020eg1_2021_v4.pdf E-fólio Global - Época Normal]
 +
*[https://wiki.dcet.uab.pt/files/images/c/c8/Enunciado_efolioGlobalRecurso_21020_2021.pdf E-fólio Global - Época Recurso]
  
 +
=== Ano Letivo 2019/2020: ===
 +
*[https://wiki.dcet.uab.pt/files/images/b/b2/21020-efolioA-19_20.pdf E-Fólio A]
 +
*[https://wiki.dcet.uab.pt/files/images/1/1e/21020-efolioB-19_20.pdf E-Fólio B]
 +
*[https://wiki.dcet.uab.pt/files/images/4/42/1ex-21020_pfolio20192020.pdf P-Fólio (época normal)]
 +
*[https://wiki.dcet.uab.pt/files/images/e/e1/Enunciado_exameOnline_21020ex1_1920.pdf Exame Global-Recurso]
 +
=== Ano Letivo 2018/2019: ===
 +
*[https://wiki.dcet.uab.pt/files/images/f/fc/EfolioA-cg-2018-2019.pdf E-Fólio A] => [https://wiki.dcet.uab.pt/files/images/b/b9/EfolioA-cg-2018-2019-Resolucao-Prof.zip Resolução Prof]
 +
*[https://wiki.dcet.uab.pt/files/images/3/38/EfolioB-cg-2018-2019.pdf E-Fólio B] => [https://wiki.dcet.uab.pt/files/images/5/59/EfolioB-cg-2018-2019-Resolucao-Prof.zip Resolução Prof]
 +
*[https://wiki.dcet.uab.pt/files/images/3/3a/Pfolio-cg-2018-2019-Epoca-Normal.pdf P-Fólio (Época Normal)] => [https://wiki.dcet.uab.pt/files/images/3/3f/Pfolio-cg-2018-2019-Epoca-Normal-Solucao-Teorica.pdf Resolução Parte Teórica]
 +
=== Ano Letivo 2017/2018: ===
 +
*[https://wiki.dcet.uab.pt/files/images/1/16/CG-efolioA_2017-2018.pdf E-Fólio A]
 +
*[https://wiki.dcet.uab.pt/files/images/4/42/CG_efolioB_2017-2018.pdf E-Fólio B]
 +
*[https://wiki.dcet.uab.pt/files/images/5/5c/CG_PF%C3%B3lio_2017-2018.pdf P-Fólio] => [https://wiki.dcet.uab.pt/files/images/4/4b/CG_pF%C3%B3lio_2017-2018_Quest%C3%A3o3-solu%C3%A7%C3%A3o.pdf Resolução Q3]
 +
=== Ano Letivo 2016/2017: ===
 +
*[http://wiki.dcet.uab.pt/files/images/8/87/CG-e-f%C3%B3lioA_2017.pdf E-Fólio A]
 +
*[http://wiki.dcet.uab.pt/files/images/b/b7/CG-e-f%C3%B3lioB_2017.pdf E-Fólio B]
 +
*[http://wiki.dcet.uab.pt/files/images/8/8e/CG-efolioC-2017.pdf E-Fólio C]
 +
*[http://wiki.dcet.uab.pt/files/images/3/3e/CG-pFolio2016-2017.pdf P-Fólio] => [http://wiki.dcet.uab.pt/files/images/2/22/CG-ResolucaoP-FolioEN_2016-17_Q1.pdf Resolução Q1] [http://wiki.dcet.uab.pt/files/images/f/f6/CG-ResolucaoP-FolioEN_2016-17_Q2-3.pdf Resolução Q2-3]
 +
*[http://wiki.dcet.uab.pt/files/images/a/a5/P-f%C3%B3lioRecurso21020.pdf P-Fólio Recurso]
 +
=== Ano Letivo 2015/2016: ===
 +
*[http://wiki.dcet.uab.pt/files/images/a/ac/Pfolio-2016.pdf P-Fólio]
 +
*[http://wiki.dcet.uab.pt/files/images/9/96/Pfolio-recurso-2016.pdf F-Fólio Recurso]
 +
*[http://wiki.dcet.uab.pt/files/images/3/3f/Solucao-questoes_praticas-2016.pdf Resolução questões práticas 2016]
 +
=== Ano Letivo 2014/2015: ===
 +
*[http://wiki.dcet.uab.pt/files/images/7/72/Enunciado_efolio_A_-_2014-2015.pdf E-Fólio A] -> [http://wiki.dcet.uab.pt/files/images/1/19/EFolioA2014-15.pdf Proposta Resolução (Java)]
 +
*[http://wiki.dcet.uab.pt/files/images/1/13/Enunciado_efolio_B_-_2014-2015.pdf E-Fólio B] -> [http://wiki.dcet.uab.pt/files/images/8/83/EFolioB_2014-15.pdf Proposta Resolução (Java)]
 +
*[http://wiki.dcet.uab.pt/files/images/b/b2/Enunciado_e-folio_C_-_2014-2015.pdf E-Fólio C]
 +
*[http://wiki.dcet.uab.pt/files/images/d/dd/ResP-folioENorm_2014-2015.pdf Resolução P-Fólio] -> [http://wiki.dcet.uab.pt/files/images/d/dd/ResP-folioENorm_2014-2015.pdf Resolução]
 
=== Ano Letivo 2013/2014: ===
 
=== Ano Letivo 2013/2014: ===
 +
*[http://wiki.dcet.uab.pt/files/images/5/54/Enunciado_e-folio_A_-_2013-2014.pdf E-Fólio A] -> [http://wiki.dcet.uab.pt/files/images/b/b0/E-folioA_2013-2014.java.pdf  Proposta Resolução (Java)]
 +
*[http://wiki.dcet.uab.pt/files/images/1/1d/Enunciado_e-folio_B_-_2013-2014.pdf E-Fólio B] -> [http://wiki.dcet.uab.pt/files/images/6/61/E-folioB_2013-2014.java.pdf Proposta Resolução (Java)]
 +
*[http://wiki.dcet.uab.pt/files/images/9/9d/Enunciado_e-folio_C_-_2013-2014.pdf E-Fólio C]
 +
* [http://wiki.dcet.uab.pt/files/images/7/79/Enunciado-pFolio-CG-apos-OCR-20140225.pdf p-Fólio Época Normal de 25-fev-2014] => Resolução: [https://cld.pt/dl/download/791175da-41ab-442a-afd4-f6f946ea004f/ResolucaoP-FolioEN_2013-14_Q1.pdf?download=true Questão 1 (PDF com 8,3 MB)] , [https://cld.pt/dl/download/ac5a6a2a-8b57-4ccd-8385-97416da9814a/ResolucaoP-FolioEN_2013-14_Q2-5.pdf?download=true Questões 2 a 5 (PDF com 7,6 MB)]
 +
=== Ano Letivo 2012/2013: ===
 +
=== Ano Letivo 2011/2012: ===
 +
*[http://wiki.dcet.uab.pt/files/images/2/24/ResolucaoP-folioENorm_2011-12_n2.pdf Resolução época normal]
 +
*[http://wiki.dcet.uab.pt/files/images/0/0a/ResExamRecJun2010_parteI.pdf Resolução época recurso]
 +
=== Ano Letivo 2010/2011: ===
  
* [http://wiki.dcet.uab.pt/files/images/7/79/Enunciado-pFolio-CG-apos-OCR-20140225.pdf p-Fólio Época Normal de 25-fev-2014] => Resolução: [https://cld.pt/dl/download/791175da-41ab-442a-afd4-f6f946ea004f/ResolucaoP-FolioEN_2013-14_Q1.pdf?download=true Questão 1 (PDF com 8,3 MB)] , [https://cld.pt/dl/download/ac5a6a2a-8b57-4ccd-8385-97416da9814a/ResolucaoP-FolioEN_2013-14_Q2-5.pdf?download=true Questões 2 a 5 (PDF com 7,6 MB)]
+
=== Ano Letivo 2009/2010: ===
 +
*[http://wiki.dcet.uab.pt/files/images/5/5d/ResExamRecJun2010_parteISmall.pdf Resolução época recurso Parte I]
 +
 
 +
*[http://wiki.dcet.uab.pt/files/images/9/94/ResExamRecJun2010_parteII.pdf Resolução época recurso Parte II]
  
=== Ano Letivo 2012/2013: ===
+
*[http://wiki.dcet.uab.pt/files/images/5/58/ResExamRecJun2010_parteIII.pdf Resolução época recurso Parte III ]
  
=== Ano Letivo 2011/2012: ===
+
*[http://wiki.dcet.uab.pt/files/images/d/da/ResExamRecJun2010_parteIV.pdf Resolução época recurso Parte IV ]
  
 
== Corpo Docente: ==
 
== Corpo Docente: ==
Linha 22: Linha 91:
 
* Nos anos letivos 2013/2014 e 2014/2015: [http://www2.uab.pt/departamentos/DCT/detaildocente.php?doc=91 Prof. Adérito Fernandes Marcos] e [http://www2.uab.pt/departamentos/DCT/detaildocente.php?doc=129 Prof.ª Elizabeth Simão Carvalho]
 
* Nos anos letivos 2013/2014 e 2014/2015: [http://www2.uab.pt/departamentos/DCT/detaildocente.php?doc=91 Prof. Adérito Fernandes Marcos] e [http://www2.uab.pt/departamentos/DCT/detaildocente.php?doc=129 Prof.ª Elizabeth Simão Carvalho]
 
* Ano Lectivo 2016/2017 [http://www2.uab.pt/departamentos/DCT/detaildocente.php?doc=129 Prof.ª Elizabeth Simão Carvalho]
 
* Ano Lectivo 2016/2017 [http://www2.uab.pt/departamentos/DCT/detaildocente.php?doc=129 Prof.ª Elizabeth Simão Carvalho]
 +
* Ano Lectivo 2019/2020 até 2021/2022 [https://www2.uab.pt/departamentos/DCT/detaildocente.php?doc=35 Prof. António Araújo]
 +
* Desde ano Lectivo 2022/2023 até hoje [https://paginapessoal.uab.pt/aaraujo Prof. António Araújo] e [https://paginapessoal.uab.pt/ppestana Prof. Pedro Pestana]
  
 
== Links úteis: ==
 
== Links úteis: ==
*[http://fly.srk.fer.hr/~unreal/theredbook/ OpenGL Programming Guide]
+
 
*[http://math.hws.edu/graphicsnotes/ Fundamentals of Computer Graphics]
+
'''Escolha do IDE - Sugestão'''
*[http://www.opengl-tutorial.org/ Tutorials for modern OpenGL (3.3+)]
+
'''Opção 1:'''
*[https://open.gl/ open.gl]
+
Abrir um plain text no notepad e faça rodar uns cubos ou umas esferas, importando o three.js a partir de um repositório ou de ficheiros locais (usando módulos). Só *depois* disso pensar num IDE.
*[http://www.arcsynthesis.org/gltut/ Learning Modern 3D Graphics Programming]
+
Quanto a web server, se não quiser lidar já com o node.js, pode também começar por usar esta extensão simples do chrome:
 +
É só dar-lhe o folder base e coloca lá a sua página:
 +
*[https://chrome.google.com/webstore/detail/web-server-for-chrome/ofhbbkphhbklhfoeikjpcbhemlocgigb?hl=en extensão simples do chrome]
 +
 
 +
'''Opção 2:'''
 +
O Visual Studio Code é muito popular  *[https://code.visualstudio.com/ Visual Studio Code]
 +
E com a extensão "Live Server" fica ainda melhor.
 +
*[https://youtu.be/DEtTa3LrFVE Tutorial three.js Visual Studio Code Setup]
 +
 
 +
 
 +
'''Repositório GitHub Three.js'''
 +
*[https://github.com/mrdoob/three.js/tree/r129 Versão r129 << Atenção confirmar na UC qual a versão em vigor para o ano letivo em causa]
 +
 
 +
 
 +
'''OpenGL e WebGL'''
 +
Recomendo ler capítulo 5 do Introduction to Computer Graphics de David J. Eck.
 +
Neste livro recomendo ainda uma breve passagem pelos capítulos dedicados ao OpenGL e WebGL.
 +
O Three.js é uma library de alto nível construída sobre a API do WebGL, que por sua vez deriva do OpenGL ES.
 +
Embora não utilizemos WebGL directamente nesta UC é sempre iluminador passar umas horas a tentar perceber - ainda que por alto - os pipelines que determinam a lógica das libraries que de facto utilizamos.
 +
No mínimo recomendo que leiam os artigos de Wikipedia do OpenGL e WebGL, e de preferência que façam uma leitura muito rápida do Eck antes de se dedicarem em pleno ao Three.js.
 +
*[https://en.wikipedia.org/wiki/Three.js Wiki Three.js]
 +
*[https://en.wikipedia.org/wiki/WebGL Wiki WebGL]
 +
*[https://en.wikipedia.org/wiki/OpenGL Wiki OpenGL]
 +
*[https://math.hws.edu/graphicsbook/index.html Introduction to Computer Graphics by David J. Eck] <--- Ver Cap 5
 +
*[https://threejs.org/manual/#en/fundamentals Tutorial Fundamentals Three.js]
 +
*[https://discoverthreejs.com/ Tutorial Livro extra: Discover Three.js]
 +
 
 +
 
 +
'''OpenGL e WebGL'''
 +
Para aprendermos three.js temos obviamente que programar pelo menos em JavaScript básico. Recomendo os seguinte recursos para esse efeito:
 +
Para referência rápida, os tutoriais W3schools. Notar que têm a vantagem de ter na mesma página os links para os tutoriais de HTML e CSS.
 +
Em alternativa, os tutoriais Mozilla são uma boa opção.
 +
Como livro, temos o Eloquent JavaScript, por Marijn Haverbeke, que é gratuito na sua versão online.
 +
Lembrem-se sempre que o nosso propósito neste curso é utilizar apenas JavaScript básico para atingir os nossos objectivos, e não fazer uma aprendizagem a fundo. Tentem por isso fazer uma aprendizagem rápida e dirigida ao objectivo em mãos.
 +
*[https://www.w3schools.com/js/default.asp W3School Javascript]
 +
*[https://eloquentjavascript.net/ Livro online: Eloquent Javascript]
 +
 
 +
 
 +
''JOGL (obsoleto)''
 +
*[http://www.opengl-tutorial.org/ Tutorials for modern OpenGL (3.3+)  <---- é um tutorial antigo sobre JOGL]
  
 
== Materiais de Apoio==
 
== Materiais de Apoio==
 +
 +
*[https://wiki.dcet.uab.pt/files/images/8/8c/Resumo_da_mat%C3%A9ria_-_21020_-_Computa%C3%A7%C3%A3o_Gr%C3%A1fica.odt Resumo da matéria do ano lectivo 2017/18]

Edição atual desde as 09h33min de 8 de outubro de 2024


Guia Informativo Oficial

Planos da Unidade Curricular (PUC):

Enunciados e Resoluções de e-Fólios,p-Fólios e Exames de anos anteriores

Ano Letivo 2023/2024

Ano Letivo 2022/2023

Ano Letivo 2021/2022

Ano Letivo 2020/2021

Ano Letivo 2019/2020:

Ano Letivo 2018/2019:

Ano Letivo 2017/2018:

Ano Letivo 2016/2017:

Ano Letivo 2015/2016:

Ano Letivo 2014/2015:

Ano Letivo 2013/2014:

Ano Letivo 2012/2013:

Ano Letivo 2011/2012:

Ano Letivo 2010/2011:

Ano Letivo 2009/2010:

Corpo Docente:

Links úteis:

Escolha do IDE - Sugestão Opção 1: Abrir um plain text no notepad e faça rodar uns cubos ou umas esferas, importando o three.js a partir de um repositório ou de ficheiros locais (usando módulos). Só *depois* disso pensar num IDE. Quanto a web server, se não quiser lidar já com o node.js, pode também começar por usar esta extensão simples do chrome: É só dar-lhe o folder base e coloca lá a sua página:

Opção 2: O Visual Studio Code é muito popular *Visual Studio Code E com a extensão "Live Server" fica ainda melhor.


Repositório GitHub Three.js


OpenGL e WebGL Recomendo ler capítulo 5 do Introduction to Computer Graphics de David J. Eck. Neste livro recomendo ainda uma breve passagem pelos capítulos dedicados ao OpenGL e WebGL. O Three.js é uma library de alto nível construída sobre a API do WebGL, que por sua vez deriva do OpenGL ES. Embora não utilizemos WebGL directamente nesta UC é sempre iluminador passar umas horas a tentar perceber - ainda que por alto - os pipelines que determinam a lógica das libraries que de facto utilizamos. No mínimo recomendo que leiam os artigos de Wikipedia do OpenGL e WebGL, e de preferência que façam uma leitura muito rápida do Eck antes de se dedicarem em pleno ao Three.js.


OpenGL e WebGL Para aprendermos three.js temos obviamente que programar pelo menos em JavaScript básico. Recomendo os seguinte recursos para esse efeito: Para referência rápida, os tutoriais W3schools. Notar que têm a vantagem de ter na mesma página os links para os tutoriais de HTML e CSS. Em alternativa, os tutoriais Mozilla são uma boa opção. Como livro, temos o Eloquent JavaScript, por Marijn Haverbeke, que é gratuito na sua versão online. Lembrem-se sempre que o nosso propósito neste curso é utilizar apenas JavaScript básico para atingir os nossos objectivos, e não fazer uma aprendizagem a fundo. Tentem por isso fazer uma aprendizagem rápida e dirigida ao objectivo em mãos.


JOGL (obsoleto)

Materiais de Apoio