What problem does it solve? Loading 3D assets in Three.js involves many loader classes, compression formats, and async patterns that are easy to get wrong, leading to broken textures, failed model loads, and untracked loading progress. ## Core Features & Use Cases - Model Loading: Load GLTF/GLB, OBJ, FBX, STL, and PLY models with support for Draco geometry compression and KTX2 compressed textures. - Texture & Environment Loading: Load standard textures, cube maps, and HDR/EXR environment maps with correct color spaces, wrapping, and PMREM prefiltering for PBR rendering. - Progress & Async Management: Coordinate multiple loaders with LoadingManager, promisify loader callbacks, and implement caching, retry, timeout, and fallback logic. - Use Case: When building a product configurator that displays a compressed GLB model with an HDR environment map, use this Skill to wire up GLTFLoader with DRACOLoader, RGBELoader with PMREMGenerator, and a LoadingManager-driven progress bar. ## Quick Start Show me how to load a Draco-compressed GLB model with an HDR environment map and a loading progress indicator in Three.js.