UNPKG

@babylonjs/viewer

Version:

The Babylon Viewer aims to simplify a specific but common Babylon.js use case: loading, viewing, and interacting with a 3D model.

3 lines (2 loc) 1.19 kB
import{bM as s,bJ as e,bI as r}from"./index-Bw2N6w1y.esm.min.js";import{GLTFLoader as i}from"./glTFLoader-DEYqxGxH.esm.min.js";import"./bone-BwMp7T0B.esm.min.js";import"./skeleton-CkTZwWbM.esm.min.js";import"./rawTexture-CPAqHIA7.esm.min.js";import"./assetContainer-21j7tcC8.esm.min.js";import"./objectModelMapping-DX92iJ8M.esm.min.js";const o="KHR_materials_dispersion";class n{constructor(s){this.name=o,this.order=174,this._loader=s,this.enabled=this._loader.isExtensionUsed(o)}dispose(){this._loader=null}loadMaterialPropertiesAsync(s,e,r){return i.LoadExtensionAsync(s,e,this.name,(async(i,o)=>{const n=new Array;return n.push(this._loader.loadMaterialPropertiesAsync(s,e,r)),n.push(this._loadDispersionPropertiesAsync(i,e,r,o)),await Promise.all(n).then((()=>{}))}))}_loadDispersionPropertiesAsync(e,r,i,o){if(!(i instanceof s))throw new Error(`${e}: Material type not supported`);return i.subSurface.isRefractionEnabled&&o.dispersion?(i.subSurface.isDispersionEnabled=!0,i.subSurface.dispersion=o.dispersion,Promise.resolve()):Promise.resolve()}}e(o),r(o,!0,(s=>new n(s)));export{n as KHR_materials_dispersion}; //# sourceMappingURL=KHR_materials_dispersion-BgtjxhhH.esm.min.js.map