¿Cómo crear un océano en Blender?

¿Cómo crear un océano en Blender?

El agua es una de las sustancias cuya elaboración varía según su estado, tamaño y dinámica. No es lo mismo el agua de un recipiente que un océano profundo cuyo fondo ni se percibe y una superficie agitada por las olas. 

Paso obsoleto 

Gran plano subdividido.

Hace años, cuando se quería crear un océano, los primeros dos pasos eran crear un plano grande y subdividirlo. La idea era que se moverían los vértices formados de tal manera que formaría un oleaje. Eso quedó obsoleto, pues cualquier malla sin subdividir se convierte automáticamente en un océano con un solo modificador.

Creamos un océano con olas


Usamos cualquier maya (máyus+A y seleccionamos cualquiera en el submenú Malla) o perdonamos la vida al cubo por defecto y lo seleccionamos. En Propiedades de modificadores (🔧), agregamos el modificador en Dinámicas>Océano. Inmediatamente tendremos un plano ondulado con varias opciones, te recomiendo que juegues con ellas para observar los cambios:
  • Geometría:
    • Generar: cualquier malla se transforma en océano.
      • Repetición en: si quieres llegar al horizonte, no hace falta contar con una malla enorme, sino que se conectan repeticiones en serie en los bordes limítrofes. No admite valores negativos, por lo que se copiará a la derecha o fondo visto desde el eje X. Si no se corrige, se puede notar la repetición del mismo mar.
        • X: se repite en el eje X, el rojo, es decir, hacia el fondo.
        • Y: lo mismo pero en el eje Y, es decir, hacia la derecha.
      • Resolución: la cantidad de detalle, similar al modificador Subdividir superficie. Ajusta los valores a las capacidades de tu ordenador.
        • Vistas: el detalle que ves mientras trabajas con la malla. Mantenlo más bajo que Procesar para editar con fluidez. De vez en cuando, usa el mismo valor que en Procesar para ver los detalles que solo sean visibles cuando se procese.
        • Procesar: el detalle final. Se suele dejar con un valor superior (p.ej. 16, 32 o 64) a Vista, que a su vez dependerá de lo cerca que se vea el océano (mayores resoluciones dejan pequeños artefactos) y, por supuesto, la carga que quieras darle a tu tarjeta gráfica. La espuma también requiere resoluciones altas, pues Blender la genera muy pixelada.
      • Tiempo: produce el movimiento de las olas necesario para las animaciones.
      • Profundidad: inversamente proporcional al número de olas y directamente proporcional a su tamaño.
      • Tamaño: aumenta el tamaño de la malla y, aunque no afecta a la altura de las olas, estas escalan en extensión con la malla en lugar de formarse más.
      • Tamaño espacial: el tamaño de la malla en metros. No hace falta que la agrandes con Escalar (S). Es preferible aumentarlo para evitar la repetir demasiado en Repetición en.
      • Semilla aleatoria: se generan otras olas en otras posiciones, pero ajustándose a los mismos requisitos.
    • Desplazar: el uso del modificador descrito en el paso obsoleto.
  • Olas: los cambios son más notorios cuando las olas son grandes y, en cada uno de los factores inferiores, cuando se llevan al extremo.
    • Escala: aplana en valores cercanos a 0 y eleva las olas al alejarse de esta cifra, pero destrozando la malla en valores altos (los artefactos que mencioné antes). Usa valores entre 0-1, superándolo cuando compruebes que las olas grandes están lo suficientemente suavizadas para que no haya cruces en la malla.
    • Onda más pequeña: controla las variaciones de altura del agua. Si se eleva, se aplanará la malla.
    • Encrespar: suaviza en valores bajos o estrecha la ola hasta destrozar la malla en valores altos (estos artefactos pueden pasarse por alto en resoluciones bajas, pero son visibles en las altas). Como en Escala, mejor mantenerlo entre 0-1. Nos sirve para controlar la cantidad de espuma.
    • Velocidad viento: suaviza las olas. Puede ser contraintuitivo pero, cuanto menor sea la velocidad del viento, más visibles serán las olas. 
    • Alineación: enfila las olas. En alta mar, si no hay un viento en una dirección concreta, no es tan importante, pero a la costa se acercan filas de olas más o menos paralelas entre sí.
    • Dirección: orienta todas las olas, rotándolas en el eje Z. Fácilmente visible si maximizas la alineación.
    • Amortiguación: actúa con Alineación para situar las olas perpendicularmente al viento hipotético.
  • Espuma: añade espuma a los bordes de las olas. Puede ajustarse con Encrespar, en el apartado anterior; Cobertura, que acepta valores menores a 0, y Disipación espuma, que está en Capturar e indica la duración de dicha espuma.
    • Capa de datos: escribimos "espuma" o "foam", sin las comillas. Esto nos servirá en el material. 
    • Cobertura: la cantidad de espuma. Se puede reducir por debajo de 0.
  • Espectro:
  • Capturar (Bake): cuando tienes una simulación exigente, lo guardas para que no sea necesario calcular su comportamiento todas las veces. Así puedes visualizarla de forma fluida (nunca mejor dicho para este caso). Tarda un poco en completarse.
    • Ruta del caché: la carpeta donde guardarás, en forma de imágenes, el movimiento y características de las olas.
    • Fotograma: para vídeos.
      • Inicio: el primer fotograma en el que empieces a capturar.
      • Fin: el último fotograma que captures.
    • Disipación espuma: el tiempo que dura la espuma. 

