Aller au contenu principal

Nœuds de shader

95 nœuds dans 7 catégories, pour construire des matériaux avec des nœuds. Pour apprendre à les utiliser, consultez Graphes de matériaux.

Les entrées et les sorties ont l’un de ces quatre types : float est un seul nombre, et vec2, vec3 et vec4 en contiennent deux, trois et quatre. Un vec3 contient une couleur ou une direction. Si vous reliez des ports de tailles différentes, la conversion est faite pour vous quand elle a un sens.

const​

Des valeurs fixes que vous saisissez.

NœudCe qu’il faitEntréesSorties
constFloatUn nombre fixe.—out:float
constVec3Trois nombres fixes.—out:vec3

input​

Les valeurs de départ : coordonnées de texture (UV), normale de la surface, temps, textures, et la copie d’un objet en train d’être dessinée.

NœudCe qu’il faitEntréesSorties
cameraDistanceLa distance entre ce pixel et la caméra. Pratique pour estomper les choses avec la distance.—out:float
chromaKey — Chroma keyRetire une couleur, par exemple pour rendre un fond vert transparent.color:vec3, key:vec3, similarity:float, smoothness:float, spill:floatrgba:vec4
instanceColor — Instance ColorLa teinte de la copie en train d’être dessinée.—out:vec3
instanceId — Instance IDLa copie d’un objet instancié en train d’être dessinée. Passez cette valeur dans un hachage pour rendre chaque copie différente.—out:float
materialRef — MaterialUtilise un autre matériau comme point de départ.—out:vec3
normalLa direction vers laquelle la surface est tournée.—out:vec3
normalMapApplique une texture de normales, qui ajoute du détail de surface sans géométrie supplémentaire.uv:vec2, strength:floatout:vec3
paramColor — Param (color)Une couleur affichée comme réglage du matériau, que vous pouvez changer sans modifier le graphe.—out:vec3
paramFloat — Param (float)Un nombre affiché comme réglage du matériau, que vous pouvez changer sans modifier le graphe.—out:float
positionLe point sur la surface, dans l’espace propre de l’objet.—out:vec3
sampleLod — Sample Texture LODLit une image à un niveau de flou choisi. Un moyen peu coûteux de l’adoucir.uv:vec2, lod:floatrgba:vec4
screenUvLa position du pixel à l’écran, et non sur la surface.—out:vec2
texelFetch — Texel FetchLit un pixel exact, sans lissage.texel:vec2rgba:vec4
texelSize — Texture SizeLa taille d’un pixel d’une texture, pour les effets qui lisent les pixels voisins.—size:vec2, texel:vec2
textureLit une image aux coordonnées données.uv:vec2rgba:vec4
timeLes secondes écoulées depuis le démarrage de la scène. Utilisez-le pour tout ce qui bouge.—out:float
triplanarProjette une texture depuis trois directions à la fois : les formes sans coordonnées de texture, ou avec des coordonnées étirées, gardent un bon aspect.scale:float, blend:floatrgba:vec4
uvLes coordonnées de texture du pixel en train d’être dessiné. La plupart des motifs commencent ici.—out:vec2
viewDirectionLa direction qui va de la surface vers la caméra.—out:vec3
worldPositionLe même point dans l’espace monde. Utilisez-le pour les effets qui restent en place quand un objet bouge.—out:vec3

light​

Un éclairage que vous pouvez façonner vous-même.

NœudCe qu’il faitEntréesSorties
fresnelPlus fort sur les bords, là où la surface se détourne. Utilisez-le pour un éclairage de contour, un champ de force ou le reflet sur une carrosserie.power:float, normal:vec3out:float
lit — Lit (scene lights)L’éclairage standard, pour qu’un graphe sur mesure s’intègre à la scène.color:vec3, roughness:float, specular:float, normal:vec3out:vec3
toonLit — Toon (scene lights)Un éclairage en bandes, pour un rendu de dessin animé.color:vec3, steps:float, normal:vec3out:vec3

math​

Des calculs sur des nombres simples.

NœudCe qu’il faitEntréesSorties
absRetire le signe moins.x:floatout:float
addAdditionne.a:float, b:floatout:float
atan2L’angle vers un point. Utilisez-le pour construire des motifs circulaires (radiaux).y:float, x:floatout:float
ceilArrondit au supérieur.x:floatout:float
clampGarde une valeur dans un intervalle.x:float, min:float, max:floatout:float
cosCosinus.x:floatout:float
divideDivise.a:float, b:floatout:float
expe à la puissance de l’entrée.x:floatout:float
fbmDu bruit en plusieurs couches, pour les nuages, la fumée, la rouille et le terrain.uv:vec2, scale:float, octaves:floatout:float
floorArrondit à l’inférieur.x:floatout:float
fractNe garde que la partie après la virgule. La façon habituelle de faire répéter un motif.x:floatout:float
logLogarithme naturel.x:floatout:float
maxLa plus grande des deux valeurs.a:float, b:floatout:float
minLa plus petite des deux valeurs.a:float, b:floatout:float
mixMélange deux valeurs.a:float, b:float, t:floatout:float
modLe reste de la division. Une autre façon de faire boucler une valeur.x:float, y:floatout:float
multiplyMultiplie.a:float, b:floatout:float
noiseDes valeurs aléatoires douces. Commencez ici pour tout ce qui doit avoir l’air naturel.uv:vec2, scale:floatout:float
oneMinusInverse une valeur comprise entre 0 et 1 : 0 devient 1, et 1 devient 0.x:floatout:float
posterizeRamène les valeurs à un nombre fixe de niveaux, pour un rendu en bandes.x:float, steps:floatout:float
powÉlève à une puissance.x:float, e:floatout:float
remapConvertit une valeur d’un intervalle à un autre.x:float, inMin:float, inMax:float, outMin:float, outMax:floatout:float
roundArrondit au plus proche.x:floatout:float
signDonne −1, 0 ou 1.x:floatout:float
sinSinus. Utilisez-le pour les oscillations, les pulsations et les ondulations.x:floatout:float
smoothstepUn bord doux, avec une transition progressive entre les deux seuils. L’un des nœuds les plus utilisés.from:float, to:float, x:floatout:float
sqrtRacine carrée.x:floatout:float
stepUn bord net : 0 sous le seuil, 1 au-dessus.edge:float, x:floatout:float
subtractSoustrait.a:float, b:floatout:float
tanTangente.x:floatout:float
voronoiDes motifs de cellules, pour des écailles, de la terre craquelée ou un vitrail.uv:vec2, scale:floatdist:float, cell:float

