De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

Un motor de juego es conceptualmente el software central necesario para que un programa de juego se ejecute correctamente. [1] Esto no debe confundirse con el entorno de desarrollo de software que a menudo se incorpora y está diseñado para que las personas creen videojuegos .

Los desarrolladores pueden usar motores de juegos para construir juegos para consolas de videojuegos y otros tipos de computadoras . La funcionalidad básica normalmente proporcionada por un motor de juego puede incluir una representación del motor ( "render") para 2D o 3D de gráficos , un motor de física o de detección de colisiones (y la respuesta de colisión), sonido , secuencias de comandos , la animación , la inteligencia artificial , redes , streaming, gestión de memoria , subprocesos , soporte de localización ,gráficos de escena y soporte de video para cinemáticas . Los implementadores de motores de juegos a menudo economizan en el proceso de desarrollo de juegos reutilizando / adaptando, en gran parte, el mismo motor de juegos para producir juegos diferentes [2] o para ayudar a portar juegos a múltiples plataformas.

Propósito [ editar ]

En muchos casos, los motores de juegos proporcionan un conjunto de herramientas de desarrollo visual además de componentes de software reutilizables. Estas herramientas se proporcionan generalmente en un entorno de desarrollo integrado para permitir un desarrollo rápido y simplificado de juegos basado en datos . Los desarrolladores de motores de juegos a menudo intentan adelantarse a las necesidades del implementador mediante el desarrollo de conjuntos de software robustos que incluyen muchos elementos que un desarrollador de juegos puede necesitar para crear un juego. La mayoría de las suites de motores de juegos ofrecen instalaciones que facilitan el desarrollo, como funciones de gráficos, sonido, física e inteligencia artificial (IA). Estos motores de juegos a veces se denominan " middleware " porque, al igual que ocurre con el negocioEn el sentido del término, proporcionan una plataforma de software flexible y reutilizable que proporciona toda la funcionalidad básica necesaria, lista para usar , para desarrollar una aplicación de juego mientras se reducen los costos, las complejidades y el tiempo de comercialización, todos factores críticos en el industria de videojuegos altamente competitiva . [3] En 2001 , Gamebryo , JMonkeyEngine y RenderWare eran programas de middleware de este tipo ampliamente utilizados. [4]

Al igual que otros tipos de middleware, los motores de juegos suelen proporcionar una abstracción de la plataforma , lo que permite que el mismo juego se ejecute en varias plataformas (incluidas las consolas de juegos y las computadoras personales) con pocos cambios, si es que los hay, en el código fuente del juego . A menudo, los programadores diseñan motores de juegos con una arquitectura basada en componentes.que permite reemplazar o ampliar sistemas específicos del motor con componentes de middleware de juegos más especializados (y a menudo más caros). Algunos motores de juegos comprenden una serie de componentes de middleware de juegos débilmente conectados que se pueden combinar de forma selectiva para crear un motor personalizado, en lugar del enfoque más común de ampliar o personalizar un producto integrado flexible. Independientemente de cómo se logre, la extensibilidad sigue siendo una alta prioridad para los motores de juegos debido a la amplia variedad de usos para los que se aplican. A pesar de la especificidad del nombre "motor de juego", los usuarios finales suelen reutilizar los motores de juego para otros tipos de aplicaciones interactivas con requisitos gráficos en tiempo real , como demostraciones de marketing , visualizaciones arquitectónicas., simulaciones de entrenamiento y entornos de modelado . [5]

Algunos motores de juegos solo brindan capacidades de renderizado 3D en tiempo real en lugar de la amplia gama de funcionalidades que necesitan los juegos. Estos motores dependen del desarrollador del juego para implementar el resto de esta funcionalidad o para ensamblarla a partir de otros componentes de middleware del juego. Estos tipos de motores se denominan generalmente "motor de gráficos", "motor de renderizado" o "motor 3D" en lugar del término más amplio "motor de juego". Esta terminología se usa de manera inconsistente, ya que muchos motores de juegos 3D con todas las funciones se mencionan [¿ por quién? ] simplemente como "motores 3D". Ejemplos de motores gráficos incluyen: Crystal Space , Genesis3D , Irrlicht ,OGRO, RealmForge , Truevision3D y Vision Engine . Moderno [ ¿cuándo? ] Los motores de juegos o gráficos generalmente proporcionan un gráfico de escena , una representación orientada a objetos del mundo del juego en 3D que a menudo simplifica el diseño del juego y puede usarse para una representación más eficiente de vastos mundos virtuales.

