Cambiar el Skybox en Unity — Cielo personalizado

Introducción — ¿Qué es el Skybox en Unity?

El Sky­box es como una ima­gen que rodea com­ple­ta­mente una esce­na en Uni­ty y per­manece fija sin impor­tar que tan­to inten­te­mos acer­carnos. El propósi­to del Sky­box es rep­re­sen­tar el hor­i­zonte lejano de la esce­na y es posi­ble ele­gir una tex­tu­ra para hacerlo. 

En este artícu­lo ver­e­mos cómo cam­biar el Sky­box que viene por defec­to en Uni­ty. Esto nos per­mi­tirá per­son­alizar el cielo de la esce­na para nue­stro juego. El sigu­iente vídeo resume los pasos para mod­i­ficar el Sky­box de la esce­na, sigue leyen­do para ten­er infor­ma­ción detallada.

🟢 Cómo cam­biar el CIELO en Uni­ty
 

Primer paso — Conseguir textura HDR para el Skybox

Para mod­i­ficar el Sky­box de la esce­na nece­sitare­mos tex­turas espe­ciales, una de las que se puede usar son las tex­turas HDR (High Dynam­ic Range), son tex­turas que tienen más infor­ma­ción que las que común­mente uti­lizamos y son útiles para ilu­mi­nar esce­nas, ya que se puede incre­men­tar o dis­minuir su inten­si­dad y la tex­tu­ra responde apropiadamente.

Sue­lo descar­gar tex­turas de la pági­na HDRI Haven, tienen una galería bas­tante intere­sen­ta con este tipo de imá­genes, las descar­gas son gra­tu­itas y además se puede ele­gir entre cal­i­dades que van des­de 1K a tex­turas 8K, como se puede ver en la figu­ra 2.

HDRI Haven

galeria de texturas ambientales hdr para descargar
Fig. 1: Primero se nece­si­ta con­seguir una tex­tu­ra HDR, en la pági­na hay dis­tin­tas cat­e­gorías y se pueden descar­gar en dis­tin­tas resoluciones.
descarga de textura hdr 2k para cambiar skybox en unity
Fig. 2: En mi caso voy a descar­gar una tex­tu­ra en res­olu­ción 2K.

Pasos para cambiar el Skybox del cielo en Unity

Antes de mostrar el pro­ce­so com­ple­to voy a pon­er una lista de pasos para resumir el pro­ce­so, si ya tienes expe­ri­en­cia con Uni­ty puede que te resulte útil.

1. Impor­tar la tex­tu­ra HDR en Uni­ty y en el inspec­tor con­fig­u­rar su parámetro "Tex­ture Shape" como "Cube".

2. Crear un mate­r­i­al nue­vo y con­fig­u­rar el tipo de Shad­er como Sky­box > Cubemap.

3. Asig­nar la tex­tu­ra HDR al cam­po "Cube­map HDR" de nue­stro mate­r­i­al. Con esto ya ten­emos prepara­do el Sky­box para cam­biar­lo por el que viene por defecto.

4. Ir a la ven­tana Win­dow > Ren­der­ing > Light­ing, sec­ción Envi­ron­ment y en el cam­po Sky­box, selec­cionar el mate­r­i­al que hemos con­fig­u­ra­do en el paso anterior.

5. (Opcional) En caso de la tex­tu­ra no ten­ga bue­na cal­i­dad, mod­i­ficar el for­ma­to de com­pre­sión o descar­gar una tex­tu­ra de may­or resolución.

Procedimiento detallado para cambiar el Skybox del cielo en Unity

Una vez que impor­ta­mos la tex­tu­ra HDR en Uni­ty vamos a crear un nue­vo mate­r­i­al, en la car­pe­ta Assets, clic dere­cho, crear y luego selec­cionamos material.

ventana de creación en unity, material nuevo.
Fig. 3: Creamos un mate­r­i­al para hac­er el Skybox.

Le ponemos un nom­bre y luego lo selec­cionamos para ver sus propiedades en el inspector.

textura hdr y material para skybox en unity
Fig. 4: Selec­cionamos el mate­r­i­al para ver sus parámet­ros en el inspector.

En la cabecera del inspec­tor, ubi­camos el cam­po "Shad­er" que por defec­to se encuen­tra con­fig­u­ra­do en "Stan­dard" y lo cam­bi­amos por el Shad­er tipo "Sky­box > Cube­map", como se obser­va en las fig­uras 5 y 6.

cambio de tipo de shader en unity
Fig. 5: Hace­mos clic en la pes­taña Shad­er para cam­biar el tipo de Shader.
seleccion de shader skybox cubemap en unity
Fig. 6: Selec­cionamos el Shad­er Cube­map den­tro de la sec­ción Skybox.

