motores de videojuegos -...

28
Motores de Videojuegos Nicolas Gonz´ alez Soto Universidad Cat´ olica “Nuestra Se˜ nora de la Asunci´ on”, Facultad de Ciencias y Tecnolog´ ıa, Asunci´ on, Paraguay. [email protected] www.universidadcatolica.edu.py Resumen Los motores de videojuegos o ’game engines ’ como son tam- bi´ en conocidos, son herramientas que facilitan el desarrollo de los video- juegos en s´ ı. En este documento se explicar´ a el origen y la historia de los motores, as´ ı como las opciones disponibles hoy en d´ ıa y su situaci´ on actual para grandes empresas y estudios independientes. Keywords: Motores gr´ aficos, videojuegos, desarrollo, herramientas, AAA, indie. 1. Introducci´ on Hoy en dia los juegos pueden llegar a ser muy complejos. Anteriormente, los juegos se escrib´ ıan desde cero. Cada juego era escrito para una plataforma es- pec´ ıfica, es decir, el c´ odigo variaba entre consolas y PC por ejemplo. Con el paso de del tiempo, los juegos se volvieron m´ as complejos y con mas funcionalidades. Los juegos pasaron de blanco y negro a mostrar muchos colores en pantalla, de juego local con amigos a partidas en internet con extra˜ nos, niveles simples a jue- gos de mundo abierto con eventos ocurriendo en cada momento. Con el paso de la tecnolog´ ıa, el c´ odigo que se escrib´ ıa para una plataforma deb´ ıa ser descartado. Los videojuegos resultaban muy caros de desarrollarse. Con el boom de los videojuegos en los a˜ nos ’80, las compa˜ ıas empezaron a desarrollar sus propios motores para su uso interno y poder de esta manera, reutilizar c´ odigo desarro- llado previamente. Sin embargo, el uso de motores de terceros no se populariz´ o hasta la ´ epoca de los gr´ aficos 3D en los ’90. Hoy en d´ ıa, la mayor´ ıa de los juegos se desarrollan con estas herramientas ya que aparte de facilitar el desarrollo, se puede abaratar los costos, apuntar a juegos multi plataformas sin mucho esfuerzo e incluso, abre las puertas para que peque˜ nos equipos puedan surgir y brindar sus ideas al mercado.

Upload: hoanghanh

Post on 26-Dec-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos

Nicolas Gonzalez Soto

Universidad Catolica “Nuestra Senora de la Asuncion”,Facultad de Ciencias y Tecnologıa,

Asuncion, [email protected]

www.universidadcatolica.edu.py

Resumen Los motores de videojuegos o ’game engines’ como son tam-bien conocidos, son herramientas que facilitan el desarrollo de los video-juegos en sı. En este documento se explicara el origen y la historia delos motores, ası como las opciones disponibles hoy en dıa y su situacionactual para grandes empresas y estudios independientes.

Keywords: Motores graficos, videojuegos, desarrollo, herramientas, AAA,indie.

1. Introduccion

Hoy en dia los juegos pueden llegar a ser muy complejos. Anteriormente, losjuegos se escribıan desde cero. Cada juego era escrito para una plataforma es-pecıfica, es decir, el codigo variaba entre consolas y PC por ejemplo. Con el pasode del tiempo, los juegos se volvieron mas complejos y con mas funcionalidades.Los juegos pasaron de blanco y negro a mostrar muchos colores en pantalla, dejuego local con amigos a partidas en internet con extranos, niveles simples a jue-gos de mundo abierto con eventos ocurriendo en cada momento. Con el paso dela tecnologıa, el codigo que se escribıa para una plataforma debıa ser descartado.

Los videojuegos resultaban muy caros de desarrollarse. Con el boom de losvideojuegos en los anos ’80, las companıas empezaron a desarrollar sus propiosmotores para su uso interno y poder de esta manera, reutilizar codigo desarro-llado previamente. Sin embargo, el uso de motores de terceros no se popularizohasta la epoca de los graficos 3D en los ’90.

Hoy en dıa, la mayorıa de los juegos se desarrollan con estas herramientasya que aparte de facilitar el desarrollo, se puede abaratar los costos, apuntar ajuegos multi plataformas sin mucho esfuerzo e incluso, abre las puertas para quepequenos equipos puedan surgir y brindar sus ideas al mercado.

Page 2: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

2 Motores de Videojuegos

2. Conceptos

2.1. ¿Que son los motores de videojuegos?

Los motores de juego son herramientas y/o entornos de desarrollo para fa-cilitar la creacion de videojuegos. Estos proveen funcionalidades comunes parael desarrollo como un motor de renderizado, ya sea en 2D o 3D, un motor quesimula las leyes de la fısica, deteccion de colisiones, manejo de sonido, scriptingo algoritmos, inteligencia artificial, funcionalidades de red, manejo de memoria,soporte para localizacion internacional, soporte para cinematicas entre otros. Es-to permite que los desarrolladores, los cuales incluyen a artistas, disenadores yotros programadores, puedan concentrarse en los detalles que hacen que su juegosea unico y distinto [19].

Figura 1. Entorno de desarrollo del motor Unity.

3. Historia

Como se dijo brevemente en la introduccion, los motores de juego nacieronpor la necesidad de facilitar el desarrollo de juegos y abaratar costos. Aunqueel uso de motores no se popularizo hasta los anos 90, incluso, el termino no seutilizaba hasta esta epoca. Antes de esto, existıan varios “kits de creacion devideojuegos” que su finalidad era basicamente la misma que los motores de jue-gos. Entre ellos podemos mencionar Pinball Construction Set (1983), ASCII’sWar Game Construction Kit (1983), Thunder Force Construction (1984), Ad-venture Construction Set (1984), Garry Kitchen’s GameMaker (1985), Wargame

Page 3: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 3

Construction Set (1986), Shoot’Em-Up Construction Kit (1987), Arcade GameConstruction Kit (1988) entre otros.

