About threejs-loaders
threejs-loaders is a skill for working with three.js asset loaders and exporters. It helps developers choose formats, configure loading and progress handling, connect Draco or KTX2 decoding, and account for export and cleanup concerns.
Key features
- 01Loader and exporter selection
- 02LoadingManager progress and errors
- 03Draco and KTX2 configuration
- 04glTF and OBJ export guidance
- 05Asset security and cleanup
Use cases
- 01Loading multiple assets with progress reporting
- 02Configuring compressed glTF decoding
- 03Exporting a scene to glTF or OBJ
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ full-stack-skills/ threejs-skills --skill threejs-loadersAfter installing, type/threejs-loadersin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
agents/openai.yamlexamples/workflow-gltf-draco.mdreferences/official-sections.mdDetails
From the project READMEWhen to use this skill
ALWAYS use this skill when the user mentions:
GLTFLoader,DRACOLoader,KTX2Loader,FBXLoader,OBJLoader, progress and error handlingLoadingManagerfor global progress,Cachefor HTTP caching control- Export:
GLTFExporter,OBJExporter, HDR/KTX2 export pipelines - IES, UltraHDR, or domain-specific loaders listed under Addons Loaders in docs
IMPORTANT: loaders vs textures
- threejs-loaders = fetch/decode/parse files into three objects.
- threejs-textures =
Texture/DataTextureparameters, sampling, PMREM after you already have image buffers.
IMPORTANT: loaders vs dev-setup
- Import path issues belong to threejs-dev-setup; this skill assumes imports resolve.
Trigger phrases include:
- "GLTFLoader", "DRACO", "KTX2", "LoadingManager", "export gltf"
- "加载模型", "导出", "进度条"
How to use this skill
- Pick loader by format; prefer glTF for PBR interchange when possible.
- Wire LoadingManager for multi-asset batches; surface
onStart/onLoad/onProgress/onError. - glTF + Draco: instantiate
DRACOLoader, set decoder path, attach toGLTFLoader.setDRACOLoaderper current docs. - glTF + KTX2: configure
KTX2Loaderwith transcoder path and connect toGLTFLoaderwhen using Basis textures. - Export: use
GLTFExporterwith options matching round-trip needs; note large scenes and binary vs JSON. - Security: only load user URLs with validation; mention CORS for cross-origin assets.
- After load: traverse scene for materials/meshes—hand off material tuning to threejs-materials.
See examples/workflow-gltf-draco.md.
Doc map (official)
| Docs section | Representative links |
|---|---|
| Core Loaders | https://threejs.org/docs/LoadingManager.html |
| Core Loaders | https://threejs.org/docs/GLTFLoader.html |
| Addons Exporters | https://threejs.org/docs/GLTFExporter.html |
| Addons Loaders | https://threejs.org/docs/DRACOLoader.html |
Extended list: references/official-sections.md.
Scope
- In scope: Loader and exporter classes, manager/cache, format choice, plugin wiring for Draco/KTX2, export basics.
- Out of scope: Server-side transcoding pipelines; physics or game engine asset tooling outside three docs.
Common pitfalls and best practices
- Draco/KTX2 decoder paths must match deployed files; broken paths fail silently until onError surfaces.
- Duplicate texture instances after merge—consider
renderer.initTextureimplications when cloning materials. - Exporters may not round-trip custom shaders; document limitations.
- Always dispose geometries/materials when replacing loaded scenes to avoid GPU leaks.
Documentation and version
Loader and exporter APIs (especially GLTFLoader + DRACOLoader / KTX2Loader wiring) change between three.js versions. Follow Loaders and Addons → Loaders / Exporters in three.js docs; decoder WASM paths are deployment-specific, not library-version alone.
Agent response checklist
When answering under this skill, prefer responses that:
- Link
LoadingManager,GLTFLoader, or the relevant format page on https://threejs.org/docs/. - Separate loading (this skill) from texture/material tuning after decode (threejs-textures, threejs-materials).
- Document Draco/KTX2 decoder path and CORS when assets fail silently.
- Mention exporter limitations (custom shaders, extensions) honestly.
- Encourage
dispose()when replacing entire loaded scenes.
References
- https://threejs.org/docs/#Loaders
- https://threejs.org/docs/LoadingManager.html
- https://threejs.org/docs/GLTFLoader.html
- https://threejs.org/docs/GLTFExporter.html
Keywords
English: gltf, gltfloader, dracoloader, ktx2, loadingmanager, cache, exporter, asset pipeline, three.js
中文: GLTFLoader、加载器、Draco、KTX2、导出、资源、进度、three.js