Browser gets Textures/Models tabs (per-type catalog cache). Model file
JSON is parsed into per-set texture maps (generic set-prefix matching),
FBX is downloaded with resolution fallback, one URP/Lit material is
built per set via the shared PbrMaterialBuilder (which now returns the
created Material), and new ModelImportUtil remaps FBX material slots to
the built materials by set-name matching.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
New Tools/ambientCG Importer window (catalog browser, ZIP download with
selective map extraction, URP/Lit material build). Generic pieces moved
from the PolyHaven tool into Editor/WebAssets (EditorWebRequest,
PbrMapType, PbrMaterialBuilder, ImportUtil, AssetBrowserGrid); PolyHaven
API/window now delegate to the shared code, behavior unchanged.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
PolyHavenMaterialBuilder now removes the separate roughness map (asset +
meta) once its data has been packed into the generated
_metallic_smoothness.png; skipped when the repack fails or roughness came
from the ARM texture.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Tools/Poly Haven Importer: fetches asset metadata/files via the public
Poly Haven API, browsable texture catalog with searchable thumbnail
grid, per-map resolution selection, async non-blocking downloads, and
automatic URP/Lit material build (roughness->smoothness repacking into
_MetallicGlossMap, ARM unpacking as fallback for missing AO/Rough/Metal
maps, linear import settings for data textures). Thumbnails survive
play mode via HideAndDontSave + destroyed-cache recovery.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>