A medida que la tecnología envejece, los componentes de un motor pueden quedar obsoletos o resultar insuficientes para los requisitos de un proyecto determinado . Dado que la complejidad de programar un motor completamente nuevo puede resultar en retrasos no deseados (o hacer necesario que un proyecto se reinicie desde el principio), un equipo de desarrollo de motores puede optar por actualizar su motor existente con funciones o componentes más nuevos. [ cita requerida ]

Historia [ editar ]

Algunos motores de juegos experimentan una evolución con el tiempo y desarrollan un árbol genealógico, como por ejemplo el motor Quake de id, que resultó en la familia id Tech.

Antes de los motores de juegos, los juegos se escribían normalmente como entidades singulares: un juego para el Atari 2600 , por ejemplo, tenía que diseñarse de abajo hacia arriba para hacer un uso óptimo del hardware de pantalla; los desarrolladores llaman hoy a esta rutina de pantalla principal el núcleo. de juegos para sistemas más antiguos. Otras plataformas tenían más margen de maniobra, pero incluso cuando la pantalla no era una preocupación, las limitaciones de memoria usualmente saboteaban los intentos de crear el diseño de datos pesados ​​que necesita un motor. Incluso en plataformas más adaptables, se podría reutilizar muy poco entre juegos. El rápido avance del hardware arcade —Que era la vanguardia del mercado en ese momento— significaba que la mayor parte del código tendría que desecharse después de todos modos, ya que las generaciones posteriores de juegos usarían diseños de juegos completamente diferentes que aprovecharan los recursos adicionales. Por lo tanto, la mayoría de los diseños de juegos a lo largo de la década de 1980 se diseñaron a través de un conjunto de reglas codificadas con una pequeña cantidad de niveles y datos gráficos. Desde la era dorada de los videojuegos arcade , se hizo común que las empresas de videojuegos desarrollaran motores de juegos internos para usarlos con software de primera mano.

Un ejemplo notable de un motor de juego interno en consolas domésticas a mediados de la década de 1980 fue el motor de desplazamiento lateral suave desarrollado por el equipo de Shigeru Miyamoto en Nintendo para Nintendo Entertainment System (NES). El motor que habían desarrollado para el juego de carreras de desplazamiento lateral Excitebike (1984) se empleó más tarde para el juego de plataformas de desplazamiento Super Mario Bros. (1985). Esto tuvo el efecto de permitir que Mario acelerara suavemente de una caminata a una carrera, en lugar de moverse a una velocidad constante como en los juegos de plataformas anteriores. [6]

Si bien los motores de juegos de terceros no eran comunes hasta el auge de los gráficos por computadora en 3D en la década de 1990, se produjeron varios sistemas de creación de juegos en 2D en la década de 1980 para el desarrollo independiente de videojuegos . Estos incluyen Pinball Construction Set (1983), ASCII 's juego de guerra kit de construcción (1983), [7] Thunder Force construcción (1984), [8] Aventura Construction Set (1984), GameMaker de Garry Kitchen (1985), Wargame Construction Set (1986), Kit de construcción Shoot-'Em-Up (1987), Kit de construcción de juego de arcade(1988), y más popularmente los motores RPG Maker de ASCII desde 1998 en adelante. Klik & Play (1994) es otra oferta heredada que todavía está disponible. [9]

El término "motor de juego" surgió a mediados de la década de 1990, especialmente en relación con los juegos en 3D, como los juegos de disparos en primera persona con un motor de disparos en primera persona . Tal fue la popularidad de Id Software 's de Doom y Quake juegos que, en lugar de trabajar a partir de cero, otros desarrolladores de licencia las porciones centrales del software y diseñan sus propios gráficos, personajes, armas y niveles -El 'el contenido del juego' o "juego activos". La separación de las reglas y los datos específicos del juego de los conceptos básicos como la detección de colisiones y la entidad del juego significaba que los equipos podían crecer y especializarse. [9]