Con la popularidad del 3D, y en especıfico, los first person shooter (FPS),o disparos en primera persona, empezaron a surgir los motores de juego comometodo de desarrollo en las companıas. Tanta fue la popularidad de Doom de laempresa Id Software, que, en lugar de realizar los juegos desde cero, los demasdesarrolladores optaban por obtener licencias para utilizar segmentos de codigode las mecanicas del juego y disenar sus propios personajes, historias, niveles,armas y otros aspectos del juego. La separacion de contenido en los juegos sig-nifico que los equipos de desarrollo pudieran crecer y especializarse.

Los juegos que vinieron mas adelante de Id Software, se disenaron con esteenfoque en mente, siendo el motor un aspecto separado del contenido del juego.La practica de licenciar los motores se ha vuelto una forma de ganancias impor-tante para muchas companıas ya que esta puede significar contratos de miles amillones de dolares a varias empresas.

Muchos de los motores de hoy en dıa son algunos de los software mas com-plicados que existen. La evolucion de estos, ha creado una separacion en losequipos de algoritmo, diseno de niveles, arte, entre otros. El manejo de hilos seesta volviendo cada vez mas importante para los motores. El manejo tıpico dehilos involucra renderizado, audio y fısicas. Los juegos de carrera por ejemplohan estado al frente en este aspecto, ya que estos tenıan el motor de fısicas co-rriendo en un hilo distinto al principal. Por ejemplo, el juego “Forza Motorsport2 ” corrıa su motor de fısica a 360 Hz mientras que el renderizado corrıa a 30-60Hz [19].

4. Impacto y usos

Los motores son ampliamente usados hoy en dıa y es considerada la norma ala hora de desarrollar videojuegos. Existen soluciones ‘first party ’ y ‘third party ’,siendo las primeras las soluciones unicamente para uso interno de la empresa, yel otro el sistema de licenciar el motor a cambio de ganancias monetarias.

Respecto a este ultimo, existen varios modelos, sobre todo en los ultimosanos donde se busca que los estudios indies sean capaces de acceder a estas he-rramientas. El modelo clasico se centra en pagar una licencia ya sea en pagounico o en cuotas para acceder al motor durante un perıodo de tiempo definido.En 2013, Crytek decidio lanzar su motor CryEngine 3 bajo un modelo “pay whatyou want” o “paga lo que quieras” donde los usuarios podıan decidir si querıanapoyar o no a los desarrolladores del motor [15]. Recientemente, este cambio a almodelo que utiliza Unreal Engine desde su 4ta edicion que consiste en pagar el10 % de todas las ganancias al equipo detras del motor grafico [7]. Existe tambienel modelo implementado por Unity, donde se puede utilizar la version gratis si

Page 4: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

4 Motores de Videojuegos

la companıa genera menos de 100.000 USD al ano o esta obligado a comprar lalicencia en caso contrario [17].

Desde finales de la decada pasada, el uso de motores de juego se ha extendidoa ramas fuera del ambito de videojuegos. Se utiliza para crear simulacionesrealistas en el campo militar, medicinal e incluso estudio de fısica y la ciencia[9].

5. ¿Como funcionan?

Explicar exactamente como se realiza todo esto puede llegar a ser bastantecomplicado y, ademas, especıfico. Existen diferentes arquitecturas de motoresque varıan en distintos aspectos, pero la mayorıa siguen un esquema similar dediseno.

5.1. Graficos y Renderizado

Un punto importante de la venta de los motores de juego de alto perfil comoCryEngine, son los graficos impresionantes que pueden mostrar, combinado conla facilidad de produccion. Los juegos en 3D son creados con modelos 3D comobase, que son normalmente disenados en programas externos de modelado 3Dcomo Maya o Blender para luego ser importados al motor.

Figura 2. Captura de Hunt: Showdown (TBA), juego desarrollado con CryEngine V.

Page 5: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 5

Una vez que el modelo ha sido insertado, pueden ser complementados conmapas de relieve o materiales reflexivos o transparentes y sombras para hacer unobjeto realista. Esto ultimo se logra gracias a tecnologıas de iluminacion, que, enconjunto con el manejo de animaciones y partıculas, pueden darle vida al mundodel juego y los objetos dentro del mismo [4].

La mayorıa de los componentes dedicados a desplegar las imagenes en pan-talla, utilizan alguna API grafica como OpenGL, Direct3D o Vulkan desde anosrecientes, para poder dibujar pıxeles y mostrar objetos 2D o 3D en los moni-tores. Estas funciones normalmente son implementadas como clases donde se lepueden pasar objetos y parametros, e iteran sobre todos los objetos del mundodel juego y los muestra al usuario [12].

5.2. Audio

El sistema de audio, se encarga de reproducir la musica de fondo del juego, asıcomo tambien sus efectos de sonido. El sonido normalmente no sale de los parlan-tes exactamente como fue grabado, ya que los motores se encargan de ubicar lossonidos dentro del mundo tridimensional y su volumen es alterado dependientodonde este ubicado el jugador con respecto al sonido. Tambien existen muchosmetodos para hacer mas realista el sonido como modificar el tono y anadir re-verbacion para simular que rebota en las paredes de alrededor. No es lo mismo elruido un disparo en un campo abierto a un disparo en un hangar por ejemplo [4].

En las librerıas de categorıa Open Source, OpenAL-Sof y PortAudio sonbuenas elecciones debido a que facilitan la implementacion de un sistema deaudio independiente de su plataforma. Para decodificar audio, se suele integrarXiph Theora para audio (.ogg) o Xiph Vorbis para video (.ogv) debido a que sueficiencia y libertad de regalıas [12].

5.3. Inteligencia Artificial

Todo motor de juego debe tener alguna forma de inteligencia artificial. Es-tos se encargan de controlar tus personajes no jugador o Non-Player Character(NPC) ası como los lugares donde aparecen. Normalmente, esto se logra conalguna librerıa encargada de encontrar rutas, ya sea de terceros o auto desarro-llada, combinado con las reglas de la logica del juego que pueden ser controladaspor el motor de algoritmos del sistema [12].

