Doom Wiki
Doom Wiki
Etiqueta: rte-source
Sin resumen de edición
Etiqueta: rte-wysiwyg
Línea 1: Línea 1:
Se conoce como '''Motor de Doom''', '''id Tech 1''' o '''Doom engine''', al motor gráfico que [[id Software]] uso para sus videojuegos [[Doom]] y [[Doom II]]. Doom engine fue el motor que precedió al anterior motor de id, conocido como ''Wolfenstein 3D engine''. Este motor gráfico también es usado por [[Heretic]], [[Hexen]], [[Strife]] y otros juegos producidos por licenciatarios.
+
Se conoce como '''Motor de Doom (''Doom engine'')''' o '''id Tech 1''' al motor gráfico que [[Id Software]] usó para sus videojuegos [[Doom]] y [[Doom II]]. Se refiere a las partes del software que potencian o ejecutan ambos juegos, a diferencia de los activos y recursos (datos). En un sentido estricto, el ''motor'' está constituído por los elementos ejecutables de los juegos, basados en el [[Código fuente de Doom|código fuente]] correspondiente, a diferencia de los archivos [[WAD]] y [[lump]].
  +
==Historia==
  +
  +
Doom engine fue el motor que sucedió al anterior motor de id, conocido como ''Wolfenstein 3D engine''. Este motor gráfico también es usado por [[Heretic]], [[Hexen]], [[Strife]] y otros juegos producidos por licenciatarios.
   
 
Fue creado por [[John Carmack]], con las funciones auxiliares escritas por Michael Abrash, [[John Romero]], [[Dave Taylor]] y [[Paul Radek]]. Originalmente desarrollado en computadoras [https://es.wikipedia.org/wiki/NeXT NeXT], fue portado a [https://es.wikipedia.org/wiki/DOS DOS] para el lanzamiento inicial de Doom, para después ser portado a otras consolas y sistemas operativos.
 
Fue creado por [[John Carmack]], con las funciones auxiliares escritas por Michael Abrash, [[John Romero]], [[Dave Taylor]] y [[Paul Radek]]. Originalmente desarrollado en computadoras [https://es.wikipedia.org/wiki/NeXT NeXT], fue portado a [https://es.wikipedia.org/wiki/DOS DOS] para el lanzamiento inicial de Doom, para después ser portado a otras consolas y sistemas operativos.
   
El código fuente para la versión Doom de Linux fue lanzado al público en 1997 bajo una licencia que garantiza los derechos de uso del motor mientras no sea para uso comercial, y fue relanzado bajo la licencia GNU en 1999. Las versiones de Doom no oficiales que han sido creados desde entonces ha permitido que el juego corra en sistemas operativos que antaño no eran soportados e incluso mejorando la funcionalidad del motor y agregando en algunas conversiones nuevas características.
+
El código fuente para la versión Doom de Linux fue lanzado al público en 1997 bajo una licencia que garantiza los derechos de uso del motor mientras no sea para uso comercial, y fue relanzado bajo la licencia GNU en 1999. Las versiones de Doom no oficiales que han sido creados desde entonces ha permitido que el juego corra en sistemas operativos que antaño no eran soportados e incluso mejorando la funcionalidad del motor y agregando nuevas características en algunas conversiones.
   
Un motor  gráfico es independiente de los activos y recursos (datos) utilizados por los juegos. En un sentido más técnico, el motor está constituído por los elementos ejecutables de los juegos, basado en el código fuente correspondiente, en oposición a los [[WAD]] y archivos [[lump]]. Varias [[Versiones de Doom y Doom II|versiones]] del motor fueron liberados por [[id Software]] para los juegos de PC, una por versión, pero a menudo compartida por dos juegos, ya que los mismos ejecutables se utilizan para ambos, sólo se los renombró en consecuencia.
+
Varias [[Versiones de Doom y Doom II|versiones]] del motor fueron liberados por [[id Software]] para los juegos de PC, una por versión, pero a menudo compartida por dos juegos, ya que los mismos ejecutables se utilizan para ambos, sólo se los renombró en consecuencia.
   
 
El motor se compone de:
 
El motor se compone de:
Línea 12: Línea 15:
 
* un sistema de gestión de sonido, del cual, a diferencia de la funcionalidad de renderizado y creación de redes, las fuentes no fueron totalmente liberadas al público, ya que incluyen código propietario escrito por [[Paul Radek]].
 
* un sistema de gestión de sonido, del cual, a diferencia de la funcionalidad de renderizado y creación de redes, las fuentes no fueron totalmente liberadas al público, ya que incluyen código propietario escrito por [[Paul Radek]].
 
La última versión del motor lanzado para los juegos es la que se incluye con la [[Versiones de Doom y Doom II#v1.9|versión 1.9]] de cada juego, aunque unas versiones ligeramente modificadas posteriormente fueron publicadas con [[The Ultimate Doom]] y luego [[Final Doom]], aunque [[John Carmack]], el programador principal, no estaba muy involucrado en esas dos versiones, y están marcados como "v1.9" a pesar de las diferencias. El código fuente liberado, que incluye algunas diferencias con respecto a las encarnaciones de DOS para hacer el código más portable, está convenientemente marcada como la versión 1.10.
 
La última versión del motor lanzado para los juegos es la que se incluye con la [[Versiones de Doom y Doom II#v1.9|versión 1.9]] de cada juego, aunque unas versiones ligeramente modificadas posteriormente fueron publicadas con [[The Ultimate Doom]] y luego [[Final Doom]], aunque [[John Carmack]], el programador principal, no estaba muy involucrado en esas dos versiones, y están marcados como "v1.9" a pesar de las diferencias. El código fuente liberado, que incluye algunas diferencias con respecto a las encarnaciones de DOS para hacer el código más portable, está convenientemente marcada como la versión 1.10.
  +
  +
Tenga en cuenta que a veces Id Software refiere oficialmente al motor de Doom como id Tech 1 en su nuevo esquema de nombres para los motores de juego, establecido después que se comenzó a trabajar en el motor conocido como [[id Tech 5]], que soportaba a Rage. Esta enumeración también contenía el motor de [[Doom 3]], conocido como [[id Tech 4]], y también incluye el nuevo [[id Tech 6]], que soporta a [[Doom (2016)]].
   
 
==Estructura de niveles==
 
==Estructura de niveles==
 
[[Archivo:Doom_formato_mapa.png|thumb|350px]]
 
[[Archivo:Doom_formato_mapa.png|thumb|350px]]
No es un verdadero motor "3D", ya que no es posible mirar hacia arriba o hacia abajo adecuadamente, y dos sectores no pueden ser traslapados, pero es un elegante sistema que permite hacer un renderizado en pseudo-3D.
+
No es un verdadero motor "3D", ya que no es posible mirar hacia arriba o hacia abajo adecuadamente, y dos sectores no pueden ser solapados, pero es un elegante sistema que permite hacer un renderizado en pseudo-3D.
   
 
En su tiempo ''Doom'' fue revolucionario en su habilidad de proveer un ambiente 3D rápido por [https://es.wikipedia.org/wiki/Mapeado_de_texturas mapeado de texturas].
 
En su tiempo ''Doom'' fue revolucionario en su habilidad de proveer un ambiente 3D rápido por [https://es.wikipedia.org/wiki/Mapeado_de_texturas mapeado de texturas].
Visto desde una perspectiva aérea (de arriba hacia abajo), todos los niveles de Doom son de dos dimensiones, demostrando una de las limitaciones clave del motor gráfico de Doom: no es posible poner "''cuartos sobre cuartos''".
+
Visto desde una perspectiva aérea (de arriba hacia abajo), todos los niveles de Doom son de dos dimensiones, demostrando una de las limitaciones clave del motor gráfico de Doom: no es posible poner "[[Habitaciones sobre habitaciones]]".
   
Esta limitación tiene su ventaja: puede mostrarse fácilmente un "Modo Mapa", el cual representa las paredes y la posición del jugador, tal como se ve en la imagen de la derecha.
+
Esta limitación tiene su ventaja: puede crearse fácilmente un "[[Automapa|Modo Mapa]]", el cual representa las paredes, objetos, enemigos y la posición del jugador, tal como se ve en la imagen de la derecha.
   
 
===Objetos Básicos===
 
===Objetos Básicos===
 
:''Artículo principal: [[Nociones básicas de mapeo]]''
 
:''Artículo principal: [[Nociones básicas de mapeo]]''
 
*La unidad básica es el '''[[Vértice (VERTEX)|Vértice]]''' (o "vertex" como son referidos internamente en el motor), el cual representa un punto en 2D.
 
*La unidad básica es el '''[[Vértice (VERTEX)|Vértice]]''' (o "vertex" como son referidos internamente en el motor), el cual representa un punto en 2D.
*Los vertices son unidos para formar líneas que se conocen con el nombre de '''[[Linedef]]s'''.
+
*Los vertices se unen para formar líneas, que se conocen con el nombre de '''[[Linedef]]s'''.
 
*Cada linedef puede tener uno u dos lados, los cuales son conocidos como '''[[Sidedef]]s'''.
 
*Cada linedef puede tener uno u dos lados, los cuales son conocidos como '''[[Sidedef]]s'''.
 
*Los sidedefs son agrupados para formar polígonos que se conocen con el nombre de '''[[Sector]]'''. Los sectores representan áreas particulares del nivel.
 
*Los sidedefs son agrupados para formar polígonos que se conocen con el nombre de '''[[Sector]]'''. Los sectores representan áreas particulares del nivel.
Línea 31: Línea 36:
   
 
==Como motor de juego==
 
==Como motor de juego==
En un sentido más abstracto, el motor de Doom es el uso del [[Código fuente de Doom|código fuente de Doom]] o las partes ejecutables como punto de partida para otro juego. Este aspecto es similar al más moderno concepto de [https://es.wikipedia.org/wiki/Motor_de_videojuego motor de juego], aunque los juegos de Doom son anteriores a ese concepto y, mientras diseñado con mayor moddability que muchos títulos de FPS anteriores tales como Wolfenstein 3D, el motor de Doom difiere de modernos motores de juego en que no lo hace oferta un núcleo definido separa de las reglas específicas del juego, y no proporciona el mayor grado de abstracción de hardware motores más nuevos pueden ofrecer.
+
En un sentido más abstracto, el motor de Doom es el uso del código fuente de Doom o las partes ejecutables como punto de partida para otro juego. Este aspecto es similar al concepto más moderno de [https://es.wikipedia.org/wiki/Motor_de_videojuego motor de juego], aunque los juegos de Doom son anteriores a ese concepto y, aunque están diseñados con una mayor [https://es.wikipedia.org/wiki/Mod_(videojuegos) moddability] que muchos títulos anteriores de FPS tales como [[Wolfenstein 3D]], el motor de Doom difiere de los modernos motores de juego en que no ofrece un núcleo definido separado de las reglas específicas del juego, y no proporciona el mayor grado de abstracción de hardware que los motores más nuevos pueden ofrecer.
   
 
Se ha proporcionado a los desarrolladores un motor que es para ser utilizado como un ejemplo modificable, en lugar de un núcleo multi-plataforma para ser utilizado como una base.
 
Se ha proporcionado a los desarrolladores un motor que es para ser utilizado como un ejemplo modificable, en lugar de un núcleo multi-plataforma para ser utilizado como una base.
Línea 46: Línea 51:
 
**Hexen: Deathkings of the Dark Citadel (1996)
 
**Hexen: Deathkings of the Dark Citadel (1996)
 
*Strife (1996)
 
*Strife (1996)
  +
*Chex Quest (1996)
  +
*'''Hacx (1997)''' - Una modificación independiente y completa de Doom II v 1.9, desarrollado por Banjo Software. A diferencia de los juegos anteriores, sus desarrolladores se basaron en ingeniería inversa en lugar del código fuente, aunque incluye cambios extensos e integrales para el comportamiento de los monstruos y armas. Fue liberado como un add-on para Doom II, de forma gratuita.
  +
Además, el motor ha sido adoptado por varios desarrolladores para ejecutar versiones personalizadas de los juegos de PC, o modificaciones de los mismos, en diversos sistemas y entornos, en particular las consolas de juegos.
   
 
==Variantes ''comunidad de fans''==
 
==Variantes ''comunidad de fans''==

Revisión del 15:07 7 oct 2016

Se conoce como Motor de Doom (Doom engine) o id Tech 1 al motor gráfico que Id Software usó para sus videojuegos Doom y Doom II. Se refiere a las partes del software que potencian o ejecutan ambos juegos, a diferencia de los activos y recursos (datos). En un sentido estricto, el motor está constituído por los elementos ejecutables de los juegos, basados en el código fuente correspondiente, a diferencia de los archivos WAD y lump.

Historia

Doom engine fue el motor que sucedió al anterior motor de id, conocido como Wolfenstein 3D engine. Este motor gráfico también es usado por Heretic, Hexen, Strife y otros juegos producidos por licenciatarios.

Fue creado por John Carmack, con las funciones auxiliares escritas por Michael Abrash, John Romero, Dave Taylor y Paul Radek. Originalmente desarrollado en computadoras NeXT, fue portado a DOS para el lanzamiento inicial de Doom, para después ser portado a otras consolas y sistemas operativos.

El código fuente para la versión Doom de Linux fue lanzado al público en 1997 bajo una licencia que garantiza los derechos de uso del motor mientras no sea para uso comercial, y fue relanzado bajo la licencia GNU en 1999. Las versiones de Doom no oficiales que han sido creados desde entonces ha permitido que el juego corra en sistemas operativos que antaño no eran soportados e incluso mejorando la funcionalidad del motor y agregando nuevas características en algunas conversiones.

Varias versiones del motor fueron liberados por id Software para los juegos de PC, una por versión, pero a menudo compartida por dos juegos, ya que los mismos ejecutables se utilizan para ambos, sólo se los renombró en consecuencia.

El motor se compone de:

  • un motor de renderizado que estructura los niveles de juego y maneja el movimiento, efectos y las obstrucciones durante el juego,
  • un componente auxiliar de red (Doom networking component) para conectar las computadoras durante las partidas multijugador.
  • un sistema de gestión de sonido, del cual, a diferencia de la funcionalidad de renderizado y creación de redes, las fuentes no fueron totalmente liberadas al público, ya que incluyen código propietario escrito por Paul Radek.

La última versión del motor lanzado para los juegos es la que se incluye con la versión 1.9 de cada juego, aunque unas versiones ligeramente modificadas posteriormente fueron publicadas con The Ultimate Doom y luego Final Doom, aunque John Carmack, el programador principal, no estaba muy involucrado en esas dos versiones, y están marcados como "v1.9" a pesar de las diferencias. El código fuente liberado, que incluye algunas diferencias con respecto a las encarnaciones de DOS para hacer el código más portable, está convenientemente marcada como la versión 1.10.

Tenga en cuenta que a veces Id Software refiere oficialmente al motor de Doom como id Tech 1 en su nuevo esquema de nombres para los motores de juego, establecido después que se comenzó a trabajar en el motor conocido como id Tech 5, que soportaba a Rage. Esta enumeración también contenía el motor de Doom 3, conocido como id Tech 4, y también incluye el nuevo id Tech 6, que soporta a Doom (2016).

Estructura de niveles

Doom formato mapa

No es un verdadero motor "3D", ya que no es posible mirar hacia arriba o hacia abajo adecuadamente, y dos sectores no pueden ser solapados, pero es un elegante sistema que permite hacer un renderizado en pseudo-3D.

En su tiempo Doom fue revolucionario en su habilidad de proveer un ambiente 3D rápido por mapeado de texturas. Visto desde una perspectiva aérea (de arriba hacia abajo), todos los niveles de Doom son de dos dimensiones, demostrando una de las limitaciones clave del motor gráfico de Doom: no es posible poner "Habitaciones sobre habitaciones".

Esta limitación tiene su ventaja: puede crearse fácilmente un "Modo Mapa", el cual representa las paredes, objetos, enemigos y la posición del jugador, tal como se ve en la imagen de la derecha.

Objetos Básicos

Artículo principal: Nociones básicas de mapeo
  • La unidad básica es el Vértice (o "vertex" como son referidos internamente en el motor), el cual representa un punto en 2D.
  • Los vertices se unen para formar líneas, que se conocen con el nombre de Linedefs.
  • Cada linedef puede tener uno u dos lados, los cuales son conocidos como Sidedefs.
  • Los sidedefs son agrupados para formar polígonos que se conocen con el nombre de Sector. Los sectores representan áreas particulares del nivel.
  • Finalmente, hay una lista de objetos colocados en el mapa que en Doom son conocidas como Cosas (Things).

Como motor de juego

En un sentido más abstracto, el motor de Doom es el uso del código fuente de Doom o las partes ejecutables como punto de partida para otro juego. Este aspecto es similar al concepto más moderno de motor de juego, aunque los juegos de Doom son anteriores a ese concepto y, aunque están diseñados con una mayor moddability que muchos títulos anteriores de FPS tales como Wolfenstein 3D, el motor de Doom difiere de los modernos motores de juego en que no ofrece un núcleo definido separado de las reglas específicas del juego, y no proporciona el mayor grado de abstracción de hardware que los motores más nuevos pueden ofrecer.

Se ha proporcionado a los desarrolladores un motor que es para ser utilizado como un ejemplo modificable, en lugar de un núcleo multi-plataforma para ser utilizado como una base.

Videojuegos que utilizan id Tech 1

Uso en ports y otros juegos

  • Heretic (1994)
    • Heretic: Shadow of the Serpent Riders (1996)
  • Hexen: Beyond Heretic (1995)
    • Hexen: Deathkings of the Dark Citadel (1996)
  • Strife (1996)
  • Chex Quest (1996)
  • Hacx (1997) - Una modificación independiente y completa de Doom II v 1.9, desarrollado por Banjo Software. A diferencia de los juegos anteriores, sus desarrolladores se basaron en ingeniería inversa en lugar del código fuente, aunque incluye cambios extensos e integrales para el comportamiento de los monstruos y armas. Fue liberado como un add-on para Doom II, de forma gratuita.

Además, el motor ha sido adoptado por varios desarrolladores para ejecutar versiones personalizadas de los juegos de PC, o modificaciones de los mismos, en diversos sistemas y entornos, en particular las consolas de juegos.

Variantes comunidad de fans

Con el lanzamiento del código fuente de Doom efectuado por John Carmack el 23 de diciembre de 1997, los juegos de Doom y la comunidad se han beneficiado de los ports y las modificaciones del motor desarrollados por muchas personas alrededor del mundo.

Estos motores pueden correr los juegos originales de Doom y en ocasiones otros juegos utilizando el motor como base (ver arriba). Estas versiones producidas por los programadores, entre la comunidad de fans son comúnmente conocidos como source ports, a diferencia de los motores incluidos con los juegos.

Vanilla Doom

Como resultado de la diferencia entre los motores oficiales y los realizados por fans, el nombre Vanilla Doom (o vanilla Heretic, etc.) se utiliza a veces entre los fans, sobre todo por los usuarios y desarrolladores de source ports, para describir a los ejecutables originales, el acto de jugar con los ejecutables originales o bien una característica, fenómeno o add-on que cumple con el motor estándar en un grado u otro (ya sea de ser estrictamente compatibles, o no tener ni usar características que sólo se encuentran en los puertos de origen).

Véase también

Enlaces externos

  • Id Tech  en Wikipedia (en inglés)
Wikipedialogo
Esta página utiliza contenido de Wikipedia que está bajo licencia Creative Commons.