Juegos posteriores, como id Software 's Quake III Arena y Epic Games ' s 1998 Unreal fueron diseñados con este enfoque en mente, con el motor y el contenido desarrollado por separado. La práctica de otorgar licencias de dicha tecnología ha demostrado ser una fuente de ingresos auxiliares útil para algunos desarrolladores de juegos, ya que una licencia para un motor de juegos comerciales de alta gama puede oscilar entre 10.000 y millones de dólares, y el número de licenciatarios puede llegar a varias docenas. empresas, como se ve con Unreal Engine . Como mínimo, los motores reutilizables hacen que el desarrollo de secuelas de juegos sea más rápido y fácil, lo cual es una valiosa ventaja en la competitiva industria de los videojuegos.. Si bien hubo una fuerte rivalidad entre Epic e id alrededor de 2000, desde entonces, el Unreal Engine de Epic ha sido mucho más popular que id Tech 4 y su sucesor id Tech 5 . [10]

Los motores de juegos modernos son algunas de las aplicaciones más complejas escritas, a menudo con docenas de sistemas finamente ajustados que interactúan para garantizar una experiencia de usuario controlada con precisión. La continua evolución de los motores de juego ha creado una fuerte separación entre renderizado, scripting, material gráfico y diseño de niveles . Ahora es común, por ejemplo, que un equipo de desarrollo de juegos típico tenga varias veces más artistas que programadores reales. [11]

Los juegos de disparos en primera persona siguen siendo los usuarios predominantes de los motores de juegos de terceros, pero ahora también se utilizan en otros géneros . Por ejemplo, el videojuego de rol The Elder Scrolls III: Morrowind y el MMORPG Dark Age of Camelot se basan en el motor Gamebryo , y el MMORPG Lineage II se basa en Unreal Engine. Los motores de juegos también se utilizan para juegos desarrollados originalmente para consolas domésticas; por ejemplo, el motor RenderWare se utiliza en las franquicias Grand Theft Auto y Burnout .

El subproceso está adquiriendo más importancia debido a los sistemas modernos de varios núcleos (por ejemplo, Cell ) y al aumento de las demandas de realismo. Los hilos típicos involucran renderizado, transmisión, audio y física. Los juegos de carreras han estado típicamente a la vanguardia del subproceso con el motor de física ejecutándose en un subproceso separado mucho antes de que se movieran otros subsistemas centrales, en parte porque el renderizado y las tareas relacionadas necesitan actualizarse a solo 30-60 Hz. Por ejemplo, en PlayStation 3, la física se ejecutó en Need For Speed a 100 Hz frente a Forza Motorsport 2 a 360 Hz.

Aunque el término se utilizó por primera vez en la década de 1990, hay algunos sistemas anteriores en la década de 1980 que también se consideran motores de juegos, como los sistemas Adventure Game Interpreter (AGI) y SCI de Sierra , el sistema SCUMM de LucasArts y el software Incentive Software . Motor Freescape (en 1986 [12] ). A diferencia de la mayoría de los motores de juegos modernos, estos motores de juegos nunca se utilizaron en ningún producto de terceros (a excepción del sistema SCUMM, que fue licenciado y utilizado por Humongous Entertainment ).

A medida que la tecnología de los motores de juegos madura y se vuelve más fácil de usar, la aplicación de los motores de juegos se ha ampliado en alcance. Ahora se utilizan para juegos serios : visualización, entrenamiento, aplicaciones de simulación médica y militar , con CryEngine como ejemplo. [13] Para facilitar esta accesibilidad, los motores de juegos ahora apuntan a nuevas plataformas de hardware, incluidos teléfonos móviles (por ejemplo , teléfonos Android , iPhone ) y navegadores web (por ejemplo , WebGL , Shockwave , Flash , WebVision de Trinigy , Silverlight, Unity Web Player , O3D y DHTML puro ). [14]

