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
¿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.
¿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.
¿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.
Historia de los Motores Gráficos
Inicio
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.
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.
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.
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.
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…
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.
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.
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
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.
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.
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.
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.
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.
Tipos de Motores Gráficos
Lista de engines
Crystal Space
Fly3D
Unreal
Torque V12
Quake 2
V3X
Irrlicht
JPCT
Apocalyx
Blimey 2
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
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
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.
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.
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
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.
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.
Tipos de Motores Gráficos
Crystal Space
Características
Renderizado en Portales y Sectores
Árboles BSP
Zbuffering
Radiosidad
Detección de colisiones
Lightmaps
Bumpmapping
Phong
Gouraud
Sprites 2D y 3D
Superficies de Bezier
Mipmapping
Plataformas
Otros
Tipos de Motores Gráficos
Crystal Space
Tipos de Motores Gráficos
Fly3D
Características
Renderizado en Portales y Sectores
Árboles BSP y PVS
Sistema de Plugins
A* optimizado
Detección de colisiones
Lightmaps
meshes animadas
Plataformas
Otros
Tipos de Motores Gráficos
Fly3D
Tipos de Motores Gráficos
Unreal
Características
Renderizado en Portales y Sectores
Árboles BSP, PVS y LOD
Sistema de Plugins
Detección de colisiones
Lightmaps
meshes animadas
Radiosidad
Plataformas
Otros
Bumpmapping
Phong y Gouraud
UnrealScript
Raytracing
Escalabilidad
Mipmapping
enveloped lighting
Tipos de Motores Gráficos
Genesis3D
Características
Renderizado en Portales.
Árboles BSP y LOD
Sistema de Plugins
Detección de colisiones
Radiosidad
luces multicolores y dinámicas
Plataformas
Otros
Tipos de Motores Gráficos
Torque V12
Características
Renderizado en Portales y Sectores.
Meshes LOD
Detección de colisiones
Radiosidad
Texture Mapping
MidMapping
Lightmaps
Plataformas
Otros
Tipos de Motores Gráficos
Quake2
Características
Renderizado en Portales y Sectores
Árboles BSP
Zbuffering
Radiosidad
Detección de colisiones
Lightmaps
Bumpmapping
Phong y Gouraud
Mipmapping
Dll’s
Plataformas
Otros
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
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
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…
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…)
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.