motor de videojuego

Upload: favio90

Post on 13-Oct-2015

55 views

Category:

Documents


0 download

DESCRIPTION

Explicación de los aspectos de un motor de videojuego

TRANSCRIPT

  • Motor de videojuego 1

    Motor de videojuegoUn motor de videojuego es un trmino que hace referencia a una serie de rutinas de programacin que permiten eldiseo, la creacin y la representacin de un videojuego. Del mismo modo existen motores de juegos que operantanto en consolas de videojuegos como en sistemas operativos. La funcionalidad bsica de un motor es proveer alvideojuego de un motor de renderizado para los grficos 2D y 3D, motor fsico o detector de colisiones, sonidos,scripting, animacin, inteligencia artificial, redes, streaming, administracin de memoria y un escenario grfico. Elproceso de desarrollo de un videojuego puede variar notablemente por reutilizar o adaptar un mismo motor devideojuego para crear diferentes juegos.[1]

    Hoy en da existen una gran variedad de motores completos y motores grficos como OGRE 3D que es un motorgrfico gratuito con "open-source" para que el usuario pueda crear aplicaciones desde el lenguaje C++.Desarrolladoras grandes de videojuegos como Epic, Valve y Crytek han lanzado al pblico sus motores o SDKs paraque los usuarios interesados en el desarrollo de videojuegos puedan descubrir como se elaboran y as tener unaintroduccin amplia a la industria y el desarrollo. Otros ejemplos de motor de juego seria el motor grfico Doomengine, Quake Engine, GoldSrc desarrollado por Valve en el cual se desarrollo el exitoso juego de Half-Life 1,Source tambien creado por VALVe y BLAM! Engine desarrollado por Bungie lo cual crearon la famosa saga deHalo.

    Glosario de aspectos relacionados

    AssetsLos assets pueden ser traducidos como elementos que sern introducidos al videojuego. Estos elementos incluyenModelos 3D, personajes, texturas, materiales, animaciones, scripts, sonidos, y algunos elementos especficos de cadamotor. Cada motor trabaja de una manera distinta a otros lo cual puede aceptar "Assets" que otros motores no puedenmanejar, sin embargo los ejemplos mencionados antes, son elementos que todos los motores de hoy en da usan.

    Application Programming Interface (Interfaz de Programacin de Aplicaciones)Es un sistema de rutinas, de protocolos y de herramientas para desarrollar programas de aplicacin. Un buen APIhace ms fcil desarrollar un programa proporcionando todos los bloques del desarrollo del programa. Elprogramador pone los bloques juntos.Entre estos los ms importantes son el DirectX (de Microsoft) y el OpenGL (que trabaja con la mayora de lossistemas operativos).

    Render (Renderizacin)El render o renderizacin, es el proceso de la computadora en mostrar en pantalla el aspecto visual de nuestro juego.El render se encarga de mostrar al jugador todo el poder grfico que el desarrollador haya configurado en el motor, elrender muestra todo lo que es el Terreno o BSP, Modelos, animaciones, texturas y materiales. El render contribuyetodo el aspecto visual del juego.

    Objetos 3DLos objetos 3D son objetos "secundarios" podra decirse, que se agregan al escenario del videojuego (Ej: Baos,puertas, rboles, muebles, adornos, etc) Los objetos o modelos 3D son clasificados por polgonos al igual que todoelemento que tenga una composicin tridimensional. Low-Poly: Traducido como "Polgonos bajos" son modelos que su composicin de polgonos es baja lo cual es

    probable que el modelo tenga un muy mal detalle y no se obtenga un resultado favorable. Estos modelos se usan

  • Motor de videojuego 2

    para optimizar el rendimiento del videojuego y el "Low-Poly" es efectivo en modelos que no requieren muchodetalle (Ej, una caja o un jabn)

    Mid-Poly: Traducido como "Polgonos medios" son modelos que su composicin de polgonos es media y lograndar mejor detalle que los "Low-Poly" aun que su velocidad de procesamiento es ms tardada. Estos modelos sonms usados para modelos que requieren un poco ms de detalle (Ej, Un arma, una casa)

    High-Poly: Traducido como "Polgonos altos" son modelos que su composicin de polgonos es alta y llegan adar un detalle magnfico pero su procesamiento es mas complejo y tiende a ralentizar el ordenador, dependiendode la potencia que el Hardware de la computadora o consola cuente. Estos modelos son usados para modelos queprecisan de un buen grado de detalle (Ej Un personaje, un vehculo).

    Esto es en pocas palabras el LOD o Level of Detail (Nivel de Detalle).

    Comparaciones y medidas

    Imagen

    Vertices ~5500 ~2880 ~1580 ~670 140

    Notes Detalle Mximo.Jugador cerca del objeto.

    Detalle Mnimo.Jugador muy lejos del objeto.

    Higher-order surfaces (superficies de alto orden)Es una forma de renderizacin especialmente para terreno en un videojuego. Videojuegos de nueva generacin comoGears Of War, Halo 4, Battlefield 4, Crysis 3, utilizan esta tcnica para crear terreno de manera suavizada y realista..Esta tcnica se puede utilizar para otros modelos pero es exclusivo para modelos High-Poly puesto que se especializaen deformar con curvas.

    CullingCodificado que logra que los objetos que no se ven en determinado cuadro de la animacin por causa de objetos quelos obstaculizan (como una pared) no tomen tiempo de renderizado. As se reduce la cantidad de trabajo del motor.El Culling es ms fcil de implementar en juegos en donde la visin es controlada como los RTS en comparacincon lo FPS. Un mtodo de Culling puede ser por rboles BSP

  • Motor de videojuego 3

    BSP Tree Hierarchy (BSP rbol de Jerarqua)

    Un heightmap creado con Terragen

    El BSP (Binary Space Partioning) es el modelo o terrenobase que nuestro videojuego siempre va a renderizar entodo momento, el BSP se diferenca por se la base denuestro mundo o nivel, es lo que conforma el ecosistema yestructura de nuestro nivel (Ej. Un desierto, un mar, uncastillo, un bosque etc) Un BSP se puede crear de muchasmaneras pero hoy en da las tcnicas ms utilizadas sonmediante Brushes y Heightmaps.

    Un terreno creado mediante Brushes enSchorched3D

    Brushes: Los Brushes es una herramienta codificada del softwaredel motor, no todos los motores lo utilizan pero motores de nuevageneracin como Unreal y CryEngine lo utilizan y manejanHigh-Order surfaces para deformar la superficie mediante vrtices.Tambin, se pueden crear BSPs con Brushes que crean figurasgeomtricas simples como: Cuadrado, Esfera, Cilindro, Cono, etc.

    Heightmaps: Los Heightmaps son mapas que funcionan a escalasde grises al igual que sus "hermanos" displacement maps. Losheightmaps estan ms codificados para deformar una superficieHigh-Poly o HOS mediante escala de grises y pixeles y solomodifican la altura. El color negro representa una altura nula oseaque no es modficada, y mientras ms blanco sea el pixel representa ms altura a la superficie.

    TesselationTcnica usada por la caracterstica de TruForm de ATI que consiste en agregar ms polgonos a un modelo o a unasuperficie convirtindolo en un objeto High-Poly para poder agregar ms detalle visual.

    Iluminacin (lighting)La iluminacin es un proceso de renderizacin en la que el motor ilumina todo lo que sea 3D ya sea por pixel o porvrtice. La iluminacin varia dependiendo la configuracin que haya establecido el usuario al motor. La iluminacinpuede ser de las cosas ms complejas al desarrollar un videojuego puesto que una iluminacin cercana a lo"perfecto" puede dar un aspecto visual al juego espectacular, pero claro que no es fcil de obtener. Por lo general la

  • Motor de videojuego 4

    iluminacin es influenciada por APIs, como DirectX y OpenGL, por obvias razones, versiones ms nuevas de estaAPI demuestran mejores resultados de iluminacin. El sombreado es otro factor sumamente importante y quereacciona mediante la luz, si el mundo obtiene buena iluminacin tambin tendr un buen sombreado.

    Vertex LightingSe determinan cuantos polgonos cruzan el vrtice, se toma el total de todas las orientaciones de los polgonos(Normal) y se asigna la normal al vrtice. Para cada vrtice, un polgono dado reflejar la iluminacin en una formalevemente distinta. La ventaja es que al hardware le toma menos tiempo el procesarlo, pero este tipo de iluminacinno produce sombras.

    Flat Shading Lighting (Iluminacin de Sombreado Plano)Consiste en que cada polgono represente un valor leve que se pase al polgono completo que genere una imagenplana del mismo, a esta imagen tambin se le asigna un color determinado. Vertex Shading (Sombreado de Vrtice, Gouraud shading): solicita al motor de renderizado un color para cada

    vrtice, luego por medio de interpolacin se renderiza cada pxel por la distancia en relacin con su respectivovrtice.

    Phong Shading: es similar al Gouraud Shading, trabajan con la textura, solo que el Phong Shading usa a lospxeles en lugar de lo vrtices.

    El Phong Shading toma ms tiempo de procesamiento que el Vertex Shading pero su resultados son mucho mejoresen cuestin de suavizado de texturas. Light Map Generation (Generacin del mapa de luz): se usa una segunda capa de textura (mapa de luz) que dar

    el efecto de iluminacin a los modelos, es un efecto excelente pero debe tomarse antes del renderizado pero si setienen Luces Dinmicas (o sea luces que se mueven, encienden o apagan sin intervencin de programa) se debeestar regenerando los mapas en cada Frame de animacin lo que toma mucha cantidad de memoria (pero son derender rpido).

    Textura: es esencial para que las escenas 3D se vean reales, en si las texturas son imgenes que se rompen en losdistintos polgonos del modelo, muchas imgenes tomarn mucho espacio en la memoria por eso se debe usartcnicas de compresin:

    Mapeo MIP: consiste en preprocesar las texturas creando mltiples copias del mismo cada una la mitad delanterior, esto porque si la textura solo es pegada al polgono cada textura es a cada pxel y tomara ms tiempo derender; as cada Texel (elemento de Textura) toma menos espacio.

    Texturas Mltiples: requiere mltiples renderizados por lo que para obtener buen resultado se necesita unatarjeta con Acelerador de Grficos, provee mejor calidad que el simple mapeo. Se puede colocar una imagensobre otra (ms transparente) para dar el sentido de movimiento pulso o hasta sombra.

    Bump Mapping: tcnica vieja de texturas que tratan de mostrar como la luz se refleja en el objeto. Solo hastahace poco se vuelto a retomar.

    Antialiasing: El anti-aliasing revisa los polgonos y difuminar las bordes y vrtices, para que los bordes no sevean como dentados. Esta tcnica se puede hacer de dos maneras. La primera se realiza de modo individual,entremezclando polgonos para sobreponerlos unos delante de otros.

    La segunda manera se hace por medio de tomar todo el marco y quitarle los bordes dentados, pero esto requiere demucha memoria. Vertex and Pixel Shaders (Vrtices y Sombreo de Pixeles): Con este mtodo se pueden extraer y utilizar

    directamente las caractersticas y facilidades de la tarjeta de video, sin tener que utilizar mucho la API. Pero no esutilizable en todas las tarjetas.

  • Motor de videojuego 5

    Stencil Shadowing (Plantilla de Sombreado): la idea es renderizar una vista de un modelo desde la perspectiva dela fuente de luz y despus utilizar esto para crear o para generar un polgono con la forma de esta textura sobre lassuperficies afectadas por el modelo. As se obtiene una iluminacin que parece real. Pero es costosa, porque ustedest creando texturas en vuelo, y hace mltiple render de la misma escena.

    El manejo del cache de textura es imprescindible para que el juego se desarrolle rpido (y para cualquier motor), yaque si se presenta un constante swapping de las texturas en la tarjeta el juego se vera lento y tedioso, algunos APIsdescargan cada textura cuando esto pasa, pero eso hara que en cada cuadro se refresquen las texturas dando mslentitud. Todo se trata de cargar la menor cantidad de veces una misma textura, pero eso tambin depende del APIque se utilice. Otra tcnica es la compresin de texturas, comprimir texturas es como comprimir MP3, los algoritmosde compresin logran una relacin 4:1 que no es mucho pero ayuda. LOD (level of detail, nivel de detalle): el sistema de nivel de detalle est relacionada con la complejidad

    geomtrica de los modelos. Algunos sistemas necesitan que se hagan mltiples versiones del modelo, para quedependiendo de cuan cerca se este del modelo as ser su cantidad de polgonos. Otros sistemas ajustandinmicamente esta caracterstica pero en este caso da ms carga al CPU

    Depth Testing (prueba de profundidad): Con esto se empieza a eliminar los pxeles ocluidos y se pone en prcticael concepto de sobre dibujado. La prueba de profundidad es una tcnica utilizada para determinar que objetosestn delante de otros en la misma localizacin del pxel.

    Sobre Dibujado: es la cantidad de veces que se ha dibujado un pxel en un frame. Se basa en la cantidad deelementos existentes en la tercera dimensin (profundidad).

    Scripting Systems(Sistemas de scripting) Pre-scripted Cinematics: usada normalmente en una situacin que necesita la explicacin en una manera

    controlada. Para presentar las escenas de la historia, ahora se utilizada el cortar-escenas que presenta la historia envdeo digital y luego por medio de transiciones se pasa a las grficas reales del juego.

    El scripting le permite al diseador tomar mando de la escena y manipularla, como colocar objetos o eventos que eljugador no controla. En muy complicado, se necesita de una mente muy metdica y lgica, la mayora de estosscripts se basan en lenguaje C. Visual Scripting Systems: como lo dice su nombre, permite manejar el script en un ambiente grfico en lugar de

    un cdigo escrito, se maneja un carcter real en un ambiente del juego real.

    SonidoCreative Labs ahora ha proporcionado sus extensiones manejadores de sonido EAX para DirectX, y la nuevainiciativa de OpenAL (biblioteca audio abierta). OpenAL, como suena, es un API para los sistemas de los sonidos dela misma manera que OpenGL es un API.Para el procesado de sonido es muy similar al procesado de los modelos, muchas veces un software los procesa antesde pasar al hardware respectivo, por ejemplo DirectSound hace al sonido para la Tarjeta de sonido lo que Direct3Dhace al modelado antes de llegar al la Tarjeta 3D. Esto es llamado premezcla en el software.

    Msica/Pistas de AudioEl sonido de un videojuego se llega a manejar de muchas maneras y esto depende de las capacidades que tenga elmotor. Hoy en da los motores de nueva generacin soportan muchos formatos de sonido pero los ms populares sonel ".wav" y ".ogg" y en algunas casos, exigen configuraciones exactas dependiendo el motor. La administracin depistas de audio larga son amplias puesto que motores de nueva generacin permiten modificacin para poder meterun "looping" a la pista, modificar el tono, etc.

  • Motor de videojuego 6

    Inteligencia Artificial (IA o AI)Es la caracterstica ms importante que se le atribuye a un motor al lado de la representacin de modelos o Render.La IA provee de estmulo al juego. Es crtico en la parte de la forma de juego (game play).La inteligencia artificial de determinado juego puede tornarse muy compleja, primero se debe definir la lnea basedel comportamiento de los NPC (Non Player Characters - Personajes no Jugables), primero debe definirse que haceel NPC (patrulla, guarda, etc.), luego se delimita su visin del mundo, que es lo es el NPC puede ver del mundo deljuego; se debe tomar en cuenta que el personaje no slo estar en medio del mundo del juego sino que tambininteractuar con l, despus vienen las rutinas de Toma de Decisin: si el NPC est patrullando, y hay un sonido,debe darle importancia o no?, investiga su origen o no?, etc.Es un sistema de reglas para las acciones que responden (o inician) y que el jugador debe responder, esto es unconcepto ms general de IA.

    Motores de videojuego

    Nombre Lenguaje deProgramacin.

    Scripting PlataformasMltiples -

    Cross-Plataform

    SDL Orientacin2D/3D

    Plataforma JuegosDestacados

    Licencia Notas yreferencias

    3D Rad C# AngelScript

    No No

    3D Windows wRace [2] Custom Motor basadoen Fsica 3D,no requierescripting.

    AdventureGame Studio

    C++ AGSScript S

    No 2D

    Windows Linux Chzo Mythos, TheBlackwell Series

    ArtisticLicense 2.0

    Mayormenteusado para

    desarrollar en3. persona.Uno de los

    ms popularespara

    desarrollarjuegos deaventuraamateur.

    Aleph One C++ Lua,Marathonmarkup

    language

    S S 2.5D Windows LinuxOS X

    Aleph One(Marathon

    remake)

    GPL Motor FPS

    Allegro library C Ada, C++,C#, D, Lisp,

    Lua, Mercury,Pascal, Perl,

    Python,Scheme

    S S

    2D

    Windows LinuxOS X DOS

    zlib Grficos yAudio

    Angel2D [3] C++ Lua S

    No 2D

    Windows LinuxOS X IOS

    BSD

  • Motor de videojuego 7

    Ardor3D Java S

    No

    3D cross-platform zlib Influenciadopor

    jMonkeyEngine2.0

    Axiom Engine C# S

    No

    3D Windows LinuxOS X Solaris

    LGPL

    Blender C++ Python S S 3D Windows LinuxOS X Solaris

    Yo Frankie!,ColorCube

    GPL Motor 2D/3Dempaquetado

    con unmodelador 3D

    para un usorpido;

    Librera defsicas de balas

    (Bullets)completamente

    integrada.

    Build engine C

    No No

    2.5D Windows LinuxOS X DOS

    Duke Nukem 3D,Shadow Warrior,

    Blood

    Personalizado Motor FPS,2.5D

    (Geometrabasada en

    cuadrcula 2D)

    Cafu Engine C++ Lua S

    No

    3D Windows LinuxOS X

    GPL orproprietary

    Motor devideojuego

    completo confsica, grficas,audio, red, etc.

    ClanLib C++ S S 2.5D Windows LinuxOS X

    zlib Contieneamplias ycompletas

    opciones detodo motor.

    Cocos2d C++, Python,Objective-C

    JavaScript,Java

    S

    No 2D

    Windows LinuxOS X IOS

    Hardest GameEver 2

    MIT

    ConstructClassic

    Event Based

    No No 2D

    Windows Minitroid GPL/ BSD

    Core3D [4] Objective-C S S 3D Windows Linux

    OS X IOSCoreBreach MIT, GPL v2

    Crystal Space C++ Java, Perl,Python

    S S 3D Windows LinuxOS X

    Keepsake, TheCrystal Scrolls, Yo

    Frankie!

    LGPL

  • Motor de videojuego 8

    Cube C++ S S 3D Windows LinuxOS X

    AssaultCube, Cube zlib Sistema decuadrculas

    2D,especialmente

    optimizadopara niveles deexteriores quede interiores.

    Cube 2 C++ Cubescript S S 3D Windows LinuxOS X

    Cube 2, RedEclipse

    zlib Eficientegeometrabasada en

    heightmaps de6 direcciones,motor FPS.

    Delta3d C++ Python S

    No

    2.5D cross-platform LGPL

    Dim3 C++ JavaScript S

    No

    3D cross-platform MIT Motor 3D paraMac.

    DimensioneXMultiplayer

    Engine

    Java Java,VBscript

    S

    No

    2.5D cross-platform Underworld Online GPL Intencionadopara

    principiantes,los juegos se

    puedenconvertir enApps paraFacebook.

    Dreemchest [5] C++ Lua S

    No 2D

    Windows, OS X,Android, iOS,

    Flash

    Match them All [6] Personalizada Motor 2D paraplataformamltiple.

    Duality [7] C# Plugin-based

    No No 2D

    Windows Honourbound [8] MIT

    Eclipse Origins[9]

    Visual Basic 6

    Exclusivo paraWindows

    No 2D

    Windows Crystalshire,yoomxWorld [10]

    GPL Un motor 2Despecializadopara juegosMMORPG

    con unacomunidad

    muy grande.

    ENIGMA C++ EDL S

    No 2D

    Windows LinuxOS X

    GPL

  • Motor de videojuego 9

    Env3D Java S

    No

    3D cross-platform GPL

    Exult C++ S S

    2D

    Windows LinuxOS X BSD

    GPL

    FLARE [11] C++ S S

    2D

    Windows LinuxOS X BSD

    GPL Motor quepermite

    perspectivasisomtricas.

    FlexibleIsometric Free

    Engine

    C++ Python S S

    2D

    Windows LinuxOS X BSD

    Unknown Horizons LGPL Motor 2Doptimizadopara juegosRPG y RTS.

    Flixel ActionScript S

    No 2D

    Various games byGregory Weir

    MIT

    GameKit(OgreKit)

    C++ Lua S

    No

    3D Windows LinuxOS X android

    MIT/zlib/BSD

    Integracin deBlender.

    GamePlay3D[12]

    C++ Lua S

    No

    3D Windows LinuxOS X iOS

    BlackBerry 10Android

    Apache 2.0

    Gamvas JavaScript JavaScript S

    No 2D

    HTML5 MIT

    Grit [13] C++ Lua S

    No

    3D MIT Optimizadopara juegos demundo abierto(Open-World)

    Haaf's GameEngine (HGE)

    [14]

    C++ C, Go S S

    2D

    Windows LinuxOS X

    Hammerfight zlib Contieneefectos de

    partculas yacelerador 2D.

    HGamer3D[15]

    Haskell

    No No

    3D Apache 2.0

  • Motor de videojuego 10

    Horde3D [16] C++ S

    No

    3D Windows EPL [17]

    HPL 1 engine C++ AngelScript S S 3D Windows LinuxOS X

    Penumbra:Overture,

    Penumbra: BlackPlague,

    Penumbra:Requiem

    GPLv3

    id Tech 1(Doom)

    C ACS S

    No

    2.5D Windows LinuxOS X

    Doom, Doom II,HeXen, Heretic,

    Strife

    GPL Utilizamtodos

    inteligentes 2Dpara simular

    3D.

    id Tech 1(Quake)

    C QuakeC S

    No

    3D Windows LinuxOS X

    Quake GPL Primer motor3D

    id Tech 2 C C S

    No

    3D Windows LinuxOS X

    Quake II GPL Mejorconocido

    como el motorQuake II

    id Tech 3 C Game Data{PK3 }

    S

    No

    3D Windows LinuxOS X

    Quake III Arena GPL Mejorconocido

    como el motorQuake III

    id Tech 4 C++ via DLLs S

    No

    3D Windows LinuxOS X

    Doom 3, Doom 3:BFG Edition,

    Quake 4

    GPL Mejorconocido

    como el motorDoom 3.

    Indielib C++ S S 2.5D Windows LinuxOS X

    LGPL Ampliasfunciones deun motor 3D,

    aun que no seatotalmente un

    motor 3D.

    ioquake3 C S S 3D Windows LinuxOS X

    Urban Terror GPL

    IwGameEngine

    [18]C++ S

    No 2D

    Windows LinuxOS X iOS Android

    GPL

    Jake2 Java S

    No

    3D Cross-platform GPL

  • Motor de videojuego 11

    JGame Java,Actionscript 3

    S

    No 2D

    J2ME Android BSD

    jMonkeyEngine Java S S 3D Cross-platform BSD

    Jogre Java S

    No 2D

    Cross-platform GPL Diseado parajuegos de lared Yahoo!

    jPCT andjPCT-AE

    [19]Java S

    No

    3D Java Android SpaceCat,SkyFrontier, Max

    the flyer

    Free forpersonal andcommercial

    use

    3D avanzado yotras funciones

    comoanimaciones eiluminacin

    paradispositivos

    android.

    Kobold2D [20] Objective-C Lua S

    No 2D

    OS X iOS MIT Basado enCocos2d y

    otras libreras.

    Libgdx Java S

    No

    3D Windows LinuxOS X iOS Android

    HTML5

    Bumbledore,Apparatus, Clashof the Olympians,

    Ingress [21]

    Apache 2.0 Se ha usadoeste motor

    para muchosjuegos

    comerciales.

    LinderdaumEngine

    [22]C++ C#,

    LinderScript S

    No

    3D Windows OS XiOS Android

    BlackBerry 10

    Linderdaum Puzzle[23]

    MIT Funciona enAndroid.

    LVE [24] Lua Lua S S

    2D

    Windows LinuxOS X

    Mari0, Journey tothe Center of

    Hawkthorne [25]

    zlib

    LWJGL [26] Java S S 3D Minecraft BSD

    Maratis [27] C++ Lua S

    No

    3D Windows LinuxOS X iOS Android

    Save Our Souls zlib/GPL

    melonJS [28] Javascript Javascript S

    No

    2.5D HTML5 Alex4 WE [29],Bitzz [30],

    Neverwell Moor[31], Escape from

    Minimars [32]

    MIT Integracin deHTML5

    Moai SDK C++ Lua S S

    2D

    Windows OS XiOS Android

    Crimson SteamPirates [33]

    CPAL

  • Motor de videojuego 12

    MultiverseFoundation

    Jython andJava

    Python

    No No

    3D MIT

    Nebula Device C++ Java, Python,Lua, Tcl/Tk

    S

    No

    2.5D Windows Linux Urban Assault,Drakensang: The

    River of Time

    MIT

    NetGore [34] C# S

    No 2D

    Windows Linux MIT MotorOpen-Sourcepara juegos

    RPG en lnea.

    NME Haxe S

    No 2D

    Windows LinuxOS X iOS

    AndroidBlackBerry

    MIT Diseado paracrear juegoscomerciales

    mviles y web.

    nxPascal Object Pascal Delphi,Lazarus

    S

    No

    3D MIT

    OpenSimulator C# LSL S

    No

    3D BSD

    ORX C/C++ Custom S S 2.5D Windows LinuxMac OS X iOS

    Android

    Le Magasin desSuicides

    zlib Acelerado 3D

  • Motor de videojuego 13

    Oxygine [35] C++ S S

    2D

    Windows LinuxMac OS X iOS

    Android

    Elements Battle[36],

    BattlePaint(mobile)[37], Match3Quest

    [38]

    MIT Hardwaremoderno

    aceler 2D C ++ marco para

    las plataformasmviles y de

    PC.

    Caractersticas:OpenGLES

    medio,texturas

    comprimidas,atlas,

    complejosanimaciones /

    Tweens /sprites,

    escenariogrfico,fuentes,

    manejo deeventos,

    herramientasde

    construccin, yotros. Puede

    ser construidoen la cima de

    SDL2.0 oMarmalade

    SDK.

    Panda3D C++ Python S

    No

    3D Windows LinuxOS X iOS

    Toontown Online,Pirates of the

    Caribbean Online

    BSD

    PixelLight C++ AngelScript,Lua, Python,Javascript/V8

    S

    No

    3D Windows LinuxAndroid

    MIT

    Polycode [39] C++ Lua S S 3D Windows Linux

    OS XMIT

    PLIB C++ S S 3D Windows LinuxOS X

    LGPL

    Pyrogenesis C++ JavaScript S S 3D Windows 0 A.D. GPL Diseadoespecialmente

    para juegosRTS

    RetributionEngine

    C++

    No No

    3D Windows GPL Motor FPS

  • Motor de videojuego 14

    SFML C++ S

    No 2D

    Zlib

    Sge2d C S S

    2D

    cross-platform MIT

    Source

    Spring C++ C, C++,Java/JVM,

    Lua, Python

    S S 3D Windows LinuxOS X

    BalancedAnnihilation,

    Zero-K

    GPL

    StepMania C++ Lua S

    No

    3D cross-platform In the Groove,Pump It Up Pro

    MIT Originalmentediseado para

    KonamisDance DanceRevolution..

    Stratagus C Lua S S

    2D

    Linux Bos Wars GPL

    Torque3D C++ TorqueScript

    No No

    3D Windows LinuxOS X

    Tribes 2 MIT

    Turbulenz [40] TypeScript JavaScript S

    No

    3D HTML5 Polycraft, Save theDay, Score Rush

    MIT Diseado paracrear juegos

    medianteHTML5.

    Wire3D [41] C++ S

    No

    3D Windows Wii LGPL

    WorldForge C++ Lua(client),Python(server)

    S S 3D GPL

    ZenGL [42] Pascal C, C++ S

    No 2D

    GNU/LinuxWindows, MacOS

    X iOS Android

    zlib Avanzado yespecializado

    en 2D,programado en

    Pascal.

    ZGameEditor Delphi Personalizado S

    No

    3D Windows LinuxOS X Android

    MIT

    Nombre Lenguaje deProgramacin.

    Scripting PlataformaMltiple -

    Cross-Plataform

    SDL Orientacin2D/3D

    Plataforma JuegosDestacados

    Licencia Notas yreferencias.

  • Motor de videojuego 15

    Referencias[1] What is a Game Engine? (http:/ / www. gamecareerguide. com/ features/ 529/ what_is_a_game_. php) from GameCareerGuide.com[2] http:/ / www. indiedb. com/ games/ wrace[3] http:/ / angel2d. com[4] https:/ / github. com/ core-code[5] http:/ / dreemchest. com/[6] http:/ / dreemchest. com/ showcase/ 20-dreemchest-engine. html[7] http:/ / duality. fetzenet. de/[8] https:/ / www. facebook. com/ pages/ Honourbound/ 220348641454694[9] http:/ / www. eclipseorigins. com/ community/[10] http:/ / world. yoomx. co. uk/[11] http:/ / flarerpg. org/[12] http:/ / gameplay3d. org/[13] http:/ / gritengine. com/[14] http:/ / hge. relishgames. com/[15] http:/ / www. hgamer3d. org[16] http:/ / horde3d. org/[17] http:/ / www. eclipse. org/ legal/ epl-v10. html[18] http:/ / www. drmop. com/ index. php/ iwgame-engine/[19] http:/ / www. jpct. net/[20] http:/ / www. kobold2d. com/[21] http:/ / www. ingress. com/[22] http:/ / www. linderdaum. com/[23] http:/ / play. google. com/ store/ apps/ details?id=com. linderdaum. engine. puzzL[24] http:/ / love2d. org/[25] http:/ / projecthawkthorne. com[26] http:/ / www. lwjgl. org/[27] http:/ / www. maratis3d. org/[28] http:/ / www. melonjs. org/[29] http:/ / alex4. tapjs. com/[30] http:/ / bitzz. pt. la/[31] http:/ / www. indiedb. com/ games/ neverwell-moor[32] http:/ / adhesion. mu/ games/ escapefromminimars/[33] http:/ / bungie. net/ crimson[34] http:/ / www. netgore. com[35] http:/ / oxygine. org[36] http:/ / play. google. com/ store/ apps/ details?id=com. gameinsight. battleandroid[37] https:/ / itunes. apple. com/ us/ app/ battlepaint-retro-arcade-splatterfest!/ id482453093[38] https:/ / play. google. com/ store/ apps/ details?id=com. furry. mtquestalpha[39] http:/ / www. polycode. org[40] https:/ / github. com/ turbulenz/ turbulenz_engine[41] http:/ / code. google. com/ p/ wire3d/[42] http:/ / zengl. org

  • Fuentes y contribuyentes del artculo 16

    Fuentes y contribuyentes del artculoMotor de videojuego Fuente: http://es.wikipedia.org/w/index.php?oldid=73763086 Contribuyentes: Alelapenya, Bestgustavo30, Biasoli, Cinevoro, Dajoropo, Dodo, Enrique Cordero, Flextron,Folkvanger, GeorgeArthur, Geronime, Grillitus, House, Jorge c2010, Jorgeferma95, Khaine, Kintaro, Lmsilva, Locovich, LordT, MARC912374, MILEPRI, Maddox, Osielsur, Oxilium, Plux,Rowley, Satanclos, Savh, Sebi kul, ShadowW64, Solder3000, Tomatejc, UA31, Vanbasten 23, 42 ediciones annimas

    Fuentes de imagen, Licencias y contribuyentesArchivo:WireSphereMaxTass.MaxDZ8.jpg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:WireSphereMaxTass.MaxDZ8.jpg Licencia: Public Domain Contribuyentes: MaxDZ8Archivo:WireSphereHiTass.MaxDZ8.jpg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:WireSphereHiTass.MaxDZ8.jpg Licencia: Public Domain Contribuyentes: MaxDZ8Archivo:WireSphereStdTass.MaxDZ8.jpg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:WireSphereStdTass.MaxDZ8.jpg Licencia: Public Domain Contribuyentes: MaxDZ8Archivo:WireSphereLowTass.MaxDZ8.jpg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:WireSphereLowTass.MaxDZ8.jpg Licencia: Public Domain Contribuyentes: MaxDZ8Archivo:WireSphereMinTass.MaxDZ8.jpg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:WireSphereMinTass.MaxDZ8.jpg Licencia: Public Domain Contribuyentes: MaxDZ8Archivo:Heightmap.png Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Heightmap.png Licencia: Public Domain Contribuyentes: A3r0, Simeon87Archivo:Heightmap rendered.png Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Heightmap_rendered.png Licencia: Public Domain Contribuyentes: A3r0, Bayo, Deadstar,SantosgaArchivo:Scorched 3D 1 screenshot roam1.JPG Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Scorched_3D_1_screenshot_roam1.JPG Licencia: GNU General Public LicenseContribuyentes: Gavin CampArchivo:X mark.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:X_mark.svg Licencia: Public Domain Contribuyentes: User:GmaxwellArchivo:Yes_check.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Yes_check.svg Licencia: Public Domain Contribuyentes: SVG by (modified by )Archivo:Parcial_mark.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Parcial_mark.svg Licencia: Public Domain Contribuyentes: Josell7

    LicenciaCreative Commons Attribution-Share Alike 3.0//creativecommons.org/licenses/by-sa/3.0/

    Motor de videojuegoGlosario de aspectos relacionados Assets Application Programming Interface (Application Programming InterfaceInterfaz de Programacin de Aplicaciones) Render (Renderizacin) Objetos 3DHigher-order surfaces (superficies de alto orden) Culling BSP Tree Hierarchy (Binary space partitioningBSP rbol de Jerarqua) Tesselation Iluminacin (lighting) Vertex Lighting Flat Shading Lighting (Iluminacin de Sombreado Plano) Scripting Systems(Sistemas de scripting) Sonido Msica/Pistas de Audio Inteligencia Artificial (IA o AI)

    Motores de videojuego Referencias

    Licencia