1 of 21

CC3501�Introducción

Roberto Matta, Comment une conscience se fait univers (peut être), 1992

2 of 21

Nuestro curso

Propósito: introducir a les estudiantes en la disciplina de computación gráfica y modelamiento.

Al término del curso, se espera que les estudiantes modelen, solucionen y visualicen computacionalmente problemas aplicados que involucren datos, geometría y escenas complejas en 2 y 3 dimensiones.

3 of 21

Objetivo

Simular un mundo usando computadoras

  • Usualmente es el mundo real, pero puede ser otro mundo, con otras reglas
  • ¿Multiverso?¿Realidad virtual?

Especial énfasis en modelos físicos para añadir realismo

  • El realismo no es necesariamente fotográfico, también puede ser pictográfico o físico

Algunos temas:

  • Geometría 3D: su definición, visualización y organización en el espacio
  • Iluminación
  • Cinemática
  • Dinámica de fluidos
  • Interacción

4 of 21

¿Qué esperan de este curso? 👀

5 of 21

Definición

Una definición simple y directa es “generación de imágenes desde escenas computacionales”��Donde “escena computacional” es una representación geométrica 2D o 3D.

Y el proceso de “generación de imagen” se llama rendering. Existen múltiples paradigmas de rendering.

En este curso nos enfocaremos en el rendering en tiempo real.

Render

Escena

Fuente: Computer Graphics, Wikipedia

6 of 21

Videojuegos

Probablemente los videojuegos son la aplicación de rendering en tiempo real más grande en términos de personas que la utilizan y también en términos de mercado.

7 of 21

En Chile hay empresas que desarrollan videojuegos, principalmente para el mercado internacional.

8 of 21

Realismo en videojuegos

Los juegos actuales cuentan con motores de rendering y de simulación avanzados.

Parte de la computación gráfica es hacernos creer que son totalmente realistas.

Sin embargo, mucho del trabajo en computación gráfica no es realizar la simulación como tal, sino como aparentar el realismo a través de modelos más simples o de atajos que nos permitan alcanzar un buen desempeño en tiempo real.

9 of 21

Estilo

En este juego no se busca el realismo visual, sino un estilo gráfico fiel a la estética del Ukyo-e japonés.

10 of 21

Animación

La industria cinematográfica genera en promedio 800 millones de dólares por película.

Además de las películas, mucha animación que era tradicional se ha convertido a 3D pero imitando el estilo 2D.

11 of 21

Toy Story

La primera película animada generada por computador en 1995.

Ustedes no habían nacido para ese entonces :o

¡Probablemente sus computadoras son más potentes que las utilizadas para trabajar en la película!

12 of 21

Rendering No Foto-realista

Este render de una tetera aparenta ser de dibujo animado.

¿Cómo lo hace? Utilizando la técnica llamada cel-shading que se basa en una discretización de los vectores normales de una superficie, y del producto punto entre el vector de la cámara de la escena y las normales de la superficie que se está graficando.

Demo:�https://arnauddroxler.github.io/WebGL-CelShading/

13 of 21

Medicina

14 of 21

CAD

Los sistemas de CAD (Diseño Asistido por Computadora) son utilizados para fabricar piezas críticas, diseñar infraestructura, vehículos, arquitectura, etc.

15 of 21

SIGGRAPH 2023

Special Interest Group in Computer Graphics es una conferencia anual que reúne los avances más importantes en gráfica y simulación.

16 of 21

SIGGRAPH 2023

La conferencia más importante del área. Se hace todos los años.

17 of 21

Simulación

IoTwins es un proyecto donde el peso del proyecto estaba en la interacción de los agentes de la simulación más que en el rendering, a pesar de que trabajamos con la arquitectura del estadio del FC Barcelona.

18 of 21

Visualización Científica

Esta área de aplicación busca representar fielmente el comportamiento de un fenómeno. Lo realista es la abstracción.

19 of 21

Visualización Interactiva

Otra área de aplicación es la de visualización de datos urbanos. Afortunadamente estos datos son descargables de manera abierta, por lo que podemos experimentar :)

Un simulador y visualizador de clima y contaminación puede usar estos datos como insumo.

https://observablehq.com/@dmylian/displaying-3d-buildings-using-osm-data-and-deck-gl-viz-engin

Otros demos: https://deck.gl/examples/mapbox/

20 of 21

¿Cómo hacemos todo esto?

Utilizaremos principalmente el lenguaje de programación Python y la biblioteca pyglet.

Algunas personas ya conocen Godot Engine. Lo pueden usar en la tarea 3.

En términos conceptuales, utilizaremos mucha álgebra con matrices y ecuaciones diferenciales.

El repositorio oficial del curso es:

https://github.com/zorzalerrante/cc3501-computer-graphics

21 of 21

Próxima clase: �Python para CG

¿Dudas? ¿Comentarios? ¿Ideas?