Motores graf

40
Motores Gráficos Informática Gráfica Rubén Talón Argente

Transcript of Motores graf

Page 1: Motores graf

Motores Gráficos

Informática Gráfica

Rubén Talón Argente

Page 2: Motores graf

I n t r o d u c c i ó n

1 – ¿Qué es un Motor Gráfico?

2 – Historia de los Motores Gráficos

3 – Tipos de Motores Gráficos

4 – Conclusión, Tendencias futuras

Page 3: Motores graf

¿Qué es un Motor Gráfico? Definición

El motor gráfico es la parte de un programa que controla, gestiona y actualiza los gráficos 3D en tiempo real.

Entre los engines más utilizados destacan el del Quake III y el de Unreal Tournament.

Se puede utilizar un mismo motor gráfico para desarrollar diferentes juegos.

Es una de las partes más importantes a la hora de desarrollar juegos 3D.

Page 4: Motores graf

¿Qué es un Motor Gráfico? Definición

El Software que se crea está más avanzado que el Hardware que lo puede soportar.

Los programadores tienen que crear objetos con menos polígonos sin perder detalle y sin perder potencia.

Page 5: Motores graf

¿Qué es un Motor Gráfico? ¿Cómo funciona?

Enviar a la CPU los datos que necesita para el próximo frame.

En un juego de coches tendríamos en cuenta: formulas de velocidad, la fricción, vectores, sistema de movimiento y un largo etcétera.

En un juego donde disparas, el motor crea un vector de recorrido de la bala y sabe donde impactará ( enemigo, pared, etc. ).

Los engines facilitan la programación de juegos y aplicaciones de diseño sin necesidad de enfrentarse desde cero al lenguaje de programación utilizado en cuestión.

Page 6: Motores graf

Historia de los Motores Gráficos Inicio

Page 7: Motores graf

Historia de los Motores Gráficos Inicio

Primeros intentos en el desarrollo de videojuegos en 3D

La SNES ya contaba con chips SUPER FX para crear mundos en 3D

Sin embargo, la mayoría de los supuestos juegos 3D estaban basados en SPRITES y los que podrían ser realmente 3D no se podían considerar que tuviesen un motor gráfico exclusivo.

Page 8: Motores graf

Historia de los Motores Gráficos Inicio

Alone in the Dark baso su peculiar motor gráfico en crear los personajes, objetos y enemigos en 3D.

Basado en polígonos y en un sistema de cámaras, se puede conseguir un entorno 3D donde el jugador puede controlar al personaje en un mundo que no es 3D, simplemente sin imágenes.

Page 9: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

Id Software comienza el desarrollo de revolucionarios motores gráficos.

John Carmak es considerado el mejor programador de engines.

Page 10: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

Aparece el primer juego 3D, Wolfenstein 3D.

Ángulos de 90º, altura de paredes fija y elementos en 2D.

Page 11: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

Aparece el DOOM con su motor mejorado.

Nuevos escenarios como escaleras, ascensores, ventanas…

Page 12: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

Juegos como HERETIC, HEXEN basados en el engine del DOOM mejorado.

También surgieron otros juegos apoyándose de la misma base del DOOM.

Page 13: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

Nueva revolución, aparece el QUAKE.

Prácticamente todo es en 3D y no hay limitaciones de ángulos, paredes o suelos.

Page 14: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

Aparece DUKE NUKEM 3D compitiendo con QUAKE y DOOM

Page 15: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

QUAKE II con nuevo motor usado por otros juegos populares como Soldier of fortune y Half-Life.

Pionero en la implementación de aceleración de gráficos por Hardware.

Page 16: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

Competidor del QUAKE II, UNREAL de mano de EPIC MEGAGAMES.

Es el segundo engine que más licencias ha vendido para ser utilizado en otros juegos.

Page 17: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

El contraataque de Id Software es QUAKE III. Optimización máxima.

Este juego llega a usarse para comprobar el rendimiento de tarjetas gráficas.

Page 18: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

Epic Megagames lanza el Unreal Tournament 2003 y el Unreal 2.

Con las altas velocidades de Internet están basados en juegos en red.

Page 19: Motores graf

Historia de los Motores Gráficos Línea del Tiempo

2006

1991

1992

1993

1994

1995

1996

1997

1998

1999

2003

2005

Nueva obra maestra de Id, Software, DOOM III.

Iluminación fotorealista y sensación de terror.

Page 20: Motores graf

Tipos de Motores Gráficos Lista de engines

Crystal Space

Fly3D

Unreal

Torque V12

Quake 2

V3X

Irrlicht

JPCT

Apocalyx

Blimey 2

Page 21: Motores graf

Tipos de Motores Gráficos Diferentes Técnicas usadas

Renderizado

Proceso de conversión de dibujo 3D con texturas y luz hecho por la computadora o la consola

El procesador de una computadora o una consola entiende las gráficas de los juegos de 3D como coordenadas en un plano cartesiano de tres dimensiones

Page 22: Motores graf

Tipos de Motores Gráficos Diferentes Técnicas usadas

Árboles BSP

Es una estructura de datos usados para organizar objetos dentro de un espacio

Tiene aplicaciones en la remoción de áreas ocultas y en el trazado de rayos

Page 23: Motores graf

Tipos de Motores Gráficos Diferentes Técnicas usadas

Radiosidad

Técnica para el cálculo de la iluminación global de un ambiente cerrado

La idea en que se basa esta técnica es buscar el equilibrio de la energía que es emitida por los objetos emisores de luz y la energía que es absorbida por los objetos en el ambiente.