Además, se están construyendo más motores de juegos en lenguajes de nivel superior como Java y C # / .NET (por ejemplo , TorqueX y Visual3D.NET ), Python ( Panda3D ) o Lua Script (Leadwerks). Como la mayoría de los juegos ricos en 3D ahora están en su mayoría limitados por GPU (es decir, limitados por la potencia de la tarjeta gráfica), la posible desaceleración debido a los gastos generales de traducción de idiomas de nivel superior se vuelve insignificante, mientras que las ganancias de productividad ofrecidas por estos idiomas funcionan para el motor del juego. beneficio de los desarrolladores. [15] Estas tendencias recientes están siendo impulsadas por empresas como Microsoft.para apoyar el desarrollo de juegos independientes . Microsoft desarrolló XNA como el SDK de elección para todos los videojuegos lanzados en Xbox y productos relacionados. Esto incluye el canal Xbox Live Indie Games [16] diseñado específicamente para desarrolladores más pequeños que no tienen los recursos necesarios para poner juegos a la venta en los estantes minoristas. Es cada vez más fácil y económico desarrollar motores de juegos para plataformas que admitan marcos administrados . [17]

Los motores de juegos como industria [ editar ]

Los productores de motores de juegos deciden cómo permiten que los usuarios utilicen sus productos. Así como los juegos son una industria , también lo son los motores con los que se construyen. Los principales motores de juegos tienen diferentes precios, ya sea en forma de tarifas de suscripción o pagos de licencia. [18]

Unreal Engine 4 , uno de los principales motores de juegos y utilizado para crear varios juegos notables como Fortnite , PlayerUnknown's Battlegrounds y Life Is Strange 2 , adoptó una estructura de uso gratuito con regalías en todas las ventas de juegos que utilizan este motor. [19] Aunque las diferencias entre los diferentes motores de juego se difuminan a medida que se construyen durante el proceso de creación del juego, los diferentes desarrolladores de juegos pueden estar demasiado acostumbrados a un sistema para cambiar o sentirse atraídos por los enormes beneficios de dichos motores, independientemente del pago. paredes.

Otro motor de juego que actualmente genera ingresos notables es el motor Unity , que utiliza un modelo de monetización similar al Unreal Engine. [20] Este motor está detrás de juegos como Rust , Subnautica y Life Is Strange: Before the Storm .

Algunos motores de juegos adoptan secuencias de comandos visuales, y entre ellas se encuentran herramientas como GameMaker: Studio , Construct 3 , GDevelop y Pixel Game Maker MV .

Middleware del juego [ editar ]

En el sentido más amplio del término, los propios motores de juegos pueden describirse como middleware. En el contexto de los videojuegos, sin embargo, el término "middleware" se usa a menudo para referirse a subsistemas de funcionalidad dentro de un motor de juego. Algunos middleware de juegos solo hacen una cosa, pero lo hacen de manera más convincente o más eficiente que los middleware de propósito general.

Los cuatro paquetes de middleware más utilizados [21] que proporcionan subsistemas de funcionalidad incluyen Bink, Firelight FMOD , Havok y Scaleform GFx de RAD Game Tools . RAD Game Tools desarrolla Bink para la reproducción básica de video, junto con el audio de Miles y la reproducción Granny 3D . Firelight FMOD es una biblioteca de audio robusta y un conjunto de herramientas de bajo costo. Havok proporciona un robusto sistema de simulación de física, junto con un conjunto de aplicaciones de animación y comportamiento. Scaleform proporciona GFx para interfaz de usuario Flash de alto rendimiento y reproducción de video de alta calidad, y un complemento de Editor de métodos de entrada (IME) para soporte de chat asiático en el juego.

Se utiliza otro middleware para la optimización del rendimiento, por ejemplo, ' Simplygon ' ayuda a optimizar y generar mallas de nivel de detalle , y ' Umbra ' agrega optimizaciones de eliminación de oclusión a los gráficos 3D.

Algunos middleware contienen código fuente completo , otros solo proporcionan una referencia de API para una biblioteca binaria compilada . Algunos programas de middleware se pueden licenciar de cualquier manera, generalmente por una tarifa más alta por el código fuente completo.

