Este artículo es un fragmento del Libro negro de Game Engine: Wolfenstein 3D , un estudio detallado de la historia, el código y el desarrollo que tuvo un gran impacto en la industria de los juegos de disparos en primera persona sobre la destrucción de los nazis.Este capítulo revela los orígenes del juego y cómo se construyó sobre la base del éxito y la tecnología del Comandante Keen
, que se construyó a partir de los restos de un intento fallido de vender el puerto de Nintendo Mario 3
para PC.El libro completo, escrito por el autor y programador Fabien Sanglar, se puede comprar en papel o en formato digital .En 1990, la pequeña empresa Softdisk de Shreveport (Louisiana) realizó con éxito negocios en el mercado shareware.
Al proporcionar servicios de distribución de videojuegos basados en suscripción, Softdisk creó y envió nuevos juegos por correo a sus suscriptores cada mes. El negocio iba bien, pero algunos de los empleados de la empresa eran más ambiciosos.
Pensaban que tenían suficientes habilidades para escalar y querían demostrarlo. Crearon una nueva forma de programar el desplazamiento lateral y llamaron a esta tecnología una actualización de mosaico adaptativo. Le permitía realizar el desplazamiento de hardware (desplazamiento de la pantalla) en la PC, para que la computadora pudiera competir con NES. A principios de la década de 1990, trabajaron sin parar los fines de semana para recrear
Super Mario 3 en PC para demostrar sus habilidades de Nintendo.
Las Ideas del equipo Deep, como se llamaban a sí mismas, pudieron hacer un clon de
Mario , pero, desafortunadamente, no pudo convencer a Nintendo para que les diera un contrato. No importa cuán impresionada esté la compañía japonesa, quería que la serie de
Mario permaneciera solo en las consolas de Nintendo.
“Enviamos la demo a Nintendo of America, y ella a su vez la envió a la oficina central en Kyoto. La alta gerencia vio la demostración y quedó muy impresionado. Sin embargo, no querían que su propiedad intelectual estuviera en ningún dispositivo que no fuera su equipo, por lo que simplemente nos elogiaron y dijeron que era imposible ". - John Romero, programador
Mario en la PC. El acrónimo IFD significa Ideas from the Deep.Este episodio resultó ser suficiente para convencerse a sí mismos de que no solo tienen un talento que coincide con sus ambiciones, sino también un equipo bien coordinado con una ética de trabajo que podría abrirles grandes oportunidades. En febrero de 1991, cuatro empleados de Softdisk dieron un salto de fe y fundaron su propia compañía de id Software.
Fundadores de id Software.(Puede leer más sobre esto en
Masters of Doom de David Kushner).
Inmediatamente aprovecharon la tecnología desarrollada para la versión para PC de
Mario 3 para comenzar a lanzar sus propios juegos y crear propiedad intelectual. Sin perder tiempo, el equipo lanzó al menos tres juegos en un año.
- Commander Keen Episodio 1, 2 y 3: Invasion of the Vorticons (14 de diciembre de 1990)
- Commander Keen Episodio 4, 5 y 6: Good Bye Galaxy (15 de diciembre de 1991)
- Juego separado Commander Keen : Aliens Ate My Baby Sitter (diciembre de 1991)
Estos juegos, publicados por FormGen, tuvieron éxito instantáneamente y se vendieron muy bien. El equipo también continuó escribiendo juegos para Softdisk, la mayoría de los cuales usaban actualizaciones de mosaicos adaptativos:
- Comandante Keen en Keen Dreams (1991)
- Dave peligroso en la mansión embrujada (1991)
- Rover de rescate (1991)
- Rescate Rover 2 (1991)
- Caballeros de las sombras (1991)
- Hovertank 3D (abril de 1991).
- Catacomb 3D: una nueva dimensión (noviembre de 1991)
En la primavera de 1991, comenzó a surgir una nueva generación de tecnología id Software. En el juego
Hovertank 3D, el jugador estaba dentro del tanque. Hasta ahora, aún no ha tenido mapeo de texturas, y el ritmo del juego se ha mantenido bastante lento.
Catacomb 3D marcó la aparición de texturas y una mayor inmersión en el juego: el jugador ahora controlaba al mago en una vista en primera persona.
En noviembre de 1991, el equipo finalizó todas las obligaciones con SoftDisk. Su próximo juego utilizará la tecnología 3D creada por los chicos y se lanzará bajo el nombre de
Wolfenstein 3D . Debido a la escala y la ambición del juego, cuatro personas más se unieron al equipo y ahora tenía ocho empleados.
"Jason (Jason Blochowiak) fue parte de la identificación desde el principio, pero en el proceso de desarrollo de Wulf, nuestros caminos divergieron". - John Carmack, programador.
Foto del equipo de Easter Egg en Spear of Destiny. La siguiente inscripción: "estamos sin pantalones".De hecho, los pantalones todavía están puestos en ellos.Organizacion
En septiembre de 1991, guiados por los recuerdos escolares de Tom y Jason, el equipo se mudó de Shreveport a Madison (Wisconsin). Los muchachos instalaron su oficina en el edificio de ladrillo de dos pisos del complejo residencial The Pines en High Ridge Trail, 2622. Todos vivían a poca distancia de la oficina, a excepción de Carmack, a quien no le importaron las molestias: se instaló en el segundo piso de la oficina.
El desarrollo de
Wolfenstein 3D comenzó en enero de 1992. La temperatura bajó y la nieve cayó del cielo, por lo que el equipo estaba completamente inmerso en el trabajo y rara vez salía de la oficina. El desarrollo duró cuatro meses.
Wolfenstein 3D fue lanzado en mayo de 1992.
En el transcurso de estos cuatro meses, la organización del trabajo en equipo fue bastante estándar para los estudios de juegos de esa época: cuatro muchachos sentados en una habitación, apoyo para un rápido ritmo de desarrollo y un fuerte sentido de camaradería (y mucho ruido debido a la forma en que John Romero y Tom Hall interactuaron).
El siguiente mapa muestra el ángulo con SNES, donde se jugaron innumerables juegos de
F-Zero , y la zona Dungeons & Dragons, a la que a menudo se hace referencia en Masters of Doom. El hecho de que uno de los miembros del equipo (John Carmack) viviera justo encima del estudio era un estado bastante normal.
“Comenzamos transfiriendo datos en disquetes, pero al final creamos una red Novell basada en Ethernet coaxial *. No teníamos un sistema de control de versiones. Sorprendentemente, no lo tuvimos hasta Quake 3, durante el desarrollo del cual comenzamos a usar Visual Source Safe ". - John Carmack, programador.
* Comentario de John Romero: “Viviendo en Madison, en noviembre de 1991, compramos un sistema Novell Netware 3.11 por $ 7,000. Incluía un servidor de archivos, cables y tarjetas de red ".
Todos trabajaron en las mejores PC que se podían comprar por dinero: la 386-DX 33MHz más potente con 4MB de RAM.
Programacion
El desarrollo se llevó a cabo en el entorno de Borland C ++ 3.1 (pero en el lenguaje C), que por defecto funcionaba en modo VGA 3: una pantalla de texto de 80 por 25 caracteres.
John Carmack se ocupó del código de tiempo de ejecución. John Romero programó muchas herramientas (editor de mapas TED5, paquete de recursos IGRAB, paquete de música MUSE). Jason Blohovyak escribió importantes subsistemas del juego (administrador de entrada, administrador de página, administrador de sonido, administrador de usuarios).
La solución de Borland era un sistema todo en uno. Un IDE llamado BC.EXE, a pesar de cierta inestabilidad, proporcionó una incómoda edición de código de múltiples ventanas con un bonito resaltado de sintaxis. El compilador y el enlazador también formaban parte del sistema y tenían los nombres BCC.EXE y TLINK.EXE.
Sin embargo, no fue necesario cambiar al modo de línea de comandos. El IDE le permitió crear, ensamblar, ejecutar y depurar un proyecto.
Para compensar el pequeño tamaño de la pantalla CRT, algunos desarrolladores utilizaron dos monitores. (Nota de John Romero: “Tanto John Carmack como yo trabajamos con Turbo Debugger en pequeños monitores monocromáticos de pantalla ámbar de 12 pulgadas”).
Recursos gráficos del juego
Todos los recursos gráficos fueron creados por Adrian Carmack (Kevin Cloud creó varias texturas y también trabajó en el diseño y la estructura del manual del manual
Wolfenstein 3D ). Todo el trabajo se realizó en Deluxe Paint (escrito por Brent Iverson de Electronic Arts) y se guardó en archivos ILBM (InterLeaved BitMap) (formato propietario Deluxe Paint).
Dado que el modo VGA se basa en el uso de paletas (los colores no se configuraron mediante valores RGB de 24 bits, sino mediante índices que apuntan a una tabla de 256 colores), el proceso de creación fue complicado. En primer lugar, Adrian tuvo que tomar una decisión clave: qué colores caerían en la paleta (en algunos juegos, por ejemplo,
Monkey Island usó varias paletas que cambiaron según la parte del juego. Id Software eligió una solución más simple y usó una paleta para todo el juego), y luego pinta todo con solo estos colores.
Paleta 3D Wolfenstein. Todo en el juego fue dibujado usando estos 256 colores.Las coordenadas de la paleta varían de 0x00 a 0x0F horizontalmente y de 0x00 a 0xF0 verticalmente. El gradiente azul horizontal a continuación comienza en 0xF0 y termina en 0xFE. 0xFF (marcado en rosa) es un color especial que el motor considera transparente y siempre se omite al renderizar.
Todos los recursos fueron dibujados manualmente con el mouse. Dado que al mostrar el búfer de cuadros en la pantalla, el modo VGA lo estiraba, Adrian tenía que tener cuidado y dibujar todo en la resolución en la que se suponía que el juego debía funcionar (320x200).
"Adrian y Kevin trabajaron directamente en Deluxe Paint, en ese momento no teníamos herramientas de escaneo". - John Carmack, programador.
Los recursos gráficos se dividen en dos categorías:
- Elementos de menú 2D suministrados con el juego en archivos VGAGRAPH, VGAHEAD y VGADICT
- Elementos de modo 3D (paredes y sprites) suministrados en el archivo VSWAP
Proceso de producción de recursos
Después de generar los recursos gráficos, la herramienta IGRAB empaquetó todos los ILBM en un archivo y generó un archivo de encabezado C con identificadores de recursos. El motor se refiere al recurso directamente usando estas ID.
Canalización de creación de recursos para un menú 2D.En el código del motor, el uso de recursos fue estrictamente prescrito en la enumeración. Esta enumeración es el desplazamiento en la tabla HEAD, del que se toma el desplazamiento en el archivo DATA. Gracias a esta capa de enlaces indirectos, los recursos podrían regenerarse y reordenarse sin modificar el código fuente.Dato interesante: tal sistema provocó problemas después de publicar el código fuente. El encabezado .h en su paquete no coincidía con los archivos de recursos de la versión shareware o versiones anteriores de
Wolfenstein 3D . Los titulares publicados fueron tomados de Spear of Destiny. Puede ver el caos gráfico que esto generó en el artículo “Compilamos, como en el patio 1992” en el sitio fabiensanglard.net [
traducción del artículo sobre Habré].
Una
guía oficial de Wolfenstein 3D publicada en 1992 explica el proceso creativo. Contiene muchos dibujos de Tom Hall y muestra un montón de bocetos realizados por Tom y traducidos a píxeles por un equipo de artistas.
“Cuando el director creativo de Id, Tom Hall, tuvo la idea de la pantalla, le dio un boceto a Adrian Carmack. Los siguientes son ejemplos de algunos bocetos del diseño de la pantalla de bienvenida de Tom. Elegí el tercer draft para el juego ". - "La guía oficial de Wolfenstein 3D"
El manual también contiene varias fotografías del equipo de aquellos tiempos; Te aconsejo que lo leas para entender el contexto.
[Diseño de la guía creado en NeXT ColorStation. Este fue el único caso de usar la máquina de Steve Jobs para crear
Wolfenstein 3D , a pesar de que la identificación la compró en diciembre de 1991. Más tarde, en 1993, la serie de estaciones de trabajo NeXT se convirtió en un elemento clave en el transportador de producción de
Doom .]