Aperçu
Le Displace 3D prend un mesh en entrée, lit une image 2D (généralement une heightmapen niveaux de gris) et déplace chaque vertex le long de sa normale en fonction de la valeur lue à l'emplacement UV correspondant. Un pixel blanc = fort déplacement, un pixel noir = aucun.
Important : le node ne crée aucun vertex supplémentaire. Si votre mesh est peu subdivisé, le résultat sera grossier (en escalier). Il faut subdiviser le mesh d'entrée avant (via un Shape 3D avec Subdivision élevée, ou un Triangulate 3D derrière une géométrie importée).
La valeur d'un pixel peut être négative dans certaines images en virgule flottante - le déplacement ira alors dans le sens inverse de la normale.
Où trouver ce node
- Effects Library :
Tools > 3D > Displace 3D - Ajout rapide : clic droit dans le Node Editor →
Add Tool > 3D > Displace 3D
Inputs
- SceneInput (orange) - requis. Connecte la géométrie ou la scène 3D à déformer.
- Input (vert) - image 2D utilisée comme heightmap. Techniquement optionnelle (le node ne crashe pas sans), mais sans image connectée, rien ne se passe.
L'image sert de lookup : la géométrie est échantillonnée via ses texture coordinates (UVs). Si les UVs ne couvrent pas [0, 1]², certaines zones du mesh ne seront pas affectées.
Configuration
Workflow typique :
Shape 3D(plan, Subdivision X = Y = 100) ou mesh subdivisé importé- →
Displace 3D - →
Merge 3Davec caméra et lights - →
Renderer 3D
La heightmap (image 2D) est branchée dans l'input vert du Displace 3D. Elle peut venir d' un FastNoise, d'un Loader d'image (Perlin, fractal, scan de terrain) ou du résultat d'un autre node 2D.
Onglet Controls
- Channel (défaut : Luma)
- Canal de l'image utilisé pour piloter le déplacement : Red, Green, Blue, Alpha ou Luma. Pour une heightmap en niveaux de gris, choisir Luma (ou n'importe quel canal, ils sont équivalents). Pour encoder plusieurs informations dans la même texture (ex. R = height, G = roughness), séparez les canaux.
- Scale (défaut : 1.0)
- Multiplicateur de l'intensité du déplacement. 0 = pas de déplacement ; 1 = déplacement d'une unité pour un pixel blanc ; à ajuster selon la taille de votre scène. Unité : unités Fusion.
- Bias (défaut : 0.0)
- Offset appliqué à la valeur lue avant le scaling. Un
Bias = -0.5mappe une heightmap [0, 1] en [-0.5, 0.5] - utile pour centrer le mesh autour du zéro au lieu de le pousser entièrement dans un seul sens. - Distribution
- Courbe de répartition des valeurs entre l'entrée et le déplacement effectif. Permet d'exagérer les sommets ou d'écraser les basses fréquences - utile pour « casser » un terrain trop uniforme.
Point to Camera
Mode spécial qui change la direction du déplacement : au lieu de suivre la normale du vertex, le déplacement se fait vers la caméra. Très utilisé pour déformer une Image Plane 3Dalignée sur une caméra tout en gardant l'image visible correcte depuis cette caméra.
- Point to Camera (défaut : désactivé)
- Active le mode caméra. Quand désactivé, déplacement le long des normales du mesh.
- Camera Menu
- Sélectionne quelle caméra de la scène pilote la direction du déplacement. Listée automatiquement dès qu'une
Camera 3Dest présente dans la scène en entrée.
Cas d'usage
- Terrain procédural - plan subdivisé (200×200) +
FastNoisefractal en heightmap = terrain montagneux généré en temps réel. Couplez avec un shader qui change de couleur selon la hauteur pour un rendu type carte topographique. - Océan / vagues -
FastNoiseanimé (seethe) + Scale faible + plan très subdivisé. Plus réaliste qu'un simple sinus. - Relief d'un logo - un texte 2D en luminance piloté sur un plan donne un logo gravé / embossé.
- Déformation de plan caméra - avec Point to Camera, permet de faire « gondoler » un plan de projection sans casser l'image vue par cette caméra (effet hit ou vague d'explosion).
- Surface parallax sur hero banner - heightmap subtile appliquée à un packshot 3D pour ajouter une micro-texture (relief de papier, grain métallique).
Astuces & pièges
- Subdiviser, toujours subdiviser- si votre mesh a 100 vertices et l'image 4000×4000 px, vous ne verrez quasi rien du détail. Règle : au moins un vertex par pixel de détail utile.
- Utilisez un
Blurléger sur la heightmap avant le Displace pour éviter les « pics » aigus dus à des pixels isolés. - Pour un effet ciné, animez le
Scaledepuis 0 - le mesh se « gonfle » progressivement à partir d'un plan plat. - Après un gros displacement, les normales originelles du mesh sont obsolètes (lighting faux). Enchaînez avec un
Replace Normals 3Dpour recalculer les normales à partir de la géométrie déformée - sinon le shading sera plat. - Image 32 bits (EXR) recommandée pour éviter le banding (escaliers de hauteur) sur une surface lisse.
- Si la heightmap est un JPG compressé, elle a perdu des nuances - vous obtiendrez des plateaux. Préférez PNG 16 bits ou EXR.
Onglet Settings
L'onglet Settings reprend les contrôles communs à la plupart des nodes 3D (visibility, lighting, blend mode, object ID).