Material

Tenemos las olas, pero queremos que sean de agua y se visualicen como si estuviéramos en un viaje oceánico. Si quieres un océano pero de otro material, sáltate este paso. De hecho, el océano que hemos hecho antes puede servirnos para crear un cielo nublado.

Cielo 

Antes que nada, como el mar, su color va a ser dependiente del cielo. Tienes varias opciones. La primera y más limitada es cambiar el Color y la Intensidad de la luz en Propiedades de entorno (🌍). 


Una alternativa mejor es usar un HDRI. En Propiedades de entorno, pulsamos en el círculo amarillo (🟡) de Color y seleccionamos Imagen de entorno. Usamos un HDRI que hayamos descargado y tenga sentido en la escena (p.ej. un cielo despejado o nublado). Puedes descargar muchos de forma gratuita. Si la dirección de la luz no es la adecuada, puedes rotarlo. Si le has dado antes a Imagen de entorno y quieres dejarlo como estaba, vuelve a pulsar y en Vincular>Eliminar.

Puesta de Sol (Nishita) en Cycles.

La alternativa que no requiere descargas ni archivos es la textura Cielo ( 🟡>Textura>Cielo). El Tipo de cielo Nishita solo está disponible en Cycles (Ni siquiera en Eevee Next). Con este puedes crear puestas de Sol.

Cielo con dos Soles.

En Sombreado, con el Tipo de sombreador>Entorno, puedes usar los nodos como normalmente se hace con los materiales y crear escenas interesantes.

Agua y espuma básica

Los nodos del material del agua.

A continuación seguimos con el material propiamente dicho. En la pestaña de Sombreado (máyus+F3), creamos o seleccionamos un material. En el BSDF Principista, cambiamos el Color base a negro y bajamos a 0 la Rugosidad para que refleje el color del cielo. Aunque es más importante con materiales transparentes y no se va a notar mucho, también podemos cambiar el IR (Índice de Refracción) a 1.333 y la Especularidad a 0.25. Añadimos (máyus+A) el nodo Atributo (Entrada>Atributo) y conectamos Color a Color base del BSDF Principista. Al hacerlo, la malla adquirirá varios colores pero no desesperes. En Atributo, donde pone Name, escribe "espuma" o "foam" (sin comillas), es decir, lo que escribiste en Capa de datos de la pestaña de Espuma en el modificador. Si no has alterado Cobertura, quizás haya demasiada espuma. Redúcela (puede ser menor a 0) según tus necesidades.

Animar

Con vaivén

Primer fotograma.

En el modificador Océano, Tiempo nos va a servir para que fluyan las olas. En la Línea del tiempo (Máyus+F12) que tenemos abajo, si no hemos modificado nada, vamos al fotograma 0. En Tiempo del modificador Océano, escribimos 0 y pulsamos el punto de su derecha para Animar propiedad. Cambiará a un rombo y Tiempo se volverá de color amarillo.

Fotograma 30.
Los fotogramas clave no se ven porque tenía seleccionado Vista>Sólo lo seleccionado.

En la Línea del tiempo cambiamos de fotograma. Ten como referencia que, por defecto, hay 24 fotogramas por segundo. Voy a seleccionar el fotograma 30, que es poco más de un segundo después. En Tiempo del modificador Océano cambio el 0 por el 1 y vuelvo a pulsar en el punto de su derecha, que se vería como un rombo vacío.

Abriendo el editor de curvas.
Desde la línea del tiempo se hace más rápido con atajos, pero veamos cómo se hace en el Editor de curvas.

