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.9 kB
import{bS as e,V as i,a8 as s,aH as t,T as o,bJ as n,bI as a}from"./index-Bw2N6w1y.esm.min.js";import{ArrayItem as l,GLTFLoader as r}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 d="EXT_lights_ies";class h{constructor(e){this.name=d,this._loader=e,this.enabled=this._loader.isExtensionUsed(d)}dispose(){this._loader=null,delete this._lights}onLoading(){const e=this._loader.gltf.extensions;if(e&&e[this.name]){const i=e[this.name];this._lights=i.lights,l.Assign(this._lights)}}loadNodeAsync(n,a,d){return r.LoadExtensionAsync(n,a,this.name,(async(h,m)=>{let _,c;this._loader._allMaterialsDirtyRequired=!0;const b=await this._loader.loadNodeAsync(n,a,(o=>{c=l.Get(h,this._lights,m.light);const n=c.name||o.name;this._loader.babylonScene._blockEntityCollection=!!this._loader._assetContainer,_=new e(n,i.Zero(),i.Backward(),0,1,this._loader.babylonScene),_.angle=Math.PI/2,_.innerAngle=0,_._parentContainer=this._loader._assetContainer,this._loader.babylonScene._blockEntityCollection=!1,c._babylonLight=_,_.falloffType=s.FALLOFF_GLTF,_.diffuse=m.color?t.FromArray(m.color):t.White(),_.intensity=m.multiplier||1,_.range=Number.MAX_VALUE,_.parent=o,this._loader._babylonLights.push(_),r.AddPointerMetadata(_,h),d(o)}));let f;if(c.uri)f=await this._loader.loadUriAsync(n,c,c.uri);else{const e=l.Get(`${n}/bufferView`,this._loader.gltf.bufferViews,c.bufferView);f=await this._loader.loadBufferViewAsync(`/bufferViews/${e.index}`,e)}return _.iesProfileTexture=new o(name+"_iesProfile",this._loader.babylonScene,!0,!1,void 0,null,null,f,!0,void 0,void 0,void 0,void 0,".ies"),b}))}}n(d),a(d,!0,(e=>new h(e)));export{h as EXT_lights_ies}; //# sourceMappingURL=EXT_lights_ies-TZaS0Zlu.esm.min.js.map