You generated a PBR texture set in Grix. Now what? This guide covers the complete Blender setup for albedo, normal, roughness, metalness, and height maps — correctly, without the guesswork.
What You Get from Grix
Every Grix generation produces five maps as separate PNG files:
- Albedo (Base Color) — the raw surface color with no lighting baked in
- Normal — encodes surface detail as RGB data (OpenGL format)
- Roughness — controls how matte or glossy the surface is (0 = mirror, 1 = fully rough)
- Metalness — defines whether a surface behaves as metal or non-metal
- Height (Displacement) — grayscale depth data for geometric displacement
All five need to be wired into Blender's Principled BSDF shader correctly. Here's exactly how.
Step 1: Create a New Material
In Blender, select your mesh and open the Shader Editor. Create a new material. You'll start with a Principled BSDF already connected to a Material Output node — that's your target.
Step 2: Albedo (Base Color)
Add an Image Texture node (Shift+A → Texture → Image Texture). Load your albedo PNG. Make sure the Color Space is set to sRGB — this is the default, and it's correct for color data. Connect the Color output to Base Color on the Principled BSDF.
Step 3: Normal Map
Add a new Image Texture node for the normal map. Critical: set Color Space to Non-Color — normal maps contain vector data, not color. Add a Normal Map node (Shift+A → Vector → Normal Map). Connect Image Texture Color → Normal Map Color → Principled BSDF Normal.
Grix outputs OpenGL normal maps (green channel up), which is Blender's native format. No channel swapping needed.
Step 4: Roughness
Another Image Texture node, Color Space = Non-Color. Connect Color → Roughness on Principled BSDF. That's it — Grix roughness maps are ready to use directly.
Step 5: Metalness
Same pattern. Image Texture, Color Space = Non-Color. Connect Color → Metallic. For most non-metal materials, this map will be mostly black — that's correct.
Step 6: Height / Displacement
For real geometric displacement (requires Cycles, not Eevee): Add Image Texture, Color Space = Non-Color. Add a Displacement node (Shift+A → Vector → Displacement). Connect Image Texture → Displacement Height → Material Output Displacement.
In the material settings, set Displacement to Displacement Only or Both. In your mesh modifier stack, add a Subdivision Surface modifier with enough subdivisions to hold the detail. Scale the Displacement node's Scale value (0.05–0.2 is typical for fine surface detail).
For Eevee or when you want a lightweight bump effect instead, use a Bump node instead: Height → Bump Height → Principled BSDF Normal.
Tiling Setup
Grix textures are seamlessly tiling. To control repeat scale, add a Mapping node and a Texture Coordinate node before your Image Texture nodes. Wire Texture Coordinate UV → Mapping Vector → (all) Image Texture Vector inputs. Adjust the Mapping node's Scale X and Y to control how many times the texture tiles across the UV space.
Connect one Mapping and Texture Coordinate pair to all five Image Texture nodes — they share the same UV space.
Final Node Setup Summary
The complete setup for every Grix material in Blender:
- Texture Coordinate → Mapping (shared for all maps)
- Image Texture (Albedo, sRGB) → Principled BSDF Base Color
- Image Texture (Normal, Non-Color) → Normal Map → Principled BSDF Normal
- Image Texture (Roughness, Non-Color) → Principled BSDF Roughness
- Image Texture (Metalness, Non-Color) → Principled BSDF Metallic
- Image Texture (Height, Non-Color) → Displacement → Material Output Displacement
Generate More Materials
The same setup works for every Grix output. Generate a library of materials with a consistent node setup, then swap the Image Texture paths per material. Start generating at grixai.com/try — first three a day are free.
For a complete overview of writing effective prompts and getting clean PBR output, see AI texture generator from text: PBR materials without a photo reference. For the full end-to-end workflow across all engines, see the AI PBR texture generator workflow guide.