UNPKG

@kibeo/loaders.gl-textures

Version:

Framework-independent loaders for compressed and super compressed (basis) textures

40 lines (36 loc) 1.25 kB
import type {Loader, LoaderWithParser} from '@kibeo/loaders.gl-loader-utils'; import {VERSION} from './lib/utils/version'; import {parseCompressedTexture} from './lib/parsers/parse-compressed-texture'; /** * Worker Loader for KTX, DDS, and PVR texture container formats */ export const CompressedTextureWorkerLoader = { name: 'Texture Containers', id: 'compressed-texture', module: 'textures', version: VERSION, worker: true, extensions: [ 'ktx', 'ktx2', 'dds', // WEBGL_compressed_texture_s3tc, WEBGL_compressed_texture_atc 'pvr' // WEBGL_compressed_texture_pvrtc ], mimeTypes: ['application/octet-stream', 'image/vnd-ms.dds', 'image/ktx', 'image/ktx2'], binary: true, options: { 'compressed-texture': { libraryPath: 'libs/' } } }; /** * Loader for KTX, DDS, and PVR texture container formats */ export const CompressedTextureLoader = { ...CompressedTextureWorkerLoader, parse: async (arrayBuffer) => parseCompressedTexture(arrayBuffer) }; // TYPE TESTS - TODO find a better way than exporting junk export const _TypecheckCompressedTextureWorkerLoader: Loader = CompressedTextureWorkerLoader; export const _TypecheckCompressedTextureLoader: LoaderWithParser = CompressedTextureLoader;