Algoritmo che calcola le proprietà di superficie in 3D — colore, riflesso, rugosità. Il cuore del rendering tra geometria e pixel finale.
Ti siedi davanti al tuo setup di rendering 3D e hai costruito la geometria — mesh pulite, rigging corretto, luci posizionate. Ma senza shader vedresti solo poligoni piatti e senza colore. Lo shader è il programma che decide in tempo reale (o durante il rendering offline): come reagisce questa superficie alla luce? Che rugosità ha il materiale? Quanto riflette, quanto assorbe? Questo avviene sulla GPU — riga per riga, per ogni pixel.
Nel flusso di lavoro VFX pratico, gli shader sono il tuo strumento per scrivere descrizioni di materiali fisicamente plausibili o volutamente stilizzate. In software di engine come Maya o Houdini, lavori con reti di shader: combini texture map (Albedo, Normal, Roughness, Metallic), le colleghi tramite operazioni matematiche e le invii a un backend di rendering — che sia Arnold, RenderMan o V-Ray. Ogni connessione è un flusso di dati; lo shader finale calcola quindi l'equazione di illuminazione locale per ogni elemento della superficie.
Spesso lavori con shader PBR (Physically-Based Rendering) — uno standard che garantisce un comportamento coerente dei materiali in diverse situazioni di luce. Un metallo grezzo ha parametri shader diversi dal legno umido o dalla pelle umana. Non modifichi valori a caso; imposti proprietà del materiale che sono fisicamente coerenti. Questa è la differenza tra indovinare e un aspetto professionale. Nell'editing, vedrai subito: la luce si rifrange in modo errato, il riflesso è troppo netto — torna allo shader, aggiusta, renderizza di nuovo.
Nei game engine (Unreal, Unity) scrivi spesso shader in HLSL o GLSL, oppure utilizzi editor visivi basati su nodi. Le prestazioni sono critiche — uno shader troppo complesso fa crollare il tuo frame rate. Per i VFX cinematografici puoi calcolare in modo più elaborato; il rendering notturno è accettabile. Ma anche lì: shader inefficienti costano tempo alla render farm e quindi budget. Il tuo know-how qui decide se uno shot renderizza in 4 ore o in 40.
Consiglio pratico: impara a leggere e debuggare shader semplici. Usa le modalità di visualizzazione del tuo software — guarda le Normal Map, le Occlusion Map, il Diffuse grezzo senza Specular. Se qualcosa sembra sbagliato, isola il componente nella rete di shader, non nell'immagine. Questo ti fa risparmiare ore.