Ver también [ editar ]

  • Física del juego
  • Lista de motores de juegos
  • Lista de motores de disparos en primera persona
  • Gráficos 3D por computadora
  • Lista de middleware de juegos
  • Sistema de autoría
  • Estudio virtual

Referencias [ editar ]

  1. ^ Diccionario Oxford de inglés. (2021.) Oxford University Press.
  2. ^ "¿Qué es un motor de juego?" . GameCareerGuide.com . Consultado el 24 de noviembre de 2013 .
  3. ^ O'Neill, John (15 de enero de 2008). "Mi turno: el costo real del middleware" . Gamedaily.com. Archivado desde el original el 30 de agosto de 2009 . Consultado el 24 de noviembre de 2013 .
  4. ^ "Auge de Middleware 2.0" . Develop-online.net. 2007-07-06. Archivado desde el original el 15 de mayo de 2012 . Consultado el 17 de enero de 2011 .
  5. ^ Informe sobre el uso de middleware en juegos archivado el 17 de octubre de 2013 en Wayback Machine
  6. ^ Williams, Andrew (16 de marzo de 2017). Historia de los juegos digitales: avances en el arte, el diseño y la interacción . Prensa CRC . págs. 152–4. ISBN 978-1-317-50381-1.
  7. ^ "Kit de construcción de juegos de guerra" . ¡Oh! FM . Archivado desde el original el 28 de julio de 2013 . Consultado el 3 de septiembre de 2012 . URL alternativa
  8. ^ "Construcción de Thunder Force" . ¡Oh! FM . Archivado desde el original el 28 de julio de 2013 . Consultado el 1 de septiembre de 2012 . URL alternativa
  9. ↑ a b Fiadotau, Mikhail (2019). "Dezaemon, RPG Maker, NScripter: exploración y clasificación del juego 'produsage' en la década de 1990 en Japón". Revista de juegos y mundos virtuales . 11 (3): 215–230. doi : 10.1386 / jgvw.11.3.215_1 .
  10. Bramwell, Tom (9 de agosto de 2007). "Entrevista id Tech 5 • Página 1 • Entrevistas •" . Eurogamer.net . Consultado el 24 de noviembre de 2013 .
  11. ^ "Estudio de composición del equipo de desarrollo de juegos - cambios a lo largo del tiempo" . Consultado el 17 de enero de 2011 .
  12. ^ "Motor de Freescape" . Lista universal de videojuegos . Consultado el 16 de mayo de 2020 .
  13. ^ "Los videojuegos comienzan a ponerse serios" . Gazette.net. 2007-08-31. Archivado desde el original el 3 de diciembre de 2008 . Consultado el 17 de enero de 2011 .
  14. ^ "Juegos: tendencias móviles e inalámbricas para 2008" . M-trends.org. Archivado desde el original el 8 de enero de 2011 . Consultado el 17 de enero de 2011 .
  15. ^ Zerbst, Stefan; Düvel, Oliver (2004). Programación 3D Game Engine (libro) . ISBN 9781592003518. Consultado el 17 de enero de 2011 .
  16. ^ "xboxlivecommunitygames.org" . xboxlivecommunitygames.org . Consultado el 24 de noviembre de 2013 .
  17. ^ "Microsoft para habilitar juegos de Xbox 360 creados por el usuario" . Consultado el 5 de mayo de 2017 .
  18. ^ "Los 10 mejores motores de videojuegos | Edición 2018" . El recurso definitivo para el diseño de videojuegos . 2017-03-11 . Consultado el 15 de mayo de 2019 .
  19. Savage, Phil (2 de marzo de 2015). "Unreal Engine 4 ahora es gratis" . Jugador de PC . Consultado el 15 de mayo de 2019 .
  20. ^ "Los dos motores que impulsan la industria del juego de $ 120 mil millones hacia adelante" . CB Insights Research . 2018-09-20 . Consultado el 15 de mayo de 2019 .
  21. ^ "Encuesta sobre tecnología Gamasutra Engine y Middleware" . Gamasutra.com. 2009-05-08 . Consultado el 17 de enero de 2011 .