¿Qué es un Engine para videojuegos?
Unreal Technology (c) Epic Games

Unreal Technology (c) Epic Games
Cualquier persona que quiera dedicarse seriamente a trabajar dentro de la industria de los videojuegos debe de conocer la respuesta a esta pregunta y además conocer una lista de ejemplos de este tipo de programas. Para aquellos que se quieran especializar en la programación deben al menos haber utilizado algún Engine previo a aspirar a un puesto o inclusive una entrevista de trabajo en alguna empresa de la industria. Si bien, no es algo que se vea en las clásicas clases de programación de sistemas dentro de la universidad o en los cursos o talleres de creación de contenidos multimedia, el “Game Engine” es un elemento que diferencia el desarrollo de videojuegos del desarrollo de software en general.
Un Engine para videojuegos, también conocido como “Game middleware”, es un sistema creado exclusivamente para el desarrollo de videojuegos; es una herramienta creada por programadores y para programadores; para facilitar y agilizar el proceso de la creación de un videojuego. Este software provee toda la funcionalidad que se necesita para renderear gráficos, detectar colisiones, simular física, administrar la comunicación con periféricos, manipular sonido, crear inteligencia artificial, manejar memoria, etc., sin que el programador tenga que comenzar desde cero cada vez que empieza un desarrollo.
Si lo traemos al mundo cotidiano, un Engine de videojuegos es equivalente a un procesador de textos; dentro de este último, como usuarios, no tenemos que preocuparnos como es que cada que oprimo una tecla esta se transforma en un carácter impreso en pantalla. De igual forma un Engine facilita que un programador pueda agregar elementos a un escenario o nivel, sin preocuparse en cómo es que la computadora renderea esos elementos.

Read Dead Redemption desarrollado con RAGE
Los Engines han evolucionado a lo largo de la historia de los videojuegos, siempre respondiendo a los requerimientos tecnológicos de nuevas mega producciones o a la usabilidad que se requiere para satisfacer a los gamers. Dos clasificaciones importantes se da entre uso de gráficos 2D y 3D ya que el procesamiento de imágenes y el tipo de animación de cada uno son muy distintas, sumando también otros muchos factores que hacen a los primeros usualmente más ligeros.
También existen Engines clasificados por la consola con la cual son compatibles, debido a que cada una de ellas utiliza un sistema operativo diferente y no existe un estándar. Entre las muchas clasificaciones de Engines se encuentra la más “importante”, con Costo o Gratuitos. Esta división se ha dado por la evolución que han tenido los modelos de negocio dentro de la industria.
Hace algunos años nadie regalaba mini juegos dentro de dispositivos móviles o inclusive consolas, o no se cobraba solo por desbloquear algún elemento de juego. Hoy, los Engines han adoptado algunas de estas prácticas. Finalmente existen Engines disponibles al público y otros cuyas casas desarrolladoras no muestran a la luz ya que estas herramientas se convierten en el almacén del conocimiento de generaciones de desarrolladores que han adaptado y re-adaptado funcionalidades.

