AccueilArt Génératif & Motifs AlgorithmiquesBruit de Perlin — Générateur de Terrain Procédural & Textures

🏔 Bruit de Perlin — Générateur de Terrain Procédural & Textures

Visualiseur interactif de bruit de Perlin 2D avec mouvement brownien fractionnaire (fBm). Générez des cartes d'altitude de terrain procédural, des textures de nuages et des motifs de grain du bois. Contrôlez les octaves, la persistance, la lacunarité et l'échelle.

Art Génératif & Motifs Algorithmiques3DFacile60 FPS🌍 Terre
perlin-noise ↗ Ouvrir en autonome

À propos de cette simulation

Ce visualiseur évalue une fonction classique de bruit de gradient (Perlin) 3D entièrement sur le GPU à l'aide d'un shader de fragment Three.js, en attribuant des gradients pseudo-aléatoires aux points du réseau et en interpolant en douceur entre eux avec une courbe d'atténuation quintique. Plusieurs couches de fréquence sont additionnées comme mouvement brownien fractionnaire (fBm) — chaque octave double en fréquence (lacunarité) tandis que son amplitude diminue selon le facteur de gain/persistance — pour construire des champs de bruit détaillés et d'aspect naturel. La troisième dimension du bruit défile avec le temps, produisant une animation continue sans aucun raccord visible. Une déformation de domaine optionnelle et un mode ridged/turbulence permettent au même bruit sous-jacent de produire des distorsions fluides évoquant de la fumée ou des silhouettes de crêtes montagneuses nettes.

🔬 Ce que ça montre

Un champ fBm GLSL en direct rendu à chaque image : jusqu'à 8 octaves de bruit de gradient de Perlin classique sont additionnées avec une lacunarité et un gain configurables, puis mappées vers cinq colorations différentes — altitude brute en niveaux de gris, une rampe de terrain eau/sable/herbe/roche/neige, des courbes de niveau de style topographique, une teinte de champ d'écoulement déformé, et un aspect ridged/turbulence en valeur absolue.

🎮 Comment l'utiliser

Choisissez un mode de rendu (Niveaux de gris, Terrain, Contours, Warp/flux, Ridged), puis ajustez Échelle/fréquence, Octaves (1–8), Lacunarité, Gain/persistance et Déformation de domaine pour remodeler le champ de bruit. Le curseur Vitesse d'animation fait défiler le bruit à travers sa troisième dimension au fil du temps, Pause/Réinitialiser figent ou restaurent les valeurs par défaut, et le bouton « À propos & aide » ouvre une fenêtre modale sur la page avec la même explication.

💡 Le saviez-vous ?

Ken Perlin a inventé cette fonction de bruit en 1983 en travaillant sur les effets visuels du film Tron, pour remplacer l'aspect dur et mécanique des textures procédurales antérieures par quelque chose d'organique. La technique fut si influente qu'il reçut un Technical Achievement Academy Award pour cela en 1997, et le fBm construit à partir du bruit de Perlin sous-tend encore aujourd'hui la plupart des effets de terrain, de nuages et de feu procéduraux dans les jeux et le cinéma.

Questions fréquentes

Qu'est-ce que le bruit de Perlin, exactement ?

Le bruit de Perlin est un type de bruit de gradient : des vecteurs de gradient unitaires pseudo-aléatoires sont attribués aux coins d'un réseau, et la valeur de bruit en un point quelconque est obtenue en calculant le produit scalaire entre chaque gradient voisin et le vecteur de décalage vers ce point, puis en mélangeant les résultats avec une courbe d'atténuation lisse. Contrairement au bruit blanc pur, cela produit une variation continue et d'aspect naturel plutôt qu'une statique brute, ce qui explique pourquoi c'est le bloc de construction standard pour le terrain et les textures procéduraux.

Que signifie fBm et comment cette simulation l'utilise-t-elle ?

fBm signifie mouvement brownien fractionnaire, la technique consistant à additionner plusieurs « octaves » de la même fonction de bruit à des fréquences croissantes et des amplitudes décroissantes. Dans cette simulation, la fréquence de chaque octave est multipliée par le curseur Lacunarité (2 par défaut, ce qui signifie qu'elle double) tandis que son amplitude est multipliée par le curseur Gain/persistance (0,5 par défaut), et jusqu'à 8 octaves sont combinées ainsi pour ajouter des détails fins par-dessus les formes larges.

Que changent réellement les différents modes de rendu ?

Les cinq modes partagent le même champ fBm sous-jacent mais le colorent ou le post-traitent différemment. Niveaux de gris affiche directement la valeur d'altitude brute ; Terrain fait passer l'altitude par une rampe de couleurs eau-sable-herbe-roche-neige ; Contours dessine des courbes de niveau comme une carte topographique ; Warp/flux réinjecte le bruit dans ses propres coordonnées (déformation de domaine) pour des formes tourbillonnantes évoquant de la fumée ; et Ridged prend la valeur absolue de chaque octave avant la sommation, ce qui sculpte des crêtes montagneuses nettes au lieu de collines lisses.

Comment l'animation est-elle générée sans boucle ni raccord visible ?

La fonction de bruit utilisée ici est véritablement tridimensionnelle (x, y et un z piloté par le temps), et non une texture 2D qui défile. À chaque image, la valeur de vitesse d'animation fait avancer une horloge de « décalage Z » qui devient la troisième coordonnée transmise à la fonction de bruit, de sorte que toute la tranche 2D se transforme de manière fluide et continue à travers le volume de bruit 3D sous-jacent, sans motif répétitif ni raccord visible.

Ce bruit de Perlin est-il calculé sur le CPU ou le GPU ?

Entièrement sur le GPU. Le bruit, la courbe d'atténuation, la sommation fBm, la déformation de domaine et les rampes de couleurs sont tous implémentés en code GLSL dans un shader de fragment Three.js, de sorte que chaque pixel à l'écran évalue sa propre valeur de bruit en parallèle à chaque image. C'est ce qui permet de pousser les octaves, l'échelle et la déformation à leurs valeurs maximales tout en gardant la visualisation fluide en temps réel.

⚙ Sous le capot

Visualiseur interactif de bruit de Perlin 2D avec mouvement brownien fractionnaire (fBm). Générez des cartes d'altitude de terrain procédural, des textures de nuages et des motifs de grain du bois. Contrôlez les octaves, la persistance, la lacunarité et l'échelle.

bruit de perlingénération procéduralefbmmouvement brownien fractionnairegénération de terrainsynthèse de texture

3D · Moteur de rendu Three.js / WebGL · Cible 60 FPS · fonctionne entièrement côté client, sans installation

Qu'avez-vous trouvé ?

Ajouter les étapes de reproduction (facultatif)