18
3D Game Programming Fundamentos

Fundamentos. Abstracción Matemática Rendering Pre-rendering Real-time rendering

Embed Size (px)

Citation preview

Page 1: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

3D Game Programming

Fundamentos

Page 2: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

¿Qué es un Modelo 3D?

Abstracción Matemática

Rendering Pre-rendering Real-time rendering

Page 3: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Sistemas de Coordenadas

Sistema de coordenadas cartesianas

Necesidad de múltiples sistemas de coordenadas

Page 4: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Sistemas de Coordenadas

Tipos Sentido relativo de los ejes

De mano derechaDe mano izquierda

Page 5: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Sistemas de Coordenadas

Espacio de Objeto (Object Space) Espacio de Mundo (World Space)

Page 6: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Figuras 3D

Vértices, segmentos y polígonos Triángulos y mallas (Mesh) Caras

Face y backface

Page 7: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Vistas y Cámaras

Cámara Posición, dirección Up-vector

Viewport View frustum

Page 8: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Display de un Modelo 3D

Coordenadas locales y globales Transformación y proyección

Page 9: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Transformaciones

Traslación, rotación y escala Transformaciones afines (Affine

Transform)

Page 10: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Proyecciones

Proyección ortogonal o paralela

Page 11: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Proyecciones

Proyección en perspectiva

Page 12: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Pipeline Gráfico

Lógica de Aplicación

Geometría Rastering

Rendering

Page 13: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Render Pipeline

Cálculos Geométricos Transformaciones Selección de objetos visibles (Frustum

culling) Iluminación por vértice (Vertex shading) Proyección Backface culling Recorte (Clipping)

Page 14: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Render Pipeline

Rastering Ocultamiento por buffer de profundidad

(Z-Buffer occlusion) Mapeo de texturas (Texturing) Iluminación por píxel (Pixel shading) Frame buffer

Page 15: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Game Time y FPS

Game Time Frames FPS Independencia entre Game Time y

FPS

Page 16: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Iluminación

Ambiental Difusa Especular

Page 17: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Luz puntual

Fuentes de Luz

Luz ambiente Luz puntual (Point light) Luz direccional Spot light

Spot light

Page 18: Fundamentos.  Abstracción Matemática  Rendering  Pre-rendering  Real-time rendering

Texturas