THREE.JS / FOUNDATIONS 83

Compressed textures need a contract.

Three tiny KTX2 payloads follow the same loader lifecycle, then land in different runtime texture classes.

Initializing —

Preparing the renderer before support detection.

Backend
—
Loader
—
Loaded
0 / 3
Draw calls
—
RGBA8uncompressed

2d_rgba8.ktx2

Runtime
loading
Size
—
Mips
—
Flip Y
—
ETC1SBasis universal

2d_etc1s.ktx2

Runtime
loading
Size
—
Mips
—
Flip Y
—
UASTCBasis universal

2d_uastc.ktx2

Runtime
loading
Size
—
Mips
—
Flip Y
—
Inspection controls
Loader lifecycle
init→detectSupport→loadAsync→dispose

A single KTX2Loader instance owns the Basis worker pool.

Drag to orbit · scroll to dolly · select a card to inspect its decoded class

Previous: explicit sampling →
LAB 83 / KTX2 LIFECYCLE