Page 24: Motores graf

Tipos de Motores Gráficos Diferentes Técnicas usadas

MipMapping

Técnica de manejo de texturas que cambia la textura de un polígono en un objeto 3D dentro de un juego según el ángulo de vista del jugador ó las condiciones del juego.

Conforme nos acercamos a un objeto, éste gana calidad. De esta forma objetos alejados tendran un nivel de resolucion bajo y objetos cercanos alto. Conseguimos mayor rendimiento.

Page 25: Motores graf

Tipos de Motores Gráficos Diferentes Técnicas usadas

Phong y Gourand

Gourand se basa en que los polígonos aproximan una superficie curva.Se calculan las intensidades de los vértices.

Pong interpola las normales en lugar de las intensidades

Page 26: Motores graf

Tipos de Motores Gráficos Diferentes Técnicas usadas

Bump-Mapping

Se utiliza para agregar el detalle a una imagen sin aumentar el número de polígonos.

Nos basamos en algoritmos que captan la textura inicial de la imagen y la convierten en otra.

Crea pequeños Bump mapping en la superficie del objeto para darle texturas sin cambiar la superficie del objeto.

Page 27: Motores graf

Tipos de Motores Gráficos Diferentes Técnicas usadas

Lightmas

Esta técnica se empezó a usar en el 1996, y la crearon la gente de Id Software en el Quake.

Los lightmaps (mapas de luz) simplemente consisten en añadir una segunda textura a todas y cada una de las caras existentes en una escena 3D.

Es un buen método para ahorrarnos el uso de la Radiosidad.

Page 28: Motores graf

Tipos de Motores Gráficos Crystal Space

Características

Renderizado en Portales y SectoresÁrboles BSPZbufferingRadiosidadDetección de colisiones Lightmaps

BumpmappingPhong Gouraud Sprites 2D y 3DSuperficies de BezierMipmapping

Plataformas

Otros

Page 29: Motores graf

Tipos de Motores Gráficos Crystal Space

Page 30: Motores graf

Tipos de Motores Gráficos Fly3D

Características

Renderizado en Portales y SectoresÁrboles BSP y PVSSistema de PluginsA* optimizadoDetección de colisiones Lightmapsmeshes animadas

Plataformas

Otros

Page 31: Motores graf

Tipos de Motores Gráficos Fly3D

Page 32: Motores graf

Tipos de Motores Gráficos Unreal

Características

Renderizado en Portales y SectoresÁrboles BSP, PVS y LODSistema de PluginsDetección de colisiones Lightmapsmeshes animadasRadiosidad

Plataformas

Otros

BumpmappingPhong y GouraudUnrealScript RaytracingEscalabilidadMipmapping enveloped lighting

Page 33: Motores graf

Tipos de Motores Gráficos Genesis3D

Características

Renderizado en Portales.Árboles BSP y LODSistema de PluginsDetección de colisionesRadiosidad luces multicolores y dinámicas

Plataformas

Otros

Page 34: Motores graf

Tipos de Motores Gráficos Torque V12

Características

Renderizado en Portales y Sectores.Meshes LODDetección de colisionesRadiosidad Texture MappingMidMappingLightmaps

Plataformas

Otros

Page 35: Motores graf

Tipos de Motores Gráficos Quake2

Características

Renderizado en Portales y SectoresÁrboles BSPZbufferingRadiosidadDetección de colisiones Lightmaps

BumpmappingPhong y Gouraud Mipmapping Dll’s

Plataformas

Otros

Page 36: Motores graf

Tipos de Motores Gráficos Irrlicht

Características

Plataformas

Otros

Motor 3D multiplataforma de alto rendimiento de código abierto para crear aplicaciones en tiempo real 3D. Sus características principales son ser fácil de utilizar, extremadamente rápido extensible y libre de fallos.

Multiplataforma

Page 37: Motores graf

Tipos de Motores Gráficos JPCT

Características

Plataformas

Otros

Es un motor gráfico 3D con API para Java. Requiere Java 1.1 o superior y puede ser usado para hacer aplicaciones y applets. Soporta software de renderizado así como hardware de renderizado vía OpenGL( Java 1.4).

Multiplataforma W-buffer de 32 bits

Multiplataforma

Page 38: Motores graf

Tipos de Motores Gráficos Apocalyx

Características

Plataformas

Otros

Sencillo engine escrito en OpenGL, con algunas características interesantes, como son el interface de scripting LUA, simulación del agua, de ropa…

Page 39: Motores graf

Conclusión Tendencias Futuras

Actualmente, todos los motores gráficos que existen utilizan las mismas técnicas (radiosidad, mapping, …), sólo que con mayor potencia.

La evolución en este tema practicamente surgio entre el 1991-2000, 10 años creando nuevos motores ( tanto basandose en otros o creando otros nuevos ).

Hoy en dia, aunque se siguen desarrollando desde cero nuevos motores gráficos, muchas empresas compran el código de engines ya desarrollados, los adaptan a los juegos de ahora ( aumento de poligonos, más efectos, sonido 3D…)

Page 40: Motores graf

Conclusión Tendencias Futuras

Blimey 2 es uno de los motores gráficos que utilizará la PlayStation 3, la Xbox 360 e incluso la PSP.

Actualización de Blimey ( MotoGP, Moto GP2… ) con una mayor potencia, efectos sonoros mejorados, librerias optimizadas para las plataformas que lo soportan, etc.