Le modificateur Ocean

Le modificateur Ocean est un outil de simulation d’océan pour simuler et produire une surface d’océan déformante, et une texture associée, utilisée pour faire le rendu des données de simulation. C’est conçu pour simuler des vagues de l’océan profond et l’écume.

Le modificateur Ocean est un port de la trousse à outils Ocean en open source de Houdini.

Options

../../../_images/modeling_modifiers_simulate_ocean_panel.png

Modificateur Ocean.

Géométrie

Géométrie
Generate

Crée un grillage maillage carrelé qui correspond exactement à la résolution des données de simulation.

Lors de la génération d’une surface maillage, l’objet maillage existant est complètement outrepassé par la grille de ocean. Un canal UV est aussi ajouté, faisant la correspondance entre l”UV space (0.0 à 1.0) et la grille de simulation.

Displace
Utilise la géométrie existante plutôt que la remplacer. Les sommets sont affichés sur l’axe Z local.
Repeat X, Repeat Y
When generating a mesh surface, controls the number of times the grid is tiled in X and Y directions. UVs for these tiled mesh areas continue outside of the (0.0 to 1.0) UV space.
Time
Le temps auquel la surface Ocean est évaluée. Pour faire un Ocean animé, vous aurez besoin d’insérer des keyframes RMB et animer cette valeur de temps. La vitesse que cette valeur de temps modifie déterminera la vitesse de l’animation de vague.
Depth
La profondeur constante du plancher de l’océan sous la zone simulée. Les valeurs basses simulent des eaux moins profondes en produisant des détails de fréquence plus élevée et de plus petites vagues.
Random Seed
Un va produire un résultat de simulation différent.
Resolution

Le contrôle principal de qualité vs vitesse dans le moteur de simulation. Ceci détermine la résolution des grillages 2D générés par la simulation.

Les grillages internes sont des puissances de la valeur de résolution, aussi une valeur de résolution de 16 va créer des données de simulation de taill 256x256. Plus élevée la résolution, plus de détails seront produits, mais plus lents seront les calculs.

Note

L’utilisation de l’option de géométrie du modificateur Generate, cette valeur de résolution détermine aussi la résolution de la surface de maillage générée, égale à la résolution des données internes de simulation.

Size
un simple facteur de mise à l’échelle qui n’affecte pas la hauteur des vagues ou le comportement de la simulation.
Spatial Size
The width of the ocean surface area being simulated, in meters. This also determines the size of the generated mesh, or the displaced area, in Blender units. Of course you can scale the object with Ocean Modifier in Object Mode to tweak the apparent size in your scene.

Wave

Choppiness
The choppiness of the wave peaks. With a choppiness of 0, the ocean surface is only displaced up and down in the Z direction, but with higher choppiness, the waves are also displaced laterally in X and Y, to create sharper wave peaks.
Scale
An overall scale control for the amplitude of the waves. It approximates the height or depth of the waves above or below zero. Rather than just scaling the ocean object in Z, it scales all aspects of the simulation, displacement in X and Y, and corresponding foam and normals too.
Alignment
La directionnalité des formes de vagues due au vent. Ã une valeur de 0, le vent et es vagues sont orientés aléatoirement uniformément. Avec des valeurs d’alignement plus élevées, le vent souffle dans une direction plus constante, rendant les vagues plus compressées et alignées dans une seule direction.
Direction
Quand l’Alignement est utilisée, la direction en degrés à laquelle les vagues sont alignées.
Damping
Quand Alignment est utilisé, ceci va définir la quantité que les ondes inter-réfléchies sont amorties. Cela a pour effet de rendre le déplacement des ondes plus directionnelle (pas seulement la forme des ondes). Avec un amortissement de 0.0, les ondes sont réfléchies par les uns les autres dans toutes les directions, avec un amortissement de 1.0, ces ondes inter-réfléchies sont complètement amorties, laissant les seules ondes voyageant uniquement dans la direction du vent.
La vague la plus petite
Une limite minimale pour la taille des vagues générées. Agit tout comme un filtre low-pass, supprimant le détail de vague de fréquence plus élevée.
Vitesse du vent
La vitesse du vent en mètres/seconde. Avec une vitesse faible, les ondes sont limitées à des ondes de surface plus petites.