output​

La fin du graphe : l’aspect final de la surface.

NœudCe qu’il faitEntréesSorties
mrtOutput — Output (MRT)Écrit plusieurs sorties à la fois, pour les configurations avancées.color:vec3, alpha:float, color1:vec3, alpha1:float, color2:vec3, alpha2:float, color3:vec3, alpha3:float—
outputLa fin du graphe : l’aspect final de la surface.color:vec3, alpha:float, offset:vec3—
surfaceOutput — Output (surface)Décrit la surface : couleur de base, aspect métallique, rugosité, normale, émission et alpha.baseColor:vec3, metallic:float, roughness:float, emissive:vec3, normal:vec3, alpha:float, offset:vec3, clearcoat:float, clearcoatRoughness:float, ior:float, transmission:float, thickness:float—

post​

Des nœuds qui lisent l’image terminée. En utiliser un transforme le graphe en effet plein écran, au lieu d’un matériau de surface.

NœudCe qu’il faitEntréesSorties
chromaticAberrationDécale les canaux de couleur sur les bords, comme un vrai objectif.uv:vec2, amount:floatout:vec3
contrastÉclaircit les parties claires et assombrit les parties sombres.color:vec3, amount:floatout:vec3
exposureRend toute l’image plus claire ou plus sombre.color:vec3, amount:floatout:vec3
grainAjoute du grain de pellicule.color:vec3, intensity:floatout:vec3
invertInverse les couleurs de l’image.color:vec3out:vec3
saturationRend les couleurs plus vives ou plus ternes.color:vec3, amount:floatout:vec3
screenColorLa scène telle qu’elle est déjà dessinée. Utiliser ce nœud transforme le graphe en effet plein écran.—out:vec3
tintFait tirer l’image vers une couleur.color:vec3, tint:vec3out:vec3
vignetteAssombrit les bords de l’image.color:vec3, offset:float, darkness:floatout:vec3

vector​

Construire, séparer et modifier des vecteurs et des couleurs.

NœudCe qu’il faitEntréesSorties
addVec3Additionne deux vecteurs de trois nombres.a:vec3, b:vec3out:vec3
alphaExtrait le canal de transparence.v:vec4out:float
combineVec2Construit un vecteur à partir de deux nombres.x:float, y:floatout:vec2
combineVec3Construit un vecteur à partir de trois nombres.r:float, g:float, b:floatout:vec3
combineVec4Construit un vecteur à partir de quatre nombres.rgb:vec3, a:floatout:vec4
crossUne direction perpendiculaire aux deux.a:vec3, b:vec3out:vec3
distanceLa distance entre deux points.a:vec3, b:vec3out:float
dotProduit scalaire : à quel point deux directions se ressemblent.a:vec3, b:vec3out:float
equirectUv — Equirect UVProjette une direction sur une image panoramique.dir:vec3uv:vec2
flipbook — FlipbookJoue comme une animation une grille d’images contenue dans une seule image.uv:vec2, frame:float, tilesX:float, tilesY:floatuv:vec2
gammaApplique une courbe gamma.rgb:vec3, gamma:floatout:vec3
hsvToRgbReconvertit teinte, saturation et valeur en couleur.hsv:vec3out:vec3
hueToRgbConvertit directement une teinte en couleur.h:floatout:vec3
lengthLa longueur d’un vecteur.v:vec3out:float
luminanceLa luminosité d’une couleur telle que l’œil la perçoit.rgb:vec3out:float
mixVec3Mélange deux vecteurs de trois nombres.a:vec3, b:vec3, t:floatout:vec3
multiplyVec3Multiplie deux vecteurs de trois nombres.a:vec3, b:vec3out:vec3
normalizeGarde la direction et ramène la longueur à 1.v:vec3out:vec3
pannerFait défiler les coordonnées dans le temps, pour de l’eau qui coule, des tapis roulants ou des rayons d’énergie.uv:vec2, speed:vec2out:vec2
reflectFait rebondir une direction sur une surface.v:vec3, normal:vec3out:vec3
rgbConstruit une couleur à partir de trois nombres.v:vec4out:vec3
rgbToHsvConvertit une couleur en teinte, saturation et valeur. Le moyen simple de décaler la teinte.rgb:vec3out:vec3
scaleVec2Multiplie un vecteur de deux nombres par un nombre.v:vec2, s:floatout:vec2
scaleVec3Multiplie un vecteur de trois nombres par un nombre.v:vec3, s:floatout:vec3
splitVec2Sépare deux nombres.v:vec2x:float, y:float
splitVec3Sépare trois nombres.v:vec3x:float, y:float, z:float
uvTransformMet à l’échelle, fait tourner et déplace les coordonnées avant de lire une image.uv:vec2, tiling:vec2, offset:vec2, rotation:float, center:vec2out:vec2