Modificador Océano#
El modificador Océano es una herramienta para simular y generar la superficie deformante de un océano y sus texturas asociadas, usadas para procesar los datos de simulación. Está destinado a simular ondas amplias y espuma oceánica.
Se trata de una implementación del sistema de código abierto Ocean Toolkit de Houdini.
Opciones#
- Geometría
- Generar
Al usar este método, se creará una malla repetitiva con forma de cuadrícula, que coincidirá exactamente con la resolución de los datos de la simulación.
Cuando se genere una malla de superficie, la malla original del objeto será completamente reemplazada por la cuadrícula del océano; esto también incluirá a cualquier dato generado a partir de modificadores anteriores en la pila. También se agregará un mapa UV, mapeando el espacio de 0.0 a 1.0 a la cuadrícula de la simulación.
- Repetición en X, Y
Controlará la cantidad de veces que la cuadrícula deberá ser repetida en las direcciones X e Y. Las coordenadas UV para esas áreas repetidas de la malla, continuarán por fuera del espacio 0.0 a 1.0 de las coordenadas.
- Desplazar
Al usar este método, se usará la geometría original del objeto, en vez de reemplazarlo. Sus vértices serán desplazados a lo largo de su eje local Z.
- Resolución Vistas, Procesamiento
El principal control de calidad contra velocidad, del motor de simulación. Determinará la resolución de las cuadrículas 2D internas generadas por la simulación, para la Vista 3D o el procesamiento final.
Las cuadrículas internas serán calculadas como potencias de dos elevadas al valor de resolución, por lo tanto un valor de resolución de
16
, creará unos datos de simulación con un tamaño de256 × 256
. Cuánto más alta sea la resolución, más detalles se producirán y también será más lento su cálculo.Nota
Al usar el método Generar, este valor de resolución también determinará la resolución de la superficie de la malla generada, que será igual a la resolución de los datos internos de la simulación.
- Tiempo
El tiempo en el que será evaluada la superficie del océano. Para crear un océano animado, se necesitará animar este valor. La velocidad a la que esté cambiando el valor de tiempo determinará la velocidad de animación de las ondas.
- Profundidad
La profundidad constante del lecho del océano, bajo el área simulada. Valores menores permitirán simular aguas menos profundas, produciendo detalles de una frecuencia mayor, así como ondas más pequeñas.
- Tamaño
Un factor de escala simple, que no afectará la altura de las ondas ni el comportamiento de la simulación.
- Tamaño espacial
El ancho del área de la superficie del océano que será simulada, expresada en metros. También determinará el tamaño de la malla generada o del área que será desplazada. Por supuesto, será posible escalar el objeto que contenga al modificador Océano en modo Objeto, para retocar el tamaño aparente en la escena.
- Semilla de aleatoriedad
Una Semilla distinta producirá un resultado diferente de la simulación.
- Generar normales
Simulará datos adicionales de mapa de normales. Esto podrá ser usado por la textura del Océano, al ser mapeados a sus Normales como un mapa de relieve, y también habilitará la generación de secuencias de imágenes de mapas de normales al capturar.
Ondas#
- Escala
Un control genérico de escala para la amplitud de las ondas. Aproximará la altura o profundidad de las ondas por encima o por debajo del cero. En vez de sólo escalar el objeto del océano en el eje Z, esto escalará todos los aspectos de la simulación, el desplazamiento en X e Y, así como también su espuma y normales correspondientes.
- Onda más pequeña
Un límite inferior para el tamaño de las ondas generadas. Actuará de manera similar a un filtro de paso bajo, eliminando el detalle de alta frecuencia de las ondas.
- Encrespar
El grado de encrespamiento de las crestas de las ondas. Con un valor de 0, la superficie del océano sólo será desplazada hacia arriba o abajo en la dirección Z, pero con valores mayores, las ondas también serán desplazadas lateralmente en X e Y, permitiendo crear crestas más definidas en las ondas.
- Velocidad viento
La velocidad del viento, expresada en metros/segundo. Con velocidades bajas, las ondas estarán restringidas a un tamaño pequeño.
- Alineación
La direccionalidad de la forma de las ondas, debida al viento. Con un valor de 0, el viento y las ondas se encontrarán aleatoria y uniformemente orientadas. Con mayores valores de Alineación, el viento comenzará a soplar en una dirección más constante, haciendo que las ondas luzcan más comprimidas y alineadas en una misma dirección.
- Dirección
(Cuando la Alineación fuera distinta de 0) Es la dirección, expresada en grados, a la que se encontrarán alineadas las ondas (usando el eje local X como referencia).
- Amortiguación
(Cuando la Alineación fuera distinta de 0) Definirá el grado en que las ondas reflejadas serán amortiguadas. Tendrá el efecto de hacer que el movimiento de las ondas sea más direccional (y no sólo su forma).
Con una Amortiguación de 0.0, las ondas se reflejarán entre sí en todas las direcciones; mientras que con una Amortiguación de 1.0, las ondas inter-reflejadas serán amortiguadas, permaneciendo sólo las ondas que viajen en la dirección del viento.
Espuma#
Permitirá simular una capa extra de datos de espuma.
La misma podrá ser utilizada por la textura del océano para ser usada en el texturizado (tal vez como una máscara), asimismo habilitará la generación de secuencias de imágenes de espuma al capturar el océano.
- Capa de datos
Nombre opcional para la capa de datos de vértices, usada por el modificador Océano para almacenar mapas de espuma en forma de atributo de Color. Éste será requerido para acceder a los datos de espuma desde el motor de procesamiento.
- Cobertura
Permitirá retocar la cantidad de espuma que cubrirá a las ondas; los valores negativos reducirán la cantidad de espuma (dejando sólo en las crestas más altas), mientras los valores positivos la aumentarán. Normalmente variará entre -1.0 y 1.0.
Rocío#
Generará un mapa de dirección para el rocío, en forma de atributo de Color. Este mapa podrá ser usado para definir la velocidad de partículas de rocío.
- Mapa de rocío
Nombre del atributo de Color usado para el mapa de dirección para el rocío.
- Invertir
Permitirá invertir el mapa de dirección para el rocío.
Espectro#
- Espectro
Usado para elegir el modelo de espectro de ondas a usar. Los espectros de ondas son usados para describir cómo se mueve la energía a través de las ondas a distintas frecuencias. La energía viajará a través de las ondas de manera distinta, dependiendo de la profundidad del agua y de la velocidad del viento.
- Océano turbulento
Usar para océanos turbulentos con espuma (método Phillips).
- Océano calmo
Usar para grandes áreas oceánicas en calma, en donde éste se extienda por kilómetros y el viendo sople durante días, permitiendo que las ondas alcancen un punto de equilibrio (método Pierson-Moskowitz).
- Océano calmo (crestas definidas)
Similar a Océano calmo, sin embargo las ondas continuarán creciendo con el tiempo, produciendo crestas más definidas (métodos JONSWAP y Pierson-Moskowitz). Se usará un parámetro adicional para determinar la definición de estas crestas.
- Agua de poca profundidad
Usar para aguas llanas, con profundidades de cerca de 10 metros, lo que lo hará apropiado para pequeños lagos y estanques carentes de vientos fuertes (métodos JONSWAP y TMA – Texel-Marsen-Arsloe).
- Definir crestas
Un factor artificial para controlar la definición de las crestas de las ondas en los modelos de los espectros Océano calmo (crestas definidas) y Agua de poca profundidad.
- Distancia de recolección
Distancia desde una costa a sotavento, donde el viento sopla con una velocidad constante. Usado en los modelos de los espectros Océano calmo (crestas definidas) y Agua de poca profundidad.
Capturar#
En vez de simular los datos del océano al vuelo, ésto podrán ser capturados a archivos en un directorio indicado. Una vez que una simulación haya sido capturada, el motor de simulación será completamente omitido y toda la información para el modificador o las texturas será obtenida a partir de los archivos capturados.
La captura ofrece las siguientes ventajas:
Será más rápido usar los datos almacenados que recalcularlos permanentemente.
Permitirá el procesamiento de datos de océano en motores de procesamiento externos.
Permitirá el uso de mapas de espuma más avanzados.
Los datos de la simulación serán almacenados en forma de secuencias de texturas OpenEXR
, individualmente para el desplazamiento, las normales y la espuma (si se hubiera habilitado su generación). Una vez cargados los datos de estos archivos capturados, en el momento de leer un fotograma de la secuencia, el mismo será colocado en un caché en memoria. Esto significa que acceder a los fotogramas cargados las siguientes veces será rápido, evitando así incurrir en sobrecargas por acceso al disco.
Dado que estos archivos capturados se encontrarán almacenados en formato OpenEXR
, podrán ser también abiertos y procesados en cualquier otra aplicación o motor de procesamiento que soporte este formato.
- Ruta del caché
Carpeta en donde almacenar los archivos EXR capturados. Las secuencias serán de la forma
disp_####.exr
(desplazamiento),normal_####.exr
yfoam_####.exr
(espuma), en donde####
serán cuatro dígitos para indicar el número de fotograma. En caso de que la ruta a la carpeta del caché no existiera, ésta será creada.- Fotograma de Inicio, Fin
Fotogramas a capturar de la simulación (incluyendo los extremos). Los fotogramas inicial y final de la captura se repetirán al acceder a fotogramas por fuera del rango capturado.
- Disipación espuma
Al capturar también se obtendrá una capacidad mejorada de control de la espuma. Cuando el océano se simula al vuelo, el simulador obtiene datos únicamente para el fotograma actual. En el caso del mapa de espuma, esto representará a los picos de las crestas de las ondas de ese fotograma. En la realidad, luego de que la espuma se hubiera generado producto de la interacción de las ondas, ésta permanecerá sobre la superficie de la onda durante un tiempo, a medida que se disipa. Una vez capturada la simulación, será posible aproximar ese comportamiento, acumulando la espuma de los fotogramas anteriores y haciéndola permanecer sobre la superficie.
Ejemplo#
El siguiente ejemplo fue creado y procesado en Blender. Nótese cómo las crestas de las ondas son blancas, un efecto generado a partir de los datos de espuma.