threejs-loaders

Loads and configures 3D assets for use in web applications.

Updated May 6, 2026
One-click install
npx skills add https://github.com/Uniquecrete/ThinkFasterv1 --skill threejs-loaders-uniquecrete
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: threejs-loaders
Source: https://github.com/Uniquecrete/ThinkFasterv1/tree/main/Skills/threejs-loaders
Command: npx skills add https://github.com/Uniquecrete/ThinkFasterv1 --skill threejs-loaders-uniquecrete

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill solves the problem of reliably loading Three.js 3D assets (models, textures, and HDR environment maps) without breaking your render flow or losing track of progress.

Core Features & Use Cases

  • Asset Loading for Common Three.js Types: Load GLTF/GLB models, textures, cube maps, and HDR/EXR environments to build complete scenes.
  • Coordinated Loading Progress: Use THREE.LoadingManager to track start, progress, completion, and errors across multiple loaders.
  • Performance-Ready Texture/Model Options: Apply proper color spaces, filtering, wrapping, anisotropy, and compression/texture transcoding workflows (Draco, KTX2).

Use case: You want to build a product viewer that loads a GLB model plus PBR textures and an HDR lighting environment while showing a loading bar and gracefully handling failures.

Quick Start

Create a GLTFLoader and load your model.glb, then add gltf.scene to your Three.js scene.

Frequently Asked Questions about threejs-loaders

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I load GLTF models and HDR environments in Three.js without blocking the render loop?

To load GLTF models and HDR environments without blocking the render loop, use Promise-wrapped loaders coordinated by THREE.LoadingManager. This async pattern tracks multiple asset downloads simultaneously and ensures your scene initializes smoothly without freezing the UI.

What is the best way to track loading progress for multiple Three.js assets like textures and cube maps?

The best way to track loading progress for multiple Three.js assets is using THREE.LoadingManager callbacks. It monitors start, progress, completion, and errors across all coordinated loaders, enabling you to drive UI progress bars and handle asset-loading failures gracefully.

How do I configure PBR textures correctly when loading GLB files in Three.js?

When loading GLB files, configure PBR textures by setting proper colorSpace, filters, wrapping, and anisotropy per texture. This ensures materials render correctly under various HDR environment lighting conditions without visual artifacts.

Does Three.js support Draco compression and KTX2 transcoding for 3D asset loading?

Yes, Three.js supports Draco compression and KTX2 transcoding workflows during 3D asset loading. These compression-ready options reduce file sizes significantly while maintaining real-time rendering performance for interactive web viewers.

Can I use LoadingManager to handle errors when loading HDR or EXR environment maps?

Yes, you can use THREE.LoadingManager to handle errors when loading HDR or EXR environment maps. Its callback system captures loading failures across all asset types, allowing your application to gracefully recover or display fallback content.

Why do my Three.js textures look washed out after loading them into a scene?

Textures often look washed out because colorSpace and filtering are not configured correctly. Applying proper per-texture settings like colorSpace, wrapping, and anisotropy during the loading process ensures accurate PBR rendering under HDR lighting.