Aho­ra el inspec­tor para este mate­r­i­al se va a ver mostrar con otros parámet­ros que antes, como vemos en la figu­ra 7.

shader cubemap en unity
Fig. 7: Así se ve el nue­vo inspec­tor del material.

En prin­ci­pio nos intere­sa asig­nar nues­tra tex­tu­ra HDR al cam­po "Cube­map HDR" pero primero ten­emos que hac­er­le algunos ajustes a la ima­gen. Selec­cionamos la tex­tu­ra HDR que hemos importado.

textura hdr y material para skybox en unity
Fig. 8: Selec­cionamos la tex­tu­ra HDR que impor­ta­mos pre­vi­a­mente para ver sus parámet­ros en el inspector.

El cam­po "Tex­ture Shape" lo cam­bi­amos a Cube y apli­camos los cambios

cambio de tipo de textura hdr a cube para utilizar en un skybox tipo cubemap en unity
Fig. 9: Cam­bi­amos el tipo de tex­tu­ra a Cube para poder usar­la en el Sky­box Cubemap.
ventana inspector de una textura hdr para skybox en unity
Fig. 10: Cuan­do ter­mi­namos de con­fig­u­rar la tex­tu­ra apli­camos los cambios.

Esto nos per­mi­tirá usar la tex­tu­ra para el mate­r­i­al Sky­box, podemos arras­trar la tex­tu­ra direc­ta­mente al cam­po o pul­sar el botón "Select" y selec­cionarla en la ven­tana emergente. 

inspector de un material skybox cubemap en unity
Fig. 11: Aho­ra podemos arras­trar la tex­tu­ra al espa­cio Cube­map en el inspec­tor del material.
seleccion de cubemap hdr para un skybox en unity
Fig. 12: Tam­bién se puede hac­er clic en el botón select y selec­cionarlo en la ven­tana emergente

Si todo sale cor­rec­ta­mente, deberías ver un resul­ta­do como el de la figu­ra 13.

inspector de un material skybox cubemap en unity con textura de cielo asignada
Fig. 13: Con esto se tiene el Sky­box prepara­do para utilizar.

Aho­ra que ten­emos el mate­r­i­al Sky­box con­fig­u­ra­do, vamos a apli­car­lo a la esce­na. Para eso ten­emos que abrir la pes­taña "Light­ing", en la figu­ra 14 se ve dónde se encuen­tra esa ven­tana si no la tienes abierta.

ventana configuración de iluminación en unity
Fig. 14: Abri­mos la ven­tana Light­ing para cam­biar el Skybox.

Den­tro de la ven­tana Light­ing vamos a la sec­ción "Envi­ron­ment" y en el primer cam­po lla­ma­do "Sky­box Mate­r­i­al" asig­namos el mate­r­i­al Sky­box que hemos con­fig­u­ra­do anteriormente.

ventana de configuración de entorno lighting en unity
Fig. 15: Den­tro de la pes­taña Light­ing vamos a la sec­ción Envi­ron­ment y selec­cionamos el Skybox.
como cambiar skybox en unity
Fig. 16: Selec­cionamos la tex­tu­ra HDR Cube­map que con­fig­u­ramos previamente.

En la figu­ra 17 se ve el primer resul­ta­do de hac­er esto, la tex­tu­ra no se ve del todo bien debido al tipo de compresión.

cambio de skybox en unity, la textura hdr tiene baja calidad
Fig. 17: Primer resul­ta­do, el Sky­box está apli­ca­do pero la ima­gen tiene una cier­ta pér­di­da de calidad.

Podemos selec­cionarla y en el inspec­tor cam­biar la com­pre­sión a "RGB 16", "RGB 24" o "RGBA 32", esto traerá un aumen­to en la cal­i­dad pero tam­bién en el peso de la ima­gen. Se puede pro­bar descar­gar dis­tin­tas cal­i­dades de tex­tu­ra HDR y pro­bar dis­tin­tos for­matos para encon­trar un bal­ance entre cal­i­dad y rendimiento.

configuracion de textura en unity, formato rgba 32
Fig. 18: Selec­cionamos la tex­tu­ra HDR y mod­i­fi­camos el formato.

En la figu­ra 19 vemos el resul­ta­do final al que he lle­ga­do. Aho­ra que hemos cam­bi­a­do el nue­vo Sky­box en la esce­na, podremos hac­er Bakes de ilu­mi­nación para con­seguir mejores resultados.

cambio de skybox en unity, la textura hdr tiene buena calidad
Fig. 19: La cal­i­dad ha mejo­ra­do pero así tam­bién el peso de la imagen.

Scroll al inicio
Secured By miniOrange