Nœud Noise Texture

Le nœud Noise Texture.

Le nœud Noise Texture évalue un bruit Perlin fractal aux coordonnées de la texture en entrée. Il peut être utilisé pour une seule évaluation du bruit Perlin ou pour combiner plusieurs octaves (couches) avec des détails de plus en plus fins.

Inputs

Les entrées sont dynamiques, elles deviennent disponibles si nécessaire en fonction des propriétés du nœud.

Vecteur

Coordonnées de la texture pour évaluer le bruit ; par défaut, les coordonnées de la texture générée si le socket n’est pas connecté.

W

Coordonnée de la texture pour évaluer le bruit.

Scale

Échelle de l’octave du bruit de base.

Detail

Nombre d’octaves de bruit. La partie fractionnaire de l’entrée est multipliée par l’amplitude de l’octave la plus élevée. Un nombre d’octaves plus élevé correspond à un temps de rendu plus important.

Roughness (Rugosité)

Mélange entre un modèle de bruit plus lisse, et plus rugueux avec des pics plus aigus.

Lacunarity

La différence entre l’échelle de chacune de deux octaves consécutives. Des valeurs plus élevées correspondent à une échelle plus grande pour les octaves supérieures.

Offset

Un décalage ajouté à chaque octave, détermine le niveau où l’octave la plus haute apparaîtra.

Gain

Un multiplicateur supplémentaire pour régler la magnitude des octaves.

Distortion

Niveau de distorsion.

Properties

Dimensions

Les dimensions de l’espace dans lequel on évalue le bruit.

1D:

Évaluer le bruit dans l’espace 1D à l’entrée W.

2D:

Evaluer le bruit dans l’espace 2D au niveau du Vector d’entrée. La composante Z est ignorée.

3D:

Evaluer le bruit dans l’espace 3D au niveau du Vector d’entrée.

4D:

Évaluer le bruit dans l’espace 4D à l’entrée Vector et l’entrée W comme quatrième dimension.

Note

Des dimensions plus élevées correspondent à un temps de rendu plus important. Il convient donc d’utiliser des dimensions plus faibles, sauf si des dimensions plus élevées sont nécessaires.

Normalize

Si activé, garantit que les valeurs de sortie restent dans la plage de 0,0 à 1,0. Si désactivé, les valeurs de sortie sont comprises entre -1,0 et 1.0.

Type

Type de texture Noise, avec différentes manières de combiner les octaves.

FBM:

Le mouvement Brownien fractal produit un résultat homogène et isotrope. Les valeurs des octaves sont additionnées entre elles.

Multifractal:

Plus inégal, variant selon l’emplacement similaire à un terrain réel. Les valeurs des octaves sont multipliées entre elles.

Hybrid Multifractal:

Crée des pics et des vallées avec différentes valeurs de roughness (rugosité), comme si des montagnes réelles surgissaient de plaines planes. Combine des octaves en utilisant à la fois l’addition et la multiplication.

Ridged Multifractal:

Crée des pics pointus. Calcule la valeur absolue du bruit, créant ainsi des “canyons”, puis retourne la surface à l’envers.

Hetero Terrain:

Similaire à Hybrid Multifractal, crée un terrain hétérogène, mais avec la ressemblance des canaux de rivière.

Outputs

Factor

Valeur du bruit fractal.

Color

Couleur avec un bruit fractal différent dans chaque composant.

Exemples

../../../_images/render_shader-nodes_textures_noise_example.jpg

Noise Texture avec des détails élevés.

Différents types de bruit avec les mêmes paramètres.
../../../_images/render_shader-nodes_textures_musgrave_example-type-fbm.jpg

fBM (fractal Brownian Motion).

../../../_images/render_shader-nodes_textures_musgrave_example-type-multifractal.jpg

Multifractal

../../../_images/render_shader-nodes_textures_musgrave_example-type-hybrid.jpg

Hybrid Multifractal.

../../../_images/render_shader-nodes_textures_musgrave_example-type-terrain.jpg

Heterogeneous Terrain.

../../../_images/render_shader-nodes_textures_musgrave_example-type-ridged.jpg

Ridged Multifractal.

Notes

Bien que le bruit soit de nature aléatoire, il suit un certain schéma qui peut ne pas s’évaluer en valeurs aléatoires dans certaines configurations. Par exemple, considérons la configuration suivante où une grille d’objets a un matériau qui évalue une texture de bruit à leurs emplacements. On pourrait s’attendre à ce que les objets aient des valeurs aléatoires puisqu’ils ont des emplacements différents, mais ce n’est pas le cas.

../../../_images/render_shader-nodes_textures_noise_issue-constant-value.png

Un exemple de configuration où le bruit est évalué à une valeur constante.

Il semble que tous les objets aient une valeur de 0,5. Pour comprendre pourquoi cela se produit, examinons le tracé suivant d’une texture de bruit 1D.

../../../_images/render_shader-nodes_textures_noise_1d-noise-plot.png

Tracé d’un bruit 1D avec zéro détail et zéro distorsion.

La ligne horizontale désigne une valeur de 0,5 et les lignes verticales désignent des nombres entiers en supposant une échelle de bruit de 1. Comme on peut le voir, le bruit coupe toujours la ligne 0,5 aux nombres entiers. Étant donné que les objets susmentionnés ont été distribués sur une grille et ont des emplacements de nombres entiers, ils sont tous évalués à 0,5. Ce qui explique le problème posé.

En général, toute évaluation discrète du bruit à des multiples entiers de l’inverse de l’échelle de bruit sera toujours évaluée à 0,5. Il s’ensuit également que les évaluations plus proches de cela auront des valeurs proches de 0,5. Dans de tels cas, il est presque toujours préférable d’utiliser la texture de bruit blanc.

Quoi qu’il en soit, on peut atténuer ce problème de plusieurs manières :

  • Ajuster l’échelle du bruit pour éviter d’aligner le bruit avec le domaine d’évaluation.

  • Ajouter un décalage arbitraire aux coordonnées de texture pour rompre l’alignement avec le domaine d’évaluation.

  • Évaluer le bruit à une dimension plus élevée et ajuster la dimension supplémentaire jusqu’à ce qu’un résultat satisfaisant soit obtenu.

../../../_images/render_shader-nodes_textures_noise_issue-constant-value.png

Le résultat de valeur constante.

../../../_images/render_shader-nodes_textures_noise_solution1-constant-value.png

Atténuer le problème en ajustant l’échelle.

../../../_images/render_shader-nodes_textures_noise_solution2-constant-value.png

Atténuer le problème en ajoutant un décalage arbitraire.

../../../_images/render_shader-nodes_textures_noise_solution3-constant-value.png

Atténuer le problème en évaluant à une dimension supérieure.

De même, dans d’autres configurations, on peut rencontrer des motifs de bandes dans le bruit, où il y a des bandes de zones à fort contraste suivies de bandes de zones à faible contraste. Par exemple, les surfaces planes qui sont légèrement inclinées le long de l’un des axes auront un tel motif de bandes.

../../../_images/render_shader-nodes_textures_noise_issue-banding.png

Un exemple de configuration où le bruit a un motif de bandes.

Cela se produit parce que la légère inclinaison le long de l’un des axes fait que les valeurs le long de l’axe perpendiculaire changent très lentement, ce qui rend la structure de grille du bruit plus apparente. Le moyen le plus simple d’atténuer ce problème consiste à faire pivoter les coordonnées d’un montant arbitraire.

../../../_images/render_shader-nodes_textures_noise_solution-banding.png

Atténuer le problème en faisant pivoter les coordonnées d’un montant arbitraire.