# Build

Build es un motor de juego para videojuegos de disparos en primera persona creado por Ken Silverman para 3D Realms. Al igual que en Doom, el motor Build representa su mundo en una malla bidimensional, utilizando formas cerradas en 2D llamadas sectores, y usando objetos planos simples llamados sprites para poblar el mundo creado.
Es considerado como un motor 2.5D, dado que la geometría básica del mundo es bidimensional con el añadido de una componente en altura, haciendo que cada sector pueda tener distintas alturas entre techo y suelo, e incluso permitiendo distintos grados de inclinación del propio sector. El motor renderiza el mundo de tal forma que parece en 3D. Sin embargo, la perspectiva únicamente depende de la distancia horizontal.

## Características técnicas
### Sectores

Build permitía la creación de mundos más complejos y flexibles que otros motores, como el de Doom, debido a la representación que tenía de la información del mundo. Los sectores podían ser manipulados en tiempo real; su forma, altura y ángulos de inclinación eran totalmente variables, sin necesidad de recalcular la información de renderizado.

### Vóxeles

Las últimas versiones del motor Build permitían sustituir los tiles por objetos 3D hechos con vóxeles. Esta características apareció demasiado tarde para ser utilizada en Duke Nukem 3D, pero fue vista en juegos posteriores que utilizaban Build. Durante varios años, Ken Silverman trabajó en un motor gráfico moderno basado enteramente en vóxeles, llamado Voxlap.

## Videojuegos que utilizan Build como motor gráfico

Build es más conocido como el motor que utilizó el videojuego Duke Nukem 3D, aunque fue utilizado para un gran número de juegos:
* Videojuegos que utilizaron directamente Build
   * Blood (1997)
   * Duke Nukem 3D (1996)
   * Exhumed (PowerSlave en Estados Unidos) (1996)
   * Shadow Warrior (1997)
   * TekWar (1995)
   * Witchaven (1995)
   * Witchaven II: Blood Vengeance (1996)
* Videojuegos basados en el código fuente de Duke Nukem 3D:
   * Extreme Paintbrawl (1998)
   * NAM (1998)
   * Redneck Deer Huntin (1997)
   * Redneck Rampage (1997)
   * Redneck Rampage Rides Again (1998)
   * WW2 GI (1999)
* Videojuegos no publicados
   * Legend of the Seven Paladins (completo pero nunca publicado, al utilizar ilegalmente el motor Build)
   * Fate (sin terminar)
   * Corridor 8: Galactic Wars (sin publicar, código fuente disponible)

## Código fuente y versiones

El código fuente de Build, escrito en C, fue liberado el 20 de junio de 2000.

### ICCULUS port

Ryan C. Gordon (alias ICCULUS) hizo el primer port del motor utilizado SDL. Fue desarrollado originalmente en Linux, para ser portado más tarde a una versión para Windows con Cygwin y finalmente a una versión nativa para Windows a través del compilador Watcom C++.

### JonoF port

Un segundo port fue realizado por Jonathon Fowler (alias JonoF), esta vez comenzando desde Windows y terminando en Linux. Este port hacía uso de DirectDraw en Windows, siendo por norma general más rápido.

### Polymost

Tras la publicación del código fuente de Duke Nukem 3D, Ken Silverman comenzó la tarea de hacer que Build trabajara realmente en 3D. El renderizador Polymost permite acelerar gráficos en 3D a través de OpenGL e introduce texturas en alta resolución en distintos formatos. Algunas versiones posteriores de Duke Nukem 3D han hecho uso de Polymost.