Smoked oak wide plank
=====================

Material Studio export — contract gridsnap.material 0.1.0
Material mat_0qpwkzdm4xnkwlhriogeg0 revision 1 · family timber · created 2026-10-13T11:05:42.088Z
Bake engine 1.0.0 · app 0.1.0

PHYSICAL SIZE
  One repeat of these maps covers 2200 mm (U, image width) × 1100 mm (V, image height).
  Set your UV/texture scale so that one tile = 2.200 m × 1.100 m.
  The images are square; for a non-square repeat the pixels are not square on the surface.
  Grain/pattern direction: grain u, pattern u (U = image right, V = image up).

MAPS
  Base colour  maps/basecolor.png  — sRGB colour, 2048×2048, 8-bit
  Normal       maps/normal-gl.png  — Non-Color / linear data, 2048×2048, 8-bit, OpenGL convention (+Y / green = up)
  Roughness    maps/roughness.png (channel R)  — Non-Color / linear data, 2048×2048, 8-bit
  Occlusion    maps/ao.png (channel R)  — Non-Color / linear data, 2048×2048, 8-bit
  Height       maps/height-16bit.png  — Non-Color / linear data, 2048×2048, 16-bit
               sample 0..1 → -1.436 … 0.112 mm (h = min + s × (max − min)); 0 mm is the nominal finished face; negative values are recessed (joints, pores).

  Constants (no image file): metalness = 0 (no map; constant)

  Base colour contains no baked lighting or occlusion; apply AO only as ambient occlusion.
  Channel origin: baseColor=authored, normal=authored, roughness=authored, metalness=constant, occlusion=authored, height=authored
  ("inferred" = artistic estimate from an image, not measured data.)

TILING QA
  Automated seam check: passed (worst boundary/interior ratio 1.001).
  Human seam review: not recorded.

SETUP — tested and untested targets
  Status of each target is listed in the project's compatibility report. Everything below
  is image-map setup guidance; no native material file for these applications is included.

  Blender (Principled BSDF):
    - Base colour → Image Texture, Color Space "sRGB" → Base Color.
    - Normal → Image Texture "Non-Color" → Normal Map node (Tangent Space) → Normal.
      Maps are OpenGL convention, so no green-channel flip is needed.
    - Roughness/metalness/AO → Image Texture "Non-Color" (use the stated channel).
    - Height (optional) → Image Texture "Non-Color" → Displacement node, Midlevel = 0.9276, Scale = 0.00155 (metres).
    - Mapping node Scale = (surface size in m) / (2.200, 1.100), or use Object/real-world UVs.

  Unreal Engine: import base colour with sRGB on; normal with "Flip Green Channel" ON
    (Unreal expects DirectX-style normals); roughness/metalness/AO with sRGB OFF and
    compression "Masks". UNVERIFIED in a real Unreal import.
  Twinmotion: assign colour, normal, roughness and metallic images in the PBR material; normal
    convention and scale must be checked in the application. UNVERIFIED.
  SketchUp + Enscape / V-Ray: set the texture size to 2200 × 1100 mm; add the normal/roughness
    maps in the renderer's material editor. UNVERIFIED.
  three.js / glTF: raster row 0 is the top (+V) edge. With glTF UVs (origin top-left) use
    texture.flipY = false; with three.js built-in geometries (v up) use flipY = true.
    roughnessMap reads G and metalnessMap reads B: route grayscale maps or use the ORM file.

LICENCE
  gridsnap-texture-licence-1.0 — redistribution not-granted. Gridsnap Texture Licence: free to use in personal and commercial projects; do not resell or redistribute the files. https://gridsnap.app/textures/licence/

Recipe preset: smoked-oak-wide-plank