5.4. Metodos de entrada

El motor de juego debe ser capaz de reconocer la entrada de acciones delusuario, ya sea por teclado, mouse o joysticks para ser capaz de jugar el juego.Si el juego, por ejemplo, esta basado en DirectX, se utiliza en bucle de mensajede Windows Xinput para lograr esto. Si no se cuenta con este soporte, serıa

Page 6: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

6 Motores de Videojuegos

necesario escribir tu propio administrador de entradas, lo cual no resulta nadafacil y dependiente de la plataforma [12]. Existen muchos metodos de manejarla entrada, pero dos de estos son comunes, eventos o sondeo.

Los eventos de entrada funcionan con la computadora escuchando algun inputo entrada (presionar el boton del mouse, soltar una tecla del teclado, un gatillopresionado) y ejecutando alguna funcion predefinida. Esto puede ser combina-do con una tabla de mapeo de botones a acciones como “disparar” o “saltar”,ası los usuarios podran redefinir la disposicion de botones de tal manera que eldesarrollador pueda escribir el codigo sin pensar en el metodo de entrada.

Figura 3. Configuracion de disposicion de botones de un control DualShock 4.

El sondeo se utiliza normalmente cuando se trata de valores de posicion, comolas coordinadas XY de un mouse, o la cantidad de inclinacion de una palancaanalogica. El motor es capaz de traer estos cambios y depende del desarrolladorreaccionar a esto, ya sea moviendo al personaje o rotando la camara del juego[4].

5.5. Registros o Logging

Este subsistema esta integrado de manera profunda con el resto del motor.Se encarga registrar todos los errores e informacion disponible de variables a unarchivo de texto para ser luego examinado por desarrolladores. Esto permite quesea mas facil identificar la causa de los errores para luego poder arreglarlos. Estose deshabilita normalmente en el lanzamiento del videojuego ya que puede tenerun alto impacto en la eficiencia [12].

Page 7: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 7

5.6. Manejador de recursos

Esta parte del sistema se encarga de liberar y cargar en memoria los datosde los niveles, texturas, modelos, sonidos y otros contenidos del juego en unaforma predecible y controlada usando reservas de memoria. Este tambien debeser capaz de rastrear el uso de los recursos durante la vida del programa paraevitar sobrecargas de memoria y errores inesperados [12].

5.7. Funciones de red

Desde las ultimas decadas, se ha vuelto una practica comun que los juegostengan alguna forma de juego multijugador. Los metodos de pantalla dividida selogran dividiendo la salida en ventanas y dibujando independientemente en cadauna. El juego de red por otro lado, se logra implementando una arquitectura decliente-servidor o de pares para replicar de manera confiable el estado del juegoen un momento a traves de multiples maquinas separadas a distancias variables[12].

5.8. Algoritmos o Scripting

