Un skybox es un método para crear fondos que hacen que un nivel de videojuego parezca más grande de lo que es en realidad. [1] Cuando se utiliza un skybox, el nivel se encierra en un cuboide . El cielo , las montañas distantes, los edificios distantes y otros objetos inalcanzables se proyectan sobre las caras del cubo (usando una técnica llamada mapeo cúbico ), creando así la ilusión de un entorno tridimensional distante. Un skydome emplea el mismo concepto pero utiliza una esfera o un hemisferio en lugar de un cubo.
El procesamiento de gráficos 3D es costoso en términos computacionales, especialmente en juegos en tiempo real, y presenta múltiples límites. Los niveles deben procesarse a velocidades tremendas, lo que dificulta la representación de paisajes celestes extensos en tiempo real. Además, los gráficos en tiempo real generalmente tienen búferes de profundidad con una profundidad de bits limitada, lo que limita la cantidad de detalles que se pueden representar a distancia.
Para evitar estos problemas, los juegos suelen utilizar skyboxes. Tradicionalmente, se trata de simples cubos con hasta seis texturas diferentes colocadas en las caras. Mediante una alineación cuidadosa, un espectador que se encuentre exactamente en el medio del skybox percibirá la ilusión de un mundo 3D real a su alrededor, compuesto por esas seis caras.
A medida que un espectador se desplaza por una escena en 3D, es habitual que la caja del cielo permanezca estacionaria con respecto al espectador. Esta técnica crea la ilusión de que los objetos de la caja del cielo están infinitamente lejos, ya que no muestran ningún movimiento de paralaje , mientras que los objetos 3D más cercanos al espectador parecen moverse. Esta suele ser una buena aproximación a la realidad, donde los objetos distantes, como las nubes, las estrellas e incluso las montañas, parecen estacionarios cuando el punto de vista se desplaza a distancias relativamente pequeñas. Sin embargo, los diseñadores deben tener cuidado con los objetos que incluyen en una caja del cielo fija. Si se incluye un objeto de tamaño conocido (por ejemplo, un coche) en la textura y es lo suficientemente grande como para que el espectador lo perciba como cercano, la falta de movimiento de paralaje puede percibirse como poco realista o confusa.
La fuente de un skybox puede ser cualquier tipo de textura , incluidas fotografías, imágenes dibujadas a mano o geometría 3D pre-renderizada. Por lo general, estas texturas se crean y se alinean en 6 direcciones, con ángulos de visión de 90 grados (que cubren las 6 caras del cubo).
Los skyboxes simples basados en texturas tenían serias desventajas. No se podían animar y todos los objetos aparecían igualmente distantes en el infinito. Parecían simples y, debido a ciertos límites, era difícil para los diseñadores ser creativos con esta característica. Pero a partir de finales de la década de 1990, algunos diseñadores de juegos crearon pequeñas cantidades de geometría 3D para que aparecieran en el skybox para crear una mejor ilusión de profundidad, además de un skybox tradicional para objetos muy lejanos. Este skybox construido se colocaba en una ubicación inalcanzable, generalmente fuera de los límites de la parte jugable del nivel, para evitar que los jugadores tocaran el skybox.
En versiones anteriores de esta tecnología, como las presentadas en el juego Unreal , esto se limitaba a los movimientos en el cielo, como los movimientos de las nubes. Los elementos se podían cambiar de un nivel a otro, como las posiciones de los objetos estelares o el color del cielo, dando la ilusión del cambio gradual del día a la noche. El skybox en este juego todavía parecería estar infinitamente lejos, ya que el skybox, aunque contiene geometría 3D, no mueve el punto de observación junto con el movimiento del jugador a través del nivel.
Los motores más nuevos, como el motor Source , continúan con esta idea, permitiendo que la skybox se mueva junto con el jugador, aunque a una velocidad diferente . Debido a que la profundidad se percibe en el movimiento comparado de los objetos, hacer que la skybox se mueva más lento que el nivel hace que parezca estar muy lejos, pero no infinitamente lejos. También es posible, pero no obligatorio, incluir geometría 3D que rodee el entorno de juego accesible, como edificios o montañas inalcanzables. Se diseñan y modelan a una escala más pequeña, generalmente 1/16, y luego el motor los renderiza para que parezcan mucho más grandes. Esto da como resultado menos requisitos de CPU que si se renderizaran en tamaño completo. El efecto se conoce como "skybox 3D".
En el juego Half-Life 2 , este efecto se usó ampliamente para mostrar La Ciudadela , una enorme estructura en el centro de la Ciudad 17. En los capítulos finales del juego, el jugador viaja a través de la ciudad hacia la Ciudadela, el efecto de la caja del cielo hace que crezca cada vez más progresivamente con el movimiento del jugador, pareciendo completamente parte del nivel. Cuando el jugador llega a la base de la Ciudadela, se divide en dos partes. Una pequeña sección inferior es parte del mapa principal, mientras que la sección superior está en la caja del cielo 3D. Las dos secciones se combinan a la perfección para aparecer como una sola estructura.