This seamless 3D texture showcases an exquisite witch hat fabric material rendered in ultra-high 8K resolution, combining rich dark purple hues with deep black velvet accents. The base substrate mimics a tightly woven organic fiber fabric, enhanced by a delicate overlay of faded, slightly worn cloth elements that evoke natural aging and subtle tattering along the edges. The textile’s surface finish suggests a soft, velvety nap with areas of gentle sheen contrasting against matte, fibrous patches, achieved through carefully balanced pigments and dye layers that provide realistic color depth and tonal variation. The fabric composition is expertly captured to reflect the interplay of natural fibers and synthetic binding agents, creating a porous yet sturdy material that holds its shape while exhibiting slight surface irregularities and weathered character.
In terms of PBR channel mapping, the BaseColor map delivers a rich palette of dark purple and black velvet tones with nuanced shading that conveys the softness and tactile quality of the fabric. The Normal map enhances the perception of woven fibers and subtle cloth folds, adding dimensionality and realistic grain orientation to the surface. Roughness values vary across the texture, with the velvet portions showing lower roughness to simulate the plush, smooth finish, while the faded fabric areas exhibit higher roughness for a worn, matte appearance. The Metallic channel remains minimal, reflecting the organic and textile nature of the material. Ambient Occlusion intensifies shadowed crevices and tattered edges, enhancing atmospheric depth, while the Height map subtly emphasizes cloth thickness and edge wear, ideal for parallax effects or displacement in 3D workflows.
Expertly crafted for seamless tiling, this witch hat fabric texture is fully compatible with Blender, Unreal Engine, and Unity, ensuring smooth integration into Halloween-themed 3D costumes, props, and witch-inspired assets. The texture’s high fidelity and photorealistic detail make it perfect for enhancing magical scenes requiring authentic fabric surfaces with atmospheric depth. For practical application, adjusting UV scale to appropriately size the weave and tuning roughness values can optimize material realism depending on lighting conditions and scene requirements, particularly for close-up costume renders or dynamic in-game visuals. This texture’s versatility and quality provide a reliable foundation for any dark purple and black velvet fabric needs in 3D design and visualization projects.
How to Use These Seamless PBR Textures in Blender
This guide shows how to connect a full PBR texture set to Principled BSDF in Blender (Cycles or Eevee). Works with any of our seamless textures free download, including PBR PNG materials for Blender / Unreal / Unity.
What’s inside the download
*_albedo.png
— Base Color (sRGB)
*_normal.png
— Normal map (Non-Color)
*_roughness.png
— Roughness (Non-Color)
*_metallic.png
— Metallic (Non-Color)
*_ao.png
— Ambient Occlusion (Non-Color)
*_height.png
— Height / Displacement (Non-Color)
*_ORM.png
— Packed map (R=AO, G=Roughness, B=Metallic, Non-Color)
Quick start (Node Wrangler, 30 seconds)
- Enable the addon: Edit → Preferences → Add-ons → Node Wrangler.
- Create a material and select the Principled BSDF node.
- Press Ctrl + Shift + T and select the maps
albedo, normal, roughness, metallic (skip height and ORM for now) → Open.
The addon wires Base Color, Normal (with a Normal Map node), Roughness, and Metallic automatically.
- Add AO and Height using the “Manual wiring” steps below (5 and 6).
Manual wiring (full control)
- Create a material (Material Properties → New) and open the Shader Editor.
- Add an Image Texture node for each map. Set Color Space:
- Albedo → sRGB
- AO, Roughness, Metallic, Normal, Height, ORM → Non-Color
- Connect to Principled BSDF:
albedo
→ Base Color
roughness
→ Roughness
metallic
→ Metallic (for wood this often stays near 0)
normal
→ Normal Map node (Type: Tangent Space) → Normal of Principled.
If details look “inverted”, enable Invert Y on the Normal Map node.
- Ambient Occlusion (AO):
- Add a MixRGB (or Mix Color) node in mode Multiply.
- Input A =
albedo
, Input B = ao
, Factor = 1.0.
- Output of Mix → Base Color of Principled (replaces the direct albedo connection).
- Height / Displacement:
Cycles — true displacement
- Material Properties → Settings → Displacement: Displacement and Bump.
- Add a Displacement node: connect
height
→ Height, set Midlevel = 0.5, Scale = 0.02–0.08 (tune to taste).
- Output of Displacement → Material Output → Displacement.
- Add geometry density (e.g., Subdivision Surface) so displacement has polygons to work with.
Eevee (or lightweight Cycles) — bump only
- Add a Bump node:
height
→ Height.
- Set Strength = 0.2–0.5, Distance = 0.05–0.1, and connect Normal output to Principled’s Normal.
Using the packed ORM
texture (optional)
Instead of separate AO/Roughness/Metallic maps you can use the single *_ORM.png
:
- Add one Image Texture (Non-Color) → Separate RGB (or Separate Color).
- R (red) → AO (use it in the Multiply node with albedo as above).
- G (green) → Roughness of Principled.
- B (blue) → Metallic of Principled.
UVs & seamless tiling
- These textures are seamless. If your mesh has no UVs, go to UV Editing → Smart UV Project.
- For scale/repeat, add Texture Coordinate (UV) → Mapping and plug it into all texture nodes.
Increase Mapping → Scale (e.g., 2/2/2) to tile more densely.
Recommended starter values
- Normal Map Strength: 0.5–1.0
- Bump Strength: ~0.3
- Displacement Scale (Cycles): ~0.03
Common pitfalls
- Wrong Color Space (normals/roughness/etc. must be Non-Color).
- “Inverted” details → enable Invert Y on the Normal Map node.
- Over-strong relief → lower Displacement Scale or Bump Strength.
Example: Download Wood Textures and instantly apply parquet or rustic planks inside Blender for architectural visualization.
To add the downloaded texture, go to Add — Texture — Image Texture.

Add a node and click the Open button.

Select the required texture on your hard drive and connect Color to Base Color.
