Skip to content

Dynamically loaded files in ThreePipe

This article lists all the libraries, assets, and other files that are dynamically loaded by ThreePipe. These files are not included in the main ThreePipe bundle to keep it lightweight and allow for more flexibility in loading only the necessary resources.

The URLs are generally exposed as static properties on the relevant classes or modules, and can be overridden before the library is loaded.

By default, these files are loaded from one of the reliable CDNs, or from threepipe website, but you can change the URLs to load them from your own server or a different CDN.

Libraries

Core

  • DRACOLoader2.DRACO_LIBRARY_PATH - The URL to the Draco decoder library used for loading compressed 3D models.
    • Default: https://cdn.jsdelivr.net/gh/google/[email protected]/javascript/
    • Alternatives:
      • https://www.gstatic.com/draco/versioned/decoders/1.5.6/
      • https://threejs.org/examples/jsm/libs/draco/
      • https://cdn.jsdelivr.net/npm/[email protected]/examples/jsm/libs/draco/
    • Offline/Mobile Apps - Embedded File - Put the draco_decoder.js file in your src folder, then import it in js/ts as a string
typescript
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) // this sets DRACOLoader2.LibraryValueMap['draco_decoder.js']
  • Rhino3dmLoader2.LIBRARY_PATH - The URL to the Rhino3dm library used for loading Rhino 3D models.
    • Default: https://cdn.jsdelivr.net/npm/[email protected]
    • Note - Versions since 8.4.0 has issues with several files. Use 8.0.1 for stability.
  • MeshOptSimplifyModifierPlugin.SIMPLIFIER_URL - The URL to the MeshOptimizer library's simplifier module used for mesh simplification.
    • Default: https://unpkg.com/[email protected]/meshopt_simplifier.module.js
    • Alternative: https://cdn.jsdelivr.net/gh/zeux/meshoptimizer@master/js/meshopt_simplifier.module.js
  • GLTFMeshOptDecodePlugin.DECODER_URL - The URL to the MeshOptimizer library's decoder module used for decoding optimized glTF models.
    • Default: https://unpkg.com/[email protected]/meshopt_decoder.module.js
    • Alternative: https://cdn.jsdelivr.net/gh/zeux/meshoptimizer@master/js/meshopt_decoder.module.js
  • KTX2LoadPlugin.TRANSCODER_LIBRARY_PATH - The URL to the Basis Universal transcoder library used for loading KTX2 textures.
    • Default: https://cdn.jsdelivr.net/gh/BinomialLLC/[email protected]/webgl/transcoder/build/

Packages

  • AssimpJsPlugin.LIBRARY_PATH - Path to the CDN hosted AssimpJS library.
    • Default: https://cdn.jsdelivr.net/gh/repalash/assimpjs@main/ (Adds fbx export support)
    • Alternative:
      • https://cdn.jsdelivr.net/gh/repalash/assimpjs@fbx/
      • https://cdn.jsdelivr.net/npm/assimpjs@$0.10.0
  • AWSClientPlugin.PROXY_URL - To proxy AWS requests through a CORS proxy. (Required For Cloudflare)
    • Note - Requires setting AWSClientPlugin.USE_PROXY to true to enable.

Files

Core

  • LoadingScreenPlugin.LS_DEFAULT_LOGO - The default logo image used in the loading screen plugin.
    • Default: https://threepipe.org/logo.svg

Samples

These samples are provided and used in examples for testing and development.

Examples

These files are used in the examples for testing and development. Not to be used in commercial projects.

ThreePipe - Make 3D applications on the web