Skip to main content

Class: DRACOLoader2

Asset-Management.DRACOLoader2

Hierarchy​

  • DRACOLoader

    ↳ DRACOLoader2

Implements​

  • ILoader<BufferGeometry, Mesh | undefined>

Properties​

LIB_CDN_PATH​

▪ Static LIB_CDN_PATH: string = 'https://cdn.jsdelivr.net/gh/google/[email protected]/javascript/'


LibraryValueMap​

▪ Static LibraryValueMap: Record<string, any> = {}

This is a hack to allow bundling the draco decoder js file with your app source See DRACOLoader2.SetDecoderJsString for example


encoderPending​

• encoderPending: null | Promise<any> = null


encoderConfig​

• encoderConfig: any


isDRACOLoader2​

• Readonly isDRACOLoader2: true

Methods​

SetDecoderJsString​

▸ Static SetDecoderJsString(jsString): void

Set the decoder js string Sample for how to set LibraryValueMap This is useful for bundling the draco decoder js file with your app source

example First put the draco_decoder.js file in your src folder, then import it in js/ts as a string

import draco_decoder from './libs/draco_decoder.1.5.6.js?raw' // vite will load this as a string
// console.log(draco_decoder) // this should be a string with js content
DRACOLoader2.SetDecoderJsString(draco_decoder)

Parameters​

NameTypeDescription
jsStringstringthe contents of draco_decoder.js file

Returns​

void


transform​

▸ transform(res, _): undefined | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>

Transform after load, like convert geometry to mesh, etc. for reference see DRACOLoader2

Parameters​

NameType
resBufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>
_AnyOptions

Returns​

undefined | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>

Implementation of​

ILoader.transform


preload​

▸ preload(decoder?, encoder?): DRACOLoader

Parameters​

NameTypeDefault value
decoderbooleantrue
encoderbooleanfalse

Returns​

DRACOLoader

Overrides​

DRACOLoader.preload


initEncoder​

▸ initEncoder(): Promise<any>

Returns​

Promise<any>


initDecoder​

▸ initDecoder(): Promise<any>

Returns​

Promise<any>


_loadLibrary​

▸ _loadLibrary(url, responseType): Promise<any>

Parameters​

NameType
urlstring
responseTypestring

Returns​

Promise<any>

Overrides​

DRACOLoader._loadLibrary

Constructors​

constructor​

• new DRACOLoader2(manager?)

Parameters​

NameType
manager?LoadingManager

Overrides​

DRACOLoader.constructor