Són els elements que es poden utilitzar dins d'un projecte: models 3D, materials, textures, llums, riggings, animacions, sons, imatges de fons (HDRIs) i fins i tot configuracions de càmera. Aquests recursos es poden crear o importar des de fonts externes.
Existeixen diferents webs des d'on podem descarregar-nos, entre altres elements, textures per a Blender. En aquest cas posarem l'exemple del web https://polyhaven.com i ens descarregarem la textura Textures > plaster concret > cracked concrete wall. Hi ha altres webs que ofereixen aquests i altres assets com https://quixel.com/megascans/
Crearem una carpeta a l'escritori (M2T27) on desarem aquesta textura i la descomprimirem.
En aquesta mateixa carpeta desarem també un modelat d'un bol de ceràmica que ens descarregarem aquí.
Al descomprimir l'arxiu de textura descarregat apareixen diferents arxius. Cadascun d'ells té una funció diferent dins la definició de la textura. Alguns dels més habituals solen ser:
Base Color (Albedo / Diffuse): Defineix el color base de l'objecte, però no inclou ombres ni informació d'il·luminació.
Format: Normalment en .jpg, .png o .tiff.
Es connecta a: Base Color del node Principled BSDF.
Normal Map: Simula petits detalls i relleus sense afegir geometria extra. Es codifica en RGB amb colors característics (blau-lila).
Format: .png, .tga, .exr.
Es connecta a: Node Normal Map → Normal del Principled BSDF.
Important: Cal usar un Node Normal Map entre la textura i el material per convertir la informació correctament.
Roughness: Controla la rugositat de la superfície. Valors foscos (0) fan que sigui brillant i reflectant, mentre que valors clars (1) la fan mat.
Format: .jpg, .png en escala de grisos.
Es connecta a: Roughness del Principled BSDF.
Metallic: Defineix si el material és metàl·lic (1) o dielèctric (no metàl·lic 0).
Format: .jpg, .png en escala de grisos.
Es connecta a: Metallic del Principled BSDF.
Displacement (Height Map): Deforma la geometria de l’objecte, generant un relleu real. Es pot combinar amb un Subdivision Modifier o usar-lo a través d’un Node Displacement.
Format: .exr, .png, .tiff en escala de grisos.
Es connecta a: Node Displacement → Displacement del Material Output.
Ambient Occlusion (AO): Afina els detalls ombrívols en les esquerdes i racons per simular ombres ambientals més realistes.
Format: .jpg, .png en escala de grisos.
Es connecta a: Es barreja amb el Base Color mitjançant un Node MixRGB (Multiply).
Obrim el projecte ( bol ) i ens dirigim a la pestanya de workspace shade.
Des de la pestanya de propietats, o bé des del Shade editor afegim un nou material que anomenarem "Pedra".
En la finestra esquerra de l'entorn de treball, trobarem un explorador de carpetes. Navegarem fins arribar a la carpeta que hem creat al nostre escriptori
Arrosseguem l'arxiu creacked_concrete_wall_diff_4k.jpg a la finestra del shade editor i el connectem amb el "base color" del principled BSDF
A continuació arrosseguem l'arxiu carcked_concrete_wall_rough_4k a la finestra de shade editor i el connectem amb "roughness" del principled BSDF.
Es pot observar en aquest cas, que estem connectant dos sockets de colors diferents ( color és groc i Roughness és gris).
Aquesta connexió és compatible, perquè Blender transforma el valor del color ( que envia la textura importada ) a escala de grisos, ( que rep el parametre Roughness del principle BSDF).
Afegirem l'arxiu cracked_concrete_wall_nor_gl_4k.exr, que és de tipus Normal Map que s'utilitza per simular detalls en la superfície d'un objecte sense afegir geometria addicional.
Com que només ens interessa aquest relleu, quan afegim aquest arxiu al shade editor al parametre "color space" triarem el valor "non color".
Ara hauriem de connectar el socket "Color" del node de l'arxiu ".exr" al socket "normal" del node "principle BSDF". Podriem fer-ho i Blender no ens avisarà de cap error, però no estarem passant correctament informació: "Color" té informació de color tipus RGB que són tres valors, i "Normal" té informació de tipus vector 3D (X, Y, Z) que defineix la inclinació de cada punt de la superfície. Tots dos paràmetres tenen tres valors, per això no apareixeria cap error, però els valors corresponen a magnituds diferents.
Per això caldrà afegir un nou node de tipus "Normal Map" que s'encarrega de convertir el valor del color de l'.exr a un vector pel paràmetre "Normal" del principle BSDF.
Des del paràmetre Strnegth podem modificar la intensitat d'aquest relleu.
Si a banda de la textura i els relleus, també volem afegir alguna tonalitat al material, ens caldra un nou node que permeti barrejar, la informació de color que arriba al socket "color" del principle BSDF. Aquest node és el "Mix color".
"Mix Color" disposa d'un primer paràmetre "factor" que indica quin percentatge de cada entrada rebuda tindrà més pes en la sortida.
Si una textura de rugositat és massa suau o poc definida, pots usar el Brightness/Contrast per fer que els detalls siguin més marcats o ajustar el nivell general de rugositat.
Una imatge amb un bon nivell de contrast i lluminositat pot exprressar molt millor la seva rugositat.
També podem veure com afecta directament el node Brightness / contrast a la imatge fent la prova de connectar-lo directament al socket color del Principled BSDF
En els paràgrafs següents realitzarem un cas concret de l'ús de textures utilitzant l'aprenentatge d'aquest tema, però amb procediments més avançats i eficients.
Per començar instal·larem l'add-on Node Wrangler que s'explica a continuació
És interessant activar l'add-on Node Wrangler, que ens permetrà:
Connexions ràpides entre nodes: Pots connectar nodes automàticament amb dreceres de teclat sense haver d'arrossegar manualment els fils.
Previsualització de textures i nodes: Amb la combinació Ctrl + Shift + Clic sobre un node, pots veure'n el resultat directament sense necessitat d’un node Viewer.
Generació automàtica de configuracions complexes: Per exemple, pots afegir fàcilment un node de Normal Map o una configuració completa de textures PBR amb una sola tecla.
Organització i gestió de nodes: Agrupa i alineia nodes amb facilitats com duplicar i intercanviar
Aquesta vegada la textura l'hem descarregat des del web https://quixel.com/ (prèviament ens hem hagut de registrar al web) i hem obtingut la següent textura "Arid gravel ground" i l'hem descomprimit en una carpeta del nostre ordinador.
Amb el node Wrangler activat, i amb el workspade de shading, crearem a la finestra shade editor un nou material, que podem anomenar "terrenyRoques".
Ara podem realitzar el procés de creació de nodes anterior d'una manera automàtica ( gràcies al node wrangler). Seleccionem el node principled BSDF i premem la combinació de tecles Ctrl+shift+T. S’obre una finestra perquè seleccionem un grup d'imatges de textures PBR. Nosaltres triarem: Base Color, Roughness, Normal , displacement
Amb aquesta acció gràcies a l'add-on "Node Wrangler" Blender realitzant tot aquest seguit d'operacions:
1 Afegir el node "Image Texture" per a cada textura:
2 Carregar cada textura manualment:
3 Connectar les textures als sockets correctes del Principled BSDF:
4 Configurar el Normal Map: Si la textura de Normal Map està en format RGB, afegeix automàticament un node Normal Map per convertir-la correctament.
5 Configurar l'espai de color correctament
Aquest és el conjunt de nodes que es genera de manera automàtica:
Els nodes de la secció mapping, gestionen com s'aplica la textura a l'objecte seleccionat
els nodes centrals (Image texture) contenen cadascuna de les imatges que aporten un valor diferent a la textura final. Es connecten amb el mapping, que és quin controlarà el desplaçament, rotació o escalat de les imatges de textura dins la geometria a la que s'apliquen
Conversors: Els dos nodes de color blau, converteixen la informació rebuda perquè es pugui processar en els nodes de destí
Creació del Material:
Principled BSDF: És el node principal que defineix el material combinant totes les propietats (color, rugositat, normals, etc.).
Material Output: La connexió final que envia el material creat al motor de render per ser visible a l’escena.
Par aconseguir que la informació de displacement ( modificació de la textura per a generar relleu), es vegi correctament caldrà fer un seguit d'operacions:
Afegir una llum al nostre projecte si no la té, i canviar la vista a render i asssegurar que tenim el motor de renderització a cycles ( finestra de propietats pestanya render)
Afegirem geometria al pla per poder crear els desnivells del relleu. Per a això, crearem un nou modificador de tipus "Subdivision surface", activarem l'opció "simple". Ens caldrà també, en la finestra de propietats en la pestanya "Render", seleccionar en "feature set", l' opció "experimental". Això farà que aparegui una nova opció en el modificador "subdivision surface" que és "adaptative subdivision", que també haurem d'activar.
Adaptarem aquestes noves subdivisions des de lopció "scale" del node "displacement" al shade editor. En el nostre cas, el valor 0,010 ha funcionat força bé.
Des del mateix web d'on hem importat prèviament la textura, també hem descarregat un model d'un barril, en concret el model "Rusty metal barrel". Ens descarreguem aquest model i el descomprim. Apareixen diferents arxius. un d'ells és el model, és el que té l'extensió .VBX, la resta d'arxius contenen diferents imatges que defineixen la textura del model.
Pel procés d'importació, només caldrà, des del projecte, seleccionar l'opció File > import > FBX (.fbx) i localitzar l'arxiu del model en el nostre ordinador.
Al importar aquest model es genera un material nou. L'eliminarem i en crearem un altre diferent de nou. Seleccionarem el node "Principled BSDF" i tal com s'explica en apartats anteriors, importarem les textures i la combinació de nodes de les mateixes, amb la combinació de tecles Ctrl+Shift+T ( cal tenir el add-on node Wrangler activat).
Podem fer que el nostre terra sigui la suma de diferents materials, per exemple, un asfalt amb una mica d'argila, o un ciment amb una mica de pedres.
Per aconseguir aquest resultat, utilitzarem dues textures diferents.
Per cada textura, en el mateix material inicial, crearem un node independent "principled BSDF".
Amb el "add-on Wrangler" activat, farem Ctrl+Shift+T per inserir la segona textura i connectar-la al nou node "principled BSDF".
Ara caldrà juntar els dos nodes "principled BSDF" amb un node "mix shader"
També caldrà juntar els dos nodes Diplacement amb un node Mix, configurat amb "color" i "overlay", d'aquesta manera aconseguim més contrast i realçar el detall de les textures.
Un HDRI (High Dynamic Range Image) és una imatge d’alta gamma dinàmica que conté una gran quantitat d’informació de llum i color. Tenen extensió .exr o .hdr i contenen molt més del que una imatge estàndard (com JPG o PNG) pot emmagatzemar. Aquestes imatges solen ser panoràmiques i es fan servir per crear entorns realistes amb una il·luminació precisa.
És útil per imatges fixes, o per animacions amb fons estàtic, però no ho és per animacions amb moviment de càmera, donat que al ser una imatge de fons, els objectes 3D no queden posicionats de manera fixa.
En blender es pot utilitzar com a font de llum en el World Shader (shader editor , desplegable shader type > world), permetent obtenir ombres suaus i reflexos naturals sense necessitat de llums artificials.
També és útil proporcionant reflexos realistes i detallats en materials brillants o metàl·lics,
Procés per inserir un HDRi al nostre projecte:
Anar a la visualització viewport shading
Des de la pestanya world de la finestra properties afegir un nou material. També el podem afegir des del shade editor, en aquest cas caldrà assegurar que lopció "use nodes" està activa.
Tal com creem el nou "World" apareixen dos nodes connectats ( Background i World output)
Afegirem el node "enviroment texture" i el connectarem al node background
Després enllacem el node "environment texture" amb la imatge HDRi descarregada des de l'opció OPEN
Si volem ajustar la posició, rotació o dimensió de l'HDRi en la nostra escena, afegirem dos node més connectats al "Environment texture" que són el "mapping" i el "texture coordinate". si tenim l'add-on "node Wrangler" instal·lat, només caldrà seleccionar el node "environment texture" i amb la combinació de tecles Shift + T, apareixeran aquests dos nodes ja connectats entre ells i amb l "environment texture".