Opengl
TMM: Tecnoloxia Multimedia. 2006
GRUPO DE PROCESADO DE IMAGEN Y REALIDAD VIRTUAL
ETSI Telecomunicación. Universidad de Vigo
Donde Estamos?
Generalidades
●
Gráficos Interactivos
– – – – –
Interfaces herramientas CAD Interfaces herramientas de Modelado 3D Entretenimiento Interiores etc...
Donde NO Estamos?
Generalidades
●
Imágen Fotorealista
– –Películas Post Producción RayTracing (POV Ray)
●
Técnicas
–
Arquitectura Hardware I
Generalidades
● ● ● ● ● ●
CPU RAM BUS VRAM GPU DAC
RAM
CPU
BUS (PCI, AGP, PCI Express)
Tarjeta Gráfica
Arquitectura Hardware II
Generalidades
RAM
●
Lee datos RAM Escribe VRAM a través del Bus PCI GPU lee VRAM DAC genera señal de Video
●
●
CPU
●BUS PCI/ISA/VESA LB
VRAM DualPort Memory Flicker – Retrazo Vertical PCI : 133 MB/s
VRAM
GPU
DAC
Arquitectura Hardware III
Generalidades
●
GPU accede directamente a la RAM del equipo
●
Tarjeta Gráfica tiene memoria local
●
CPU
RAM
GPU procesador complejo
BUS AGP/PCI Express
Velocidades de bus AGP x4 : 1 GB/s AGP x8: 2.1 GB/s PCIExpress (x16): 4GB/s
VRAM
GPU
DACArquitectura Hardware IV
Generalidades
●
MultiGPU
–
Permiten la conexión de varias tarjetas de video Mejora del rendimiento Dos Soluciones: ATI CrossFire y nVidia SLI
–
Arquitectura Hardware V
Generalidades
●
SLI: Scalable Link Interface
– – – –
Require 2 PCIExpress x16 2 o 4 tarjetas (QUAD SLI) Formas de trabajo:
● ●
Tarjetas idénticas conectadas por una PCBSFR: Split Frame Rendering AFR: Alternate Frame Rendering
Arquitectura Hardware IV
Generalidades
●
ATI CrossFire
– – –
Las tarjetas no tienen que ser idénticas Master Card Composition chip Modos de Funcionamiento:
● ● ● ●
Super Tiling Scissor (SFR) Alternate Frame Rendering (AFR) CrossFire SuperAA
Arquitectura Hardware V
Generalidades
●
ATI CrossFire. DiagramaMatemáticas I
Generalidades
●
Coordenadas Homogéneas
–
Coordenadas Homogéneas (x, y, z) > (x, y, z, 1) Transformación Afín x > Ax +b Matriz de Transformación A b 0 1
Permiten representar transformaciones afines como operaciones con matrices Transformaciones Afines: Transformación lineal + Traslación
●
–
Rotación, Escalado, Proyección...
–Transformar un vector en coordenadas homogéneas = = Multiplicarlo por la matriz Composición de Transformaciones = = Producto de Matrices
–
Matemáticas II
Generalidades
Quaternion v = a + b∙i + c∙j + d∙k = a + u Propiedades i*i = j*j = k*k = 1 ij=k, jk=i, ki=j ji=k, kj=i, ik=j
●
Quaternions
–
Se pueden ver como una generalización de los números complejos Representan rotaciones respecto a un eje Utilizados para realizar rotaciones suaves:
●
– –
Spherical Linear Interpolation (SLERP)
Introduccion
OpenGL
Notas Desarrollado por SGI en 1992 Soportado en la mayoria de plataformas existentes en la actualidad
● ●
API de bajo nivel (primitivas gráficas sencillas) Utilidades de mas alto nivel GLU, GLUT
–
Utility and Utility Toolkit Se requiere un interfaz con el sistema de ventanas (glx/wglx, SDL, glut,...) Microsoft DirectX (Direct3D)
●
No proporciona Widgets/Ventanas
–
●
Alternativa:
–
Introduccion
OpenGL
●
La especificacion la gestiona el Architecture Review Board (ARB) Existen varias extensiones a la especificacion
–
●
ARB, NV, HP, SGI, etc... Libro Rojo (Redbook): OpenGL Programming Guide Libro Azul (BlueBook): OpenGL Reference ManualSitio Oficial www.opengl.org
●
Dos libros para empezar:
–
–
Aplicaciones Graficas
OpenGL
●
Estructura general de una aplicación Gráfica
– –
INICIALIZACIÓN BUCLE INFINITO PRINCIPAL
● ● ● ●
Lee Eventos Procesa Eventos Render Frame Duerme Proceso
Matrices
OpenGL. Conceptos Generales
●
Trabajaremos con coordenadas homogéneas y matrices de transformación....
Regístrate para leer el documento completo.