En lugar de repetir este proceso para el vaivén de las olas durante toda la animación, vamos a decirle a Blender que esto va a suceder en bucle, todo el tiempo y a velocidad constante. Los siguientes pasos los podemos realizar de dos formas. Voy a describir la larga, pero la corta se hace desde la Línea del tiempo con los atajos en cursiva que incluiré.

Interpolación lineal.

En el Editor de curvas (máyus+F6), seleccionamos los fotogramas clave, hacemos clic derecho y Modo de interpolación (T)>Lineal. Esto evitará que acelere al inicio y final de cada ciclo, desplazándose las olas a velocidad constante.

Repetición con desplazamiento.

Todavía no le hemos indicado que repita el vaivén todo el tiempo. En el mismo Editor de curvas, desplegamos Cubo_acción (o como se llame en tu caso) para ver Tiempo (Océano). A la derecha, en la pestaña de Modificadores (N si no se despliega), agregamos el modificador Repetición. Las curvas trazarán unos dientes de sierra, pero no hemos acabado. Tanto en Modo inicial como Modo final, elegimos Repetir con desplazamiento (máyus+E>Extrapolación lineal).

Sin vaivén

Si tan solo queremos que las olas se muevan en un sentido, en Tiempo del modificador Océano, escribimos #frame y pulsamos Entrar. A continuación, escribimos frame/2, o el cálculo que creamos adecuado, y quedará todo hecho.

Procesado rápido

Capturando el océano.

Debemos capturar (bake) en el modificador Océano. Crea o elige bien la carpeta de destino porque la vamos a necesitar. Esto tarda un rato, pero va a acelerar mucho el proceso que solo funciona en Cycles e Eevee Next, siendo este último donde se aprovecha la velocidad de procesamiento.

Después de esto, en otro archivo nuevo (podemos tener abierto Blender varias veces), creamos un plano, lo escalamos y subdividimos 100 veces como antiguamente. En Sombreador, creamos un material y añadimos los nodos Coordenadas de texturizado (Entrada>Coordenadas de texturizado), Mapeo (Vector>Mapeo) e Imagen (Textura>Imagen). Las conexiones son Objeto-Vector, Vector-Vector y Color-Color base. Si tenemos el complemento Node Wrangler, estos tres notos se añaden al seleccionar el BSDF Principista y pulsar Ctrl+T, pero tendremos que cambiar la primera conexión entre los nodos.

Primeros nodos del procesado rápido.
Coordenadas de texturizado está conectado por Objeto-Vector.

En Imagen, vamos a donde hemos guardado el caché. Es conveniente que las imágenes estén ordenadas alfabéticamente, pues la espuma también se guarda allí y no la necesitamos. Seleccionamos la primera imagen del agua (disp_0001.exr). En Origen, cambiamos Imagen fija a Secuencia de imágenes y en Fotogramas elegimos tantos como tuviera el océano que guardamos (250 por defecto). Activamos Cíclica y Refresco automático.


A la derecha del nodo de Imagen, añadimos Separar en XYZ (Convertir>Separar en XYZ) y Combinar XYZ (Convertir>Combinar XYZ) conectando cada letra con su idéntica. A este le sigue Desplazamiento vectorial (Vector>Desplazamiento vectorial), al que le reducimos la Escala y conectamos a Desplazamiento del nodo Material. Al BSDF Principista le cambiamos el Color base a negro, Rugosidad a 0, IR a 1.333 y la transmisión a 1 como el océano básico. 


En Propiedades de Material, en dicho material, en Opciones>Superficie>Desplazamiento, seleccionamos Desplazamiento y relieve. Por último, añadimos el modificador Subdividir superficie hasta un Nivel de 4 como máximo. Si se ha vuelto un plano azul, en Modo objeto, selecciona el plano y Ctrl+A>Escala.

Para preparar el procesado, vamos a Propiedades de procesamiento (📷) con el motor Eevee (Next, posterior a 4.2).
  • Trazado de rayos:
    • Resolución 1:1
    • Trazado de pantalla:
      • Precisión: 1.
      • Grosor: al mínimo.
  • Desenfoque de movimiento: Activado.
  • Administración del color: 
    • Retoque de apariencia: Alto contraste.
    • Exposición: 0.2.
    • Gamma: 1.2. 

Océano tranquilo animado.

Con estos pasos, debería procesarse rápidamente, incluso de forma animada. En este ejemplo, he usado las texturas capturadas del océano anterior. Si has creado uno con olas más prominentes también se manifestarán en este método. Puedes guardarlo como recurso para aplicarlo rápidamente.

Entradas relacionadas

Comentarios