Cry Engine 3
Dentro de los Engines más sobresalientes se encuentran: RAGE (Rock Advance Game Engine) con el que se creó el título de Read Dead Redemption y se rumorea que L.A Noire; Cry Engine por Crytek con el que se crearon Far Cry, Crysis y Crysis 2; Naughty Dog Engine herramienta utilizada para crear Uncharted: Drake’s Fortune y Uncaherted 2: Among Thieves; Unreal Engine de Epic Games con el que se crearon: Gears of War, Mass Effect, BioShock, Unreal Tournament entre muchos otros. La lista puede continuar pero sería muy extensa y con alguna pequeña búsqueda en Internet podrán encontrar información muy valiosa.
Los Engines son herramientas que los programadores han creado para hacer del desarrollo de videojuegos algo más ágil y sencillo, sin quitarle el alto nivel de especialización necesario. Los Engines seguirán evolucionando y adoptarán nuevas tecnologías, como el uso de gráficos en 3D real, perfeccionamiento de física, generación de partículas, inclusive nuevos métodos y protocolos de comunicación.
Sé que hace falta algo muy importante a este post y se qué lo están pensando, ¿Qué Engines están a mi alcance y puedo comenzar a utilizar ya? En el próximo post de programación tocaremos una lista de Engines gratuitos y de bajo costo que les podrán ayudar a entender un poco más de su uso y aplicación; y con los cuales podrán crear sus propias producciones. Pero si se les queman las manitas de la ganas de intentar crear algo nuevo no los dejaré solo con eso. El Unreal Engine está disponible para su descarga, así como lo oyen. Uno de los Engines más poderosos de la industria está ahí a su alcance para su uso. Diviértanse con el y nos vemos la próxima semana…
Más artículos de la serie:
- Quiero ser un Diseñador de Juegos
- ¿Cuánto gana un desarrollador de videojuegos? (Parte II)
- ¿Cuánto gana un desarrollador de videojuegos? (Parte I)
- Audio para Videojuegos: Introducción
- Arte en Videojuegos I: Introducción
- Programación para Videojuegos: Introducción
- Antes de Empezar – Diseño de Juego
- Talento en Desarrollo
- Desarrollo de videojuegos en Niubie, cortesía de Alebrije Estudios
Este podría ser el control final de la Wii U
Guaternius: Nintendo dominó, los primeros minut...
El Resumen de la Semana: el lanzamiento de Diab...
Medal of Honor: Warfighter muestra su nuevo tra...
Frank O'Connor ofrece más detalles de Halo 4
Metal Gear Rising: Revengeance estrena nuevo video
Regístrate al beta de Dust 514 y cruza los dedos
17 Comentarios
¿Qué es un Engine para videojuegos?
Muchachos no es tan dificil!
ResponderSi bien hay muchos engines gratuitos, hagan lo sgte:
1) busquen en wikipedia o en google por ejemplo a ver cuales son los mas populares, y que juegos se hicieron con ellos, para tener una minima referencia y descubrir alguno de paso
2) presten atencion a los juegos q usen engines gratuitos que sean TECNICAMENTE mas PARECIDOS a lo que quieren hacer ustedes; NO SE MAREEN con los que ofrezcan mil cosas q no tenian pensado usar pq se van a complicar de mas.
3) entren a las paginas oficiales a informarse de las caracteristicas y mirar y descargas los videos demostrativos, demos y etc. y pasen por los foros si tienen.
4) busquen otros foros no oficiales sobre esos engines q contengan threads tecnicos sobre el desarrollo
5) entren en los foros de los juegos, q contengan informacion tecnica del desarrollo
6) olvidense de pelear contra engines mal documentados pq van a perder tiempo y van a ganar en frustracion.
y 7) ingenienselas!!!
Cualquier persona que quiera dedicarse seriamente a trabajar dentro de la industria de los videojuegos no lee este blog para instruirse.
ResponderEn mi blog http://lordpakus.blogspot.com/ explico como crear un game engine... quien le pueda echar un ojo para decirme los fallos que tengo o las propuestas que quiera hacer, me haria un gran favor. Gracias a todos.
ResponderHola que tal amigos de niubie. Espero se encuentren bien. Me fascino este post mas que nada por que recientemente creció en mi la inquietud de dejar de jugar videojuegos y empezar a hacerlos. Me empece a enfocar en las bases de librerías OpenGL pero luego de un tiempo uno se da cuenta que a fin de cuentas es una base, fue entonces que me enfoque a un motor gratuito y pues ya pude probar las mieles de usar un motor. Altamente recomendable para empezar a hacer cosas y mas importante aun no perder el animo. Saludos
ResponderSi bien es cierto que los Engines "facilitan" mucho el desarrollo de un juego, en terminos de que no tienes que crear el renderizado y todos los aspectos de un juego desde cero, tampoco es que con pocas lineas de código, oh magia!! Ya esta lista el juego. Asi que es necesario que la gente se inicia en esto no se entusiasme demasiado haciendose falsas expectativas.
ResponderEn particular, yo traté de utilizar el Engine Axiom, y me costó mucho entenderlo como funciona. Si bien está basado en Ogre (otro Engine), me costó mucho entender los objetos que maneja, los nodos de una escena, como renderizar, etc. De modo que la documentación es fundamental. En mi casi, senti que la documentación a pesar de ser abundante, no estaba pensada para novatos o quienes quisieran iniciarse (punto en contra en mi opinion).
Si pueden coloquen engines para iphone y android
ResponderPor artículos como estos es que me fascina Niubie, sigan así.
ResponderSaludos.
@Daniel
ResponderAxiom3D es un engine gráfico como ogre, irrlicht, crystal space, etc. no un game engine per se como lo son los que mencionan en el articulo. La diferencia está en que un game engine no solo se preocupa de facilitar el desarrollo de los gráficos, sino que el manejo de otro tipo de media como sonidos y videos como también el desarrollo de niveles, mapas e incluso manejo de inteligencia artificial. Funciona como una caja negra en que generalmente no te metes a ver el código, sino que simplemente desarrollas sobre el el los niveles, personajes, reglas, etc. En su contraparte un engine gráfico viene enfocado en que interactues a través de las interfaces de software para desarrollar un juego, es un poco más a bajo nivel y con mucho más trabajo de programación.
Bien interesante el artículo para las personas que están iniciandose en el mundo del desarrollo.
@Daniel Es muy cierto lo que dices, facilitan las cosas mas no hacen magia, siempre se necesita tener la mayor formación y práctica posible. En los próximos post daremos más información de Engines que están más al alcance de gente que no tiene experiencia en programación.
Responder@Manu: Gracias, así seguiremos
felicidades por el articulo y sigan asi, es muy interesante leer estos articulos, ami me interesa harto la parte de programacion.
Responder"Cualquier persona que quiera dedicarse seriamente a trabajar dentro de la industria de los videojuegos debe de conocer la respuesta a esta pregunta y además conocer una lista de ejemplos de este tipo de programas."
ResponderFaltó poner: "Y así sorprender a sus amigos!" <_<
No es lo q hubiera usado para referirme a cualquiera q se quiera dedicar seriamente.
el qe más me gusta de todos es el Source, a pesar de que es antiguo(lo digo por la calidad de los graficos) es el más real para mi...aunque weno me falta probar afondo el Cry qe parece mui bueno tbn...
Respondermui bueno el articulo, pero pudieron haber puesto los engines sin tener qe hacer esperar ¬¬ xD
Justo estaba por preguntar como es Source. ¿Qué tal es comparado al UE3?
Responder@AirieFenix no me gusta el unreal, locaciones mui cerradas... en el source puedes estar en boske..puedes interactuar con piedras, troncos, casi todo, es como si estuvieras alli, parece mas real...quizas en juegos que utilices el UE3 no necesites de esta cualidad..pero en mi opinion es mejor
ResponderQué gran artículo realmente. Me ha quedado claro la película, desde el punto de vista conceptual. Esperaré con ansias el siguiente artículo donde recomendarán engines para quienes apenas empezamos en este mundo, puesto que buscando por mi cuenta, me he encontrado con tropecientos engines y pues no sé por donde empezar, es algo frustrante. Me muero de ganas por echarles una mano.
Responder¿Y que me dicen del Unity? ¿alguien sabe que tal es?
Responder@Cross,, eso lo veremos en el siguiente post de programación...
ResponderDeja tu Comentario