Una de las partes mas importantes de un motor de juego con la que se topaun desarrollador. La calidad y facilidad de uso de este sistema puede hacerque el motor sea amado o despreciado. La mayorıa de los motores trabajancon lenguajes bien establecidos (como Lua, Python, Ruby, C#, entre otros) oproveen alguna interfaz basada en texto y transiciones de diagramas de flujo.Estos normalmente se editan con alguna consola, editor de texto o entorno dedesarrollo integrado de eleccion [12].

5.9. Interfaz de usuario

Debe haber un componente encargado de manejar los menus, cajas de dialogoy demas aspectos muestran informacion e interactuan con el usuario. Algunosmotores como Unity o Unreal permiten que la interfaz de usuario vaya de lamano con el renderizado y se puedan mostrar varios menus flotantes en espacios3D. Es importane resaltar que estos deben tener APIs accesibles al resto delsistema de modo que los desarrolladores puedan implementar facilmente logicaa la interfaz [12].

Page 8: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

8 Motores de Videojuegos

Figura 4. Interfaz de usuario del juego Deus Ex: Mankind Divided (2016).

6. ¿Motores graficos o de juegos?

Muchas personas suelen confundir los motores de juegos con motores grafi-cos o renderizado y vice versa. Estas dos clases de programas son parecidos enterminos de funciones pero son bastante diferentes uno del otro.

Un motor grafico como OGRE consiste solo de un renderizador y un mane-jador de recuros mınimos. Este esta pensado unicamente para dibujar y mostrargraficos. Por lo tanto, los motores graficos suelen ser de uso mas general quelos motores de juego. Aunque estos puedan ser usados para desarrollar juegoscuando son complementados con otras librerıas para tener todas las funcionali-dades, pueden ser tambien usado en casos que los otros subsistemas del motor dejuegos no son necesarios (por ejemplo, demostraciones de planos y arquitecturaen programas de diseno) [12].

7. Motores de juegos notables

Existen una cantidad muy grande de motores, por lo que abarcarlos todosresulta imposible. En esta seccion citaremos algunos motores que se destacanpor su popularidad, usos o caracterısticas especiales. Primero se comenzara pormotores de uso abierto, y luego comentaremos un poco sobre algunos motorespropietarios. Si bien con estos ultimos no se tienen muchos datos debido a sunaturaleza cerrada, se desarrollaron algunos de los juegos mas exitosos con ellospor lo que vale la pena mencionarlos [21].

Page 9: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 9

7.1. Clickteam Fusion

Clickteam Fusion es un motor de juego ya con varios anos que se sigue utili-zando hoy en dıa. Este existe desde 1994 por lo que, tiene una comunidad muyactiva detras y una documentacion muy amplia. Utiliza un editor visual, por loque no es necesario escribir codigo pero es necesario saber que hace cada fun-cion. Como se han lanzado dos versiones y media en mas de 20 anos, no se hanactualizado mucho por lo que resulta facil recordar dichas funciones [5].

Caracterısticas principales

Enfoque de juegos: 2D.

Lenguaje de scripting: Ninguno.

Plataforma de desarrollo: Win/Mac.

Plataforma objetivo: Windows, iOS, Android, HTML5, Adobe Flash.

Costo: >$100.

Juegos notables

Five Nights at Freddy’s (2014).

The escapists (2014).

Freedom Planet (2014).

Figura 5. Juegos desarrollados con Clickteam Fusion (de izquierda a derecha: Theescapists, Five Nights at Freddy’s 2, Freedom Planet).

Page 10: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

10 Motores de Videojuegos

7.2. RPG Maker

Aunque se ha utilizado para crear juegos de otros generos, RPG Maker esun motor especializado para la creacion de juegos de tipo RPG como dice sutıtulo. La mayorıa de las ediciones tienen un editor visual de mapa basado encasillas, lenguaje de scripting basico para eventos y un editor de batallas. Incluyerecursos predisenados como personajes, sprites o eventos para ser utilizados porel desarrollador. La curva de dificultad es un poco mayor comparado con motoresde tipo drag and drop ya que es necesario aprender algo de Ruby/Javascript parahacer cosas complejas [5].

Caracterısticas principales

Enfoque de juegos: 2D.Lenguaje de scripting: Ruby/Javascript.Plataforma de desarrollo: Win.Plataforma objetivo: PC-8801, MSX2, PC-9801, Super Famicom, Windows,Sega Saturn, PlayStation, Game Boy Color, PlayStation 2, Game Boy Ad-vance, Nintendo DS.Costo: $80.

Juegos notables

A Bird Story (2014).Lisa (2014).To the Moon (2011).

Page 11: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 11

Figura 6. Juegos desarrollados con RPG Maker (de izquierda a derecha: A Bird Story,Lisa, To the Moon).

7.3. Stencyl

Hace ya algunos anos, el Instituto de Tecnologıa de Massachusetts desarrolloun lenguaje de programacion visual llamado Scratch. Es un metodo de ensenar alos estudiantes como funcionan los codigos sin sobre cargarlos de mucho conoci-miento tecnico. Debido a esto, funciona mas bien como un puzzle, donde tienesque encontrar las piezas correctas para crear las acciones del software. Stencylesta basado en este modelo y resulta increıblemente sencillo crear un juego y depaso aprender a programar. Las herramientas te permiten escribir codigo, peroigualmente, se puede desarrollar todas las funcionalidades usando arboles logicos[5].

Caracterısticas principales

Enfoque de juegos: 2D.Lenguaje de scripting: Haxe.Plataforma de desarrollo: Win/Mac/Linux.Plataforma objetivo: Flash, HTML5, iOS, Android, Linux, OS X, Windows.Costo: $100.

Juegos notables

Lakeview Cabin (2015).Ghost Song (TBA). 1

Mibibli’s Quest (2014).

1 TBA significa “To Be Announced”, o “A ser anunciado” que se refiere a que elproducto no ha salido al mercado todavıa.

Page 12: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

12 Motores de Videojuegos

Figura 7. Ghost Song (izquierda) desarrollado con Stencyl (derecha).

7.4. GameMaker Studio

GameMaker Studio ha tenido unos anos recientes importantes. De este mo-tor han salido varios juegos indies que han resultado en millones de ventas co-mo Hotline Miami, Undertale o Hyper Light Drifter. Es un motor simple peropoderoso que soporta ambos proyectos en 2D o 3D, aunque es utilizado mascomunmente para videojuegos en 2D. Una de sus ventajas es que puedes creartodos los recursos del juego en el editor ası puedes ver de manera rapida comosera la apariencia del juego. La interfaz tipo drag and drop hace que sea idealpara tecnicas de desarrollo de prototipos rapidos, incluso para desarrolladoresavanzados. Utiliza su propio lenguaje de scripting llamado GML [5].

El desarrollo en esta plataforma resulta facil y sencillo en todos sus aspectos.No se necesita tener que lidiar con problemas de manejo de memoria o multipleshilos. Pero ası mismo, en caso de problemas de memoria, la depuracion puedellegar a ser muy complicada. Comparado con otros motores del mercado, puedellegar a ser caro debido a que su precio inicial es de $99 [10].

Caracterısticas principales

Enfoque de juegos: 2D.Lenguaje de scripting: GameMaker Language (GML).Plataforma de desarrollo: Win/Mac.Plataforma objetivo: Windows, Windows 8, Xbox 360, Xbox One, PlaySta-tion 3, PlayStation 4, PlayStation Vita, OS X, Ubuntu, HTML5, Android,iOS, Windows Phone 8, Tizen.Costo: >$99.

Page 13: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 13

Juegos notables

Hotline Miami (2007).Undertale (2013).Hyper Light Drifter (2004).

Figura 8. Juegos desarrollados con GameMaker Studio (de izquierda a derecha: HotlineMiami, Undertale, Hyper Light Drifter).

7.5. Cocos Creator

Cocos Creator es un motor de juego que utiliza Cocos2D-X de fondo, el cuales un framework de juego desarrollado en C++. Esta orientado a juegos 2Dprincipalmente. Incluye un sistema de UI que se adapta a cualquier tamano depantalla y sistemas de animacion para entornos 2D [3].

Cuenta con licencia de MIT, y por lo tanto, es de codigo abierto y cuentacon una comunidad dedicada detras. Es bastante flexible, pero tambien mascomplicado que motorores similares e involucra una curva de aprendizaje maspronunciada. Es bastante eficiente en cuanto a recursos utilizados, pudiendocrear juegos de tan solo 1,5 MB de espacio de almacenamiento. Es una buenaeleccion para pequenos y medianos proyectos [10] [2].

Caracterısticas principales

Enfoque de juegos: 2D/3D.Lenguaje de scripting: JavaScript, Java, Lua.

Page 14: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

14 Motores de Videojuegos

Plataforma de desarrollo: Win/Mac.Plataforma objetivo: Windows, Linux, OS X, iOS, Android, BlackBerry, Ti-zen.Costo: Gratis.

Juegos notables

Badland (2013).Angry Birds Fight! (2015).Geometry Dash (2013).

Figura 9. Juegos desarrollados con Cocos Creator (de izquierda a derecha: Badlands,Angry Birds Fight!, Geometry Dash).

7.6. Godot Engine

Godot Engine es un proyecto iniciado en 2007 que se volvio de codigo abiertoen 2014. Debido a esto, significa que no se deben pagar regalıas ni se esta forza-do a utilizar servicios o componentes en el proyecto. Tiene una comunidad muyactiva detras, ası como actualizaciones y noticias de progreso constantes. Godotes bastante ligero, incluso con casi todos sus componentes instalados, ocupandosolo 30 MB. Tiene un enfoque hacia la eficiencia por lo que incluso el trabajoes ligero. Debido a esto, hasta los juegos resultan eficientes. Para ver el nivelde optimizacion que se busca lograr, Godot Engine es un juego desarrollado conGodot Engine.

Page 15: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 15

Tiene un sistema de animacion simple pero efectivo y un motor 2D dedicadoen lugar de un 2D falso que utilizan otros motores al trabajar con el eje de pro-fundidad .aplanado”. Utiliza su propio lenguaje de scripting llamado GDScriptel cual es muy similar a Python y a partir de la version 3.0, permite lenguajescomo C#, Python, Go, D, Rust e incluso Nim. Para el sistema de estructura deljuego, utiliza nodos y escenas, las cuales pueden contener mas escenas y nodosdentro de cada una. Desde marzo de 2018, se encuentra disponible la version 3.0disponible, la cual tiene un soporte mejorado para juegos 3D tambien [14].

Caracterısticas principales

Enfoque de juegos: 2D/3D.Lenguaje de scripting: GDScript/C#/Python/Go/D/Rust.Plataforma de desarrollo: Win/Mac/Linux.Plataforma objetivo: Windows, macOS, Linux, UWP, iOS, Android, HTMLy Web Assembly.Costo: Gratis.

Figura 10. Juegos en desarrollo con Godot Engine (de izquierda a derecha: Ex Zodiac,Protocorgi, Tenacious).

7.7. Unity

Los juegos desarrollados en Unity tienen un gran alcance, ya que su soportecubre 27 plataformas incluyendo las ultimas consolas como el Nintendo Switch

Page 16: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

16 Motores de Videojuegos

y los telefonos celulares. La companıa cuenta con mas de cinco millones de desa-rrolladores registrados que utilizan la herramienta mensualmente.

El motor es una plataforma extremadamante poderosa en las manos de unequipo con experiencia. Aun ası, existe un numero amplio de soluciones paradesarrolladores que prefieren manejarse con interfaces visuales. Debido a esto,existe una amplia documentacion para ayudar a los equipos con el desarrollo,incluyendo cursos en plataformas como Udemy o Bitdegree.

Incluye planes de uso gratis hasta que se consigan ganancias que superen loscien mil dolares y una tienda muy variada llena de recursos (muchos de ellosgratis) para los juegos [5][22].

Caracterısticas principales

Enfoque de juegos: 2D/3D.Lenguaje de scripting: C#.Plataforma de desarrollo: Win/Mac/Linux.Plataforma objetivo: Windows, OS X, Linux Xbox 360, Xbox One, Wii U,New 3DS, Nintendo Switch, PlayStation 4, PlayStation Vita, Windows Pho-ne, iOS, Android, BlackBerry 10, Tizen, Unity Web Player, Windows Store,WebGL, Oculus Rift, Gear VR, Android TV, Samsung Smart TV.Costo: Gratis (Suscripcion >$35).

Juegos notables

Ori and the Blind Forest (2015).Pokemon GO (2016).Yooka-Laylee (2018).

Page 17: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 17

Figura 11. Juegos desarrollados con Unity (de izquierda a derecha: Ori and the BlindForest, Pokemon GO, Yooka-Laylee.

7.8. Unreal Engine

Unreal Engine es considerado uno de los motores con mejores visuales en elmercado. Tiene un enfoque orientado a tecnicas graficas ası como iluminacionpara producir graficos espectaculares. Debido a eso, es ampliamente utilizadopara el desarrollo de juegos de categorıa AAA, o juegos de alto presupuesto[5][23].

Muchos de los juegos mas exitosos hacen uso de este motor. Debido a esto, esun motor muy popular, y con tantos desarrolladores haciendo uso de este, exis-ten miles de tutoriales y materiales para usar y armar un juego. Tiene uno de losmejores soportes del mercado, siendo actualizado constantemente y herramien-tas anadidas en cada actualizacion. Apunta a una multitud de plataformas, yrecientemente abarato sus costos para que estudios mas pequenos puedan haceruso del mismo. Sin embargo, sigue siendo un motor muy complejo y puede sermucho para personas que estan empezando o cuentan con poca experiencia [10].

Caracterısticas principales

Enfoque de juegos: 3D.Lenguaje de scripting: GLSL, Cg, HLSL, UnrealScript, C++, Blueprints.Plataforma de desarrollo: Win.Plataforma objetivo: Microsoft Windows, macOS, Linux, SteamOS, HTML5,iOS, Android, Nintendo Switch, PlayStation 4, Xbox One, Magic Leap One,SteamVR/HTC Vive, Oculus Rift, PlayStation VR, Google Daydream, OSVR,Samsung Gear VR.Costo: Gratis (5 % de las ganancias generadas).

Page 18: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

18 Motores de Videojuegos

Juegos notables

Batman Arkham Knight (2015).Street Fighter V (2016).Fortnite (2017).

Figura 12. Juegos desarrollados con Unreal (de izquierda a derecha: Batman ArkhamKnight, Street Fighter V, Fortnite).

7.9. CryEngine

Este motor de juego es desarrollado por el equipo de Crytek. Incluye el CryEn-gine Marketplace que es un mercado virtual que permite a los desarrolladoresacceder a la librerıa de assets de Crytek ası como a cientos de materiales, sonidosy objetos en 3D creados en CryEngine por la propia comunidad y vendedores deconfianza. Incluye sporte para las plataformas mas recientes incluyendo Plays-tation VR, HTC Vive y Oculus Rift [15][20].

Tiene uno de las herramientas de audio mas poderosas, Fmod, incluida den-tro del motor, ası como capacidades para crear inteligencia artificial de manerasencilla. Por el otro lado, es un motor relativamente nuevo, ası no cuenta conuna comunidad muy amplia todavıa y al igual que Unreal, resulta dıficil paraprincipantes [10].

Caracterısticas principales

Enfoque de juegos: 3D.

Page 19: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 19

Lenguaje de scripting: Lua, C#.Plataforma de desarrollo: Win.Plataforma objetivo: Windows, OS X, Linux, PlayStation 3, PlayStation 4,Wii U, Xbox 360, Xbox One, iOS, Android.Costo: Gratis (5 % de las ganancias generadas).

Juegos notables

Crysis (2007).Far Cry (2004).Hunt: Showdown (TBA).

Figura 13. Juegos desarrollados con CryEngine (de izquierda a derecha: Far Cry 3,Crysis 2, Hunt: Showdown).

7.10. Source Engine

Source Engine origina del motor de juego GoldSrc utilizado por Quake. Sour-ce es un motor modular, se guıa por un modelo de actualizaciones incrementalesen lugar de versiones. Los diferentes subsistemas del motor pueden ser actua-lizados independientemente y manteniendo la compatibilidad de los proyectos[25].

Caracterısticas principales

Enfoque de juegos: 3D.Lenguaje de scripting: Lua.Plataforma de desarrollo: Win.Plataforma objetivo: Windows, OS X, Linux.Costo: Por contrato (>$25.000).

Page 20: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

20 Motores de Videojuegos

Juegos notables

Dota 2 (2013).

Portal (2007).

Titanfall 2 (2016).

Figura 14. Juegos desarrollados con Source Engine (de izquierda a derecha: Dota 2,Portal 2, Titanfall 2).

7.11. Amazon Lumberyard

En 2015, Crytek licencio el uso de CryEngine a Amazon, y este ultimo desa-rrollo el motor de juego Lumberyard teniendo como base la arquitectura deCryEngine. El motor es totalmente gratis de usar y de codigo abierto. Inclu-ye integracion con Amazon Web Services para permitir que los desarrolladoresalojen sus juegos en los servidores de Amazon. Contiene una plataforma mul-tijugador llamada GameLift donde se cobra una tarifa de $1.50 por cada 1000jugadores activos. Tambien incluye integracion con Twitch con funciones comoTwitch ChatPlay que permite que los miembros del chat manejen el juego, oTwitch JoinIn que permite que los duenos de los canales inviten a miembros delchat a jugar con ellos.

Debido a ser un motor de juego relativamente nuevo, no cuenta con juegoso casos de exito en el mercado. Existen un par de juegos siendo desarrolladosactualmente por Amazon Game Studios [1][8].

Page 21: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 21

Caracterısticas principales

Enfoque de juegos: 3D.Lenguaje de scripting: Lua.Plataforma de desarrollo: Win.Plataforma objetivo: PlayStation 4, Xbox One, Windows.Costo: Gratis.

Juegos notables

Breakaway (Cancelado).New World (TBA).Crucible (TBA).

Figura 15. Juegos en desarrollo con Amazon Lumberyard (de izquierda a derecha:New World, Crucible).

7.12. Frostbite

Es un motor de juego propietario de EA o Electronic Arts desarrollado porEA Dice y mantenido hoy en dıa por Frostbite Labs. Fue originalmente utilizadopara el desarrollo de Battlefield: Bad Company, pero luego se ha extendido aotros tipos de juegos, pero siempre exclusivo para juegos de Electronic Arts [18].

Juegos notables

Battlefield V(2018).Need for Speed (2015).Star Wars Battlefront II (2017).

Page 22: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

22 Motores de Videojuegos

Figura 16. Juegos desarrollados con Frostbite (de izquierda a derecha: Battlefield V,Star Wars Battlefront II, Need for Speed 2015).

7.13. RAGE Engine

RAGE (Rockstar Advanced Game Engine) es un motor de juego propieta-rio perteneciente a Rockstar Games [24]. Tiene una alta capacidad para manejarmundos de juegos grandes, inteligencia artificial compleja, efectos de clima, codi-go de red optimizado y una multitud de estilos de juegos que puede desarrollarseen el. Fue considerado uno de los mejores motores de la 7ma generacion devideojuegos (2005 - 2013 aproximadamente) [16].

Juegos notables

Grand Theft Auto V (2013).Red Dead Redemption (2010).Max Payne 3 (2012).

7.14. Gamebryo

Conocido originalmente como NetImmerse y desde 2003 como Gamebryo. Esutilizado por una gran cantidad de desarrolladores y estudios y apunta a ser mul-tiplataforma. Entre las companıas resaltantes econtramos a Atlus, Trion Worlds,2K Games, Disney, Ubisoft, Bethesda Softworks, Firaxis Games, Tencent, Sony,Shanda, NCsoft, Rockstar Games, entre otros [6].

Juegos notables

Fallout New Vegas (2010).Epic Mickey (2010).Divinity II (2010).

Page 23: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 23

Figura 17. Juegos desarrollados con RAGE (de izquierda a derecha: Max Payne 3,Grand Theft Auto V, Red Dead Redemption).

Figura 18. Juegos desarrollados con Gamebryo (de izquierda a derecha: Fallout NewVegas, Epic Mickey, Divinity II).

Page 24: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

24 Motores de Videojuegos

8. ¿Como elegir el motor correcto?

Elegir el motor correcto para el trabajo puede ser una tarea complicada, losdesarrolladores cuentan con una cantidad muy grande de opciones desde escribirsu motor propio, o licenciar alguno de las decenas que hay en el mercado. Existenvarias caracterısticas que pueden afectar la opinion acerca de estos [5].

Plantillas de juegos: Basicamente son juegos pre armados. Solamente ha-ce falta cambiar algunos pequenos detalles, importar tus propios graficos ycambiar algunos valores como el color del cielo por ejemplo.Drag and drop: Facilita el uso para gente con poca experiencia, no es necesa-rio codificar. Te permite agregar eventos o propiedades seleccionandolas deuna lista. Por ejemplo, anadir la propiedad “solido” al un objeto para queno atraviese otros objetos.Scripting visual: Te permite elegir diferentes funciones que replican codigosin tener que escribirlo.Codificacion: Algunos motores utilizan sus propios lenguajes, tratando dehacerlo lo mas facil posible para los novatos. Es una buena manera paraaprender a programar. Otros utilizan lenguajes familiares y conocidos, porlo que si ya se cuenta con experiencia, se tiene control total sobre el juego.

Aparte de esto, hay otros factores importantes a tener en cuenta a la horade hacer la eleccion [5].

Tu plataforma de desarrollo: ¿PC? ¿Mac? ¿Linux? Algunos motores no so-portan todas las plataformas, ası que esto sera un inicio para limitar lasopciones. Tambien es importante tener en cuenta las especificaciones de lamaquina, ya que maquinas viejas tendran problemas corriendo los motoresde mas alta complejidad.El genero del juego: Puede ser buena idea apuntar a un motor especializadoen un genero especıfico si encaja con la idea del juego. Por ejemplo, si sequiere crear un RPG sin programar mucho, RPG Maker es una buena idea.Si la idea es un juego con visuales impresionantes, un motor pesado comoUnreal o CryEngine estan mejor preparados para la tarea.La perspectiva del juego: Este punto tiene algo que ver con el punto anterior.Algunos motores son mejores para entornos 2D, mientras que otros tienen3D como su enfoque. Los juegos 3D suelen ser mas complejos y con unamayor curva de dificultad.Las habilidades artısticas: Algunos motores vienen con un editor visual in-cluido que te permite crear arte directamente en ellos. Normalmente estosignifica sprites en pıxeles o editores de terreno.La plataforma objetivo: Esto tambien podrıa ser dicho, donde planeas quetu juego se pueda jugar. ¿Se apunta a un juego web? ¿O Android/iOS?¿O consolas como PS4/Xbox? Existen motores multiplataforma que puedenhacer que lanzar el juego en mas de una plataforma involucre un esfuerzomınimo.

Page 25: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 25

La dedicacion: Esto quiere decir que tanto esfuerzo se va a dedicar al desa-rrollo del juego. Si se hace como pasatiempo, elegir la solucion mas simpleserıa buena idea. Por otra parte, si se tiene un equipo y se ambiciona unjuego grande y complejo, serıa mejor tomar un motor con buena reputacioncomo Unity o Unreal.Otras caracterısticas: ¿Se planea trabajar solo o en equipo? ¿Se necesitadocumentacion? ¿Recibe actualizaciones a menudo? Estas preguntas, entreotras, pueden afectar cual es el motor ideal para el proyecto, ası como sufuturo.

8.1. Tipos de juegos

Existen varios tipos de juegos, algunos mas simples de crear que otros. Por lotanto, algunos tipos serıan imposible de crear sin ningun conocimiento de progra-macion, como serıa el caso de un RPG multijugador masivo en lınea (MMORPG)[5].

Juegos simples en 2D Estos son los mas faciles de crear. El tiempo invertidose emplearıa en aprender a utilizar el motor, ası como tambien en crear losniveles, arte y conceptos. Muchos de estos generos son populares con motorescon sistemas drag and drop. Algunos ejemplos de estos juegos serıan:

Plataformas.Puzzles.Carreras.Aventuras de texto.

Juegos complejos en 2D Estos juegos tienen algun sistema que lo hace mascomplicado, como fısicas, inteligencia artificial o juego en lınea. Llevan mas tiem-po de dedicacion que los juegos simples y requieren algo de conocimiento deprogramacion. Algunos generos de esta categorıa pueden ser:

RPG.Peleas.Aventuras.

Juegos simples en 3D Con mundos tridimensionales, el desarrollo de juegosempieza a complicarse mas. Resulta comun utilizar hasta 1 ano aprendiendo ausar los motores debido a su capacidad. Algunos ejemplos de juegos simples en3D son:

First Person Shooters.Aventuras.Supervivencia.

Page 26: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

26 Motores de Videojuegos

Juegos complejos en 3D Estos son los juegos de mas alta dificultad. Comoprincipiante resultan muy dıficil, aunque no imposible. Es posible invertir va-rios anos tanto en el aprendizaje ası como el desarrollo de los juegos. Algunosejemplos son:

MMOs o multijugadores masivos en lınea.Simuladores.Realidad virtual.Estrategia en tiempo real.

Cuadro 1. Resumen de las caracterısticas de los motores abiertos mencionados [11][13].

Motor Codificacion Plataforma Popularidad Costo

Clickteam Fusion No Win/Mac Moderada >$100RPG Maker Opcional (Ruby/JS) Win Moderada $80Stencyl Opcional (HaXe) Win/Mac/Linux Alta $100GameMaker Studio Opcional (GML) Win/Mac Alta >$99Unity Si (C#/JS) Win/Mac/Linux Alta Gratis (Suscripcion >$35)Unreal Si (C++) Win Alta Gratis (5 % de ganancias)CryEngine Si (Lua) Win Moderada Gratis (5 % de ganancias)Source Si (Lua) Win/Mac/Linux Moderada Por contrato (>$25.000)Lumberyard Si (Lua) Win Baja GratisGodot Si (GDScript) Win/Mac/Linux Moderada Gratis

9. Conclusion

Cada vez existen mas motores de juegos en el mercado. A la hora de crear unjuego, no son necesarios pero facilitan en gran medida las tareas de desarrollo. Laherramientas que proveen hacen que el proceso sea lo mas sencillo posible paraque de esta manera los desarrolladores puedan concentrarse en otros aspectosdel proyecto. Aprender a manejar correctamente un motor especıfico facilmentepuede tomar anos, pero tambien ası, se vuelve facil desenvolverse y plasmar lasideas en el entorno de desarrollo de forma eficiente. Hay que tener en cuentatodos los aspectos del proyecto a la hora de elegir el motor de juego ideal yaque esto puede afectar los presupuestos del equipo, ası como lımites del juego.Es tambien importante saber que el motor no define el juego, pero si facilita eldesarrollo, por lo que tampoco resulta buena idea dedicar muchos recursos a estepunto de hallar el motor si se pierde tiempo de desarrollo valioso en este aspecto.

El mundo de los videojuegos y la facilidad de que cualquier persona con algode experiencia con computadoras y un poco de interes pueda crear sus propiasideas y plasmarlas en un juego sin saber de programacion no serıa posible sin elavance de los motores de juego que tenemos hoy en dıa.

Page 27: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

Motores de Videojuegos 27

Referencias

1. Amazon: Amazon lumberyard - cree sus mas ambiciosos juegos (2018), https:

//aws.amazon.com/es/lumberyard/, Ultimo acceso 20 Sep 2018.2. Apps, N.G.: Top 5 tools for mobile game development (2017), https://www.

newgenapps.com/blog/top-sdk-tools-for-mobile-game-development

3. Cocos: Cocos2d-x - world’s #1 open-source game development platform (2018),http://www.cocos2d-x.org/creator, Ultimo acceso 24 Sep 2018.

4. Enger, M.: Game engines: How do they work? (2013), https://www.giantbomb.com/profile/michaelenger/blog/game-engines-how-do-they-work/101529/,Ultimo acceso 24 Sep 2018.

5. Florian: Websitetooltester - the best game engines for beginners (2018), https://www.websitetooltester.com/en/blog/best-game-engine/, Ultimo acceso 20Sep 2018.

6. Gamebryo: Gamebryo (2018), http://www.gamebryo.com/, Ultimo acceso 20 Sep2018.

7. Games, E.: What is unreal engine 4 (2018), https://www.unrealengine.com/

en-US/what-is-unreal-engine-4, Ultimo acceso 24 Sep 2018.8. Good, O.S.: Amazon rolls out lumberyard, an entirely free game de-

velopment engine (2016), https://www.polygon.com/2016/2/9/10949002/

amazon-lumberyard-free-games-engine/

9. Hughes, J.: Us government to use unreal engine 3 formedical, crime-fighting and thinking simulation — digi-tal trends (2012), https://www.digitaltrends.com/gaming/

us-government-to-use-unreal-engine-for-medical-crime-fighting-and-thinking-simulation/,Ultimo acceso 24 Sep 2018.

10. Jasani, T.: The top 10 engines that can help you make your ga-me — venturebeat (2014), https://venturebeat.com/2014/08/20/

the-top-10-engines-that-can-help-you-make-your-game/

11. Jordan, J.: Gamasutra - engines of creation: An overview of game en-gines (2008), https://www.gamasutra.com/view/feature/132226/engines_of_

creation_an_overview_.php, Ultimo acceso 24 Sep 2018.12. Kalderon, E.: Game engines: What they are and how they

work (2011), https://nullpwd.wordpress.com/2011/05/09/

game-engines-what-they-are-and-how-they-work/, Ultimo acceso 24 Sep2018.

13. Khalifa, A.: Gamasutra: Ahmed khalifa’s blog - game engines galo-re (2008), https://www.gamasutra.com/blogs/AhmedKhalifa/20170315/293689/Game_Engines_Galore.php, Ultimo acceso 24 Sep 2018.

14. Machado, D.: Why we choose godot engine – rock milk articles – medium (2017),https://medium.com/rock-milk/why-godot-engine-e0d4736d6eb0

15. Soriano, D.: Crytek presenta su motor grafico cryengine v (2018), https://es.ign.com/crytek/101265/news/crytek-presenta-su-motor-grafico-cryengine-v

16. Stead, C.: The 10 best game engines of this genera-tion - ign (2018), https://www.ign.com/articles/2009/07/15/

the-10-best-game-engines-of-this-generation

17. Unity: Products (2018), https://unity3d.com/es/unity, Ultimo acceso 24 Sep2018.

18. Wikipedia: Frostbite (game engine) (2018), https://en.wikipedia.org/wiki/

Frostbite_(game_engine), Ultimo acceso 24 Sep 2018.

Page 28: Motores de Videojuegos - jeuazarru.comjeuazarru.com/wp-content/uploads/2018/11/Motores-de-Videojuegos.pdf · simula las leyes de la f sica, detecci on de colisiones, manejo de sonido,

28 Motores de Videojuegos

19. Wikipedia: Game engine (2018), https://en.wikipedia.org/wiki/Game_engine,Ultimo acceso 24 Sep 2018.

20. Wikipedia: List of cryengine games (2018), https://en.wikipedia.org/wiki/

List_of_CryEngine_games, Ultimo acceso 20 Sep 2018.21. Wikipedia: List of game engines (2018), https://en.wikipedia.org/wiki/List_

of_game_engines, Ultimo acceso 20 Sep 2018.22. Wikipedia: List of unity games (2018), https://en.wikipedia.org/wiki/List_

of_Unity_games, Ultimo acceso 20 Sep 2018.23. Wikipedia: List of unreal games (2018), https://en.wikipedia.org/wiki/List_

of_Unreal_Engine_games, Ultimo acceso 20 Sep 2018.24. Wikipedia: Rockstar advanced game engine (2018), https://en.wikipedia.org/

wiki/Rockstar_Advanced_Game_Engine, Ultimo acceso 24 Sep 2018.25. Wikipedia: Source (game engine) (2018), https://en.wikipedia.org/wiki/

Source_(game_engine), Ultimo acceso 24 Sep 2018.