Simulation Data Generation Options

../../../_images/modeling_modifiers_simulate_ocean_foam-layer-name.png

Utilisation de couleurs de sommet mousses avec un calque de données nommé.

By default, the simulator only generates displacement data, since it takes the least amount of work and gives the fastest feedback. Additional simulation data can be generated for rendering as well.

Génération de normales
Simulates additional normal map data. This can be used by the Ocean texture, when mapped to Normals, as a bump map, and enables generating normal map image sequences when baking.
Génération de l’écume
Simule des données d’écume supplémentaires. Ceci peut être tiré de la texture de l’Ocean pour lr texturage (peut-être comme un map), et active la génération des séquences d’images de map d’écume lors du précalcul.
Couverture d’écume
Ajuste la quantité d’écume couvrant les vagues. Les valeurs négatives vont réduire la quantité d’écume (en en laissant seulement sur les pics les plus hauts), les valeurs positives vont en ajouter. Typiquement dans l’intervalle de (-1.0 à 1.0)
Nom du calque de données d’écume
Nom optionnel pour le calque de données de sommet, utilisé par le Modificateur Ocean pour enregistrer les maps d’écume en tant que couleurs de sommets. Ceci est requis pour l’accès aux données d’écume dans le moteur de rendu.

Précalcul

Plutôt que simuler l’océan, les données de l’océan peuvent être précalculées dasn un fichier sur disque. Quand une simulation est précalculée, le moteur de simulation est complètement mis de côté, et le modificateur/texture tire toutes les informations des fichiers de précalcul.

Le précalcul peut être avantageux pour quelques raisons :

  • Il est plus rapide d’utiliser les données enregistrées plutôt que de les recalculer.
  • Autorise le rendu des données de l’océan avec des moteurs de rendu externes.
  • Active des maps d’écume plus avancés.

Fichiers de données

Les données de simulation sont enregistrés sur disque en tant que séquences de maps d’images OpenEXR, une pour chaque déplacement, normale et écume (si activé pour la génération). Dès le chargement des données depuis ces fichiers de précalcul, quand une trame de la séquence précalculée est lue du disque, elle est mise en mémoire cache. Ceci signifie que l’accès à ces trames chargées les fois suivantes est rapide, sans payer le coût en temps de l’accès disque.

Puisque ces fichiers précalculés sont des fichiers OpenEXR, ils peuvent aussi être ouverts et rendus dans n’importe quelle autre application ou moteur de rendu qui les prend en charge.

Précalcul de l’écume

Le précalcul offre aussi des capacités d’écume améliorées. Le simulateur d’océan tire seulement des données pour la trame courante. Dans le cas de map d’écume, ceci représente les cimes des crêtes de vague pour la trame donnée. En réalité, après la création de l’écume par les interactions des vagues, il persiste à la surface des vagues pendant un moment, à mesure qu’il se dissipe. Avec le précalcul il est possible d’approcher ce comportement, en accumulant de l’écume des trames précédentes, le faisant persister sur la surface.

Options de précalcul

Début, Fin
Les trames de simulation à précalculer (inclusives). Les trames de début et de fin du précalcul sont répétées lors de l’accès aux trames en dehors de l’intervalle du précalcul.
Chemin du cache
Dossier pour enregistrer les fichiers EXR de précalcul. Les séquences seront sous la forme disp_####.exr, normal_####.exr, et foam_####.exr#### est le numéro de trame à quatre chiffres. Si le dossier du chemin du cache n’existe pas, il sera créé.

Moteur interne de simulation

Le simulateur lui-même utilise les méthodes FFT pour générer de façon interne les informations de simulation de grillages 2D, très semblables aux maps de texture 2D. Le simulateur peut générer trois types de données : déplacement, normales et données supplémentaires, qui sont utilisées pour calculer les intersections de crêtes de vagues (càd écume). Après la simulation, ces maps sont utilisés pour déplacer la géométrie de la surface de l’océan en 3D, et peuvent aussi être utilisés pour le shading via la texture de Ocean. La moteur interne de simulation est multithreadé avec OpenMP pour exploiter les cores multiples.

Exemples

Simulated and baked to image maps in Blender, rendered in 3Delight.