@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) • 8.25 kB
JavaScript
import{C as t,M as e,l as i,O as s,V as n,m as a,T as r,n as o,o as l,p as u,q as h,s as d,r as x,t as _,u as f,G as c}from"./index-BPURObVq.esm.min.js";import{R as m}from"./abstractEngine.cubeTexture.pure-DReMqode.esm.min.js";let g=(()=>{var f;let c,g,p,b,S,y,O,T,M,E=u,B=[],A=[],L=[],R=[],v=[],D=[],P=[],z=[],C=[],Y=[],F=[],k=[],I=[],j=[],w=[];return f=class extends E{set boundingBoxSize(e){if(this._boundingBoxSize&&this._boundingBoxSize.equals(e))return;this._boundingBoxSize=e;const i=this.getScene();i&&i.markAllMaterialsAsDirty(t.MATERIAL_TextureDirtyFlag)}get boundingBoxSize(){return this._boundingBoxSize}set rotationY(t){this._rotationY=t,this.setReflectionTextureMatrix(e.RotationY(this._rotationY))}get rotationY(){return this._rotationY}get noMipmap(){return this._noMipmap}get forcedExtension(){return this._forcedExtension}constructor(r,o,l=null,u=!1,h=null,d=null,x=null,_=t.TEXTUREFORMAT_RGBA,f=!1,c=null,g=!1,p=.8,b=0,S,y){let O;super(o),this._delayedOnLoad=i(this,B),this.onLoadObservable=new s,this.url=i(this,A,void 0),this.boundingBoxPosition=(i(this,L),i(this,R,n.Zero())),this._boundingBoxSize=i(this,v),this._rotationY=0,this._files=i(this,D,null),this._forcedExtension=(i(this,P),i(this,z,null)),this._extensions=(i(this,C),i(this,Y,null)),this._textureMatrix=(i(this,F),i(this,k,void 0)),this._textureMatrixRefraction=(i(this,I),i(this,j,new e)),this._format=i(this,w),this._buffer=null,m(),this.name=r,this.url=r,this._noMipmap=u,this.hasAlpha=!1,this.isCube=!0,this._textureMatrix=e.Identity(),this.coordinatesMode=a.CUBIC_MODE;let T=null;null===l||Array.isArray(l)?(this._noMipmap=u,this._format=_,this._createPolynomials=g,O=l,this._loaderOptions=S,this._useSRGBBuffer=y,this._lodScale=p,this._lodOffset=b):(O=l.extensions??null,this._noMipmap=l.noMipmap??!1,h=l.files??null,T=l.buffer??null,this._format=l.format??t.TEXTUREFORMAT_RGBA,f=l.prefiltered??!1,c=l.forcedExtension??null,this._createPolynomials=l.createPolynomials??!1,this._lodScale=l.lodScale??.8,this._lodOffset=l.lodOffset??0,this._loaderOptions=l.loaderOptions,this._useSRGBBuffer=l.useSRGBBuffer,this._sphericalPolynomialTargetSize=l.sphericalPolynomialTargetSize??0,d=l.onLoad??null,x=l.onError??null),(r||h)&&this.updateURL(r,c,d,f,x,O,this.getScene()?.useDelayedTextureLoading,h,T)}getClassName(){return"CubeTexture"}updateURL(e,i=null,s=null,n=!1,a=null,r=null,o=!1,l=null,u=null){this.name&&!this.name.startsWith("data:")||(this.name=e),this.url=e,i&&(this._forcedExtension=i);const h=e.lastIndexOf("."),d=i||(h>-1?e.substring(h).toLowerCase():""),x=0===d.indexOf(".dds"),_=0===d.indexOf(".env"),f=0===d.indexOf(".basis");if(_?(this.gammaSpace=!1,this._prefiltered=!1,this.anisotropicFilteringLevel=1):(this._prefiltered=n,n&&(this.gammaSpace=!1,this.anisotropicFilteringLevel=1)),l)this._files=l;else if(f||_||x||r||(r=["_px.jpg","_py.jpg","_pz.jpg","_nx.jpg","_ny.jpg","_nz.jpg"]),this._files=this._files||[],this._files.length=0,r){for(let t=0;t<r.length;t++)this._files.push(e+r[t]);this._extensions=r}this._buffer=u,o?(this.delayLoadState=t.DELAYLOADSTATE_NOTLOADED,this._delayedOnLoad=s,this._delayedOnError=a):this._loadTexture(s,a)}delayLoad(e){this.delayLoadState===t.DELAYLOADSTATE_NOTLOADED&&(e&&(this._forcedExtension=e),this.delayLoadState=t.DELAYLOADSTATE_LOADED,this._loadTexture(this._delayedOnLoad,this._delayedOnError))}getReflectionTextureMatrix(){return this._textureMatrix}setReflectionTextureMatrix(i){if(i.updateFlag===this._textureMatrix.updateFlag)return;if(i.isIdentity()!==this._textureMatrix.isIdentity()&&this.getScene()?.markAllMaterialsAsDirty(t.MATERIAL_TextureDirtyFlag,t=>-1!==t.getActiveTextures().indexOf(this)),this._textureMatrix=i,!this.getScene()?.useRightHandedSystem)return;const s=r.Vector3[0],n=r.Quaternion[0],a=r.Vector3[1];this._textureMatrix.decompose(s,n,a),n.z*=-1,n.w*=-1,e.ComposeToRef(s,n,a,this._textureMatrixRefraction)}getRefractionTextureMatrix(){return this.getScene()?.useRightHandedSystem?this._textureMatrixRefraction:this._textureMatrix}_loadTexture(e=null,i=null){const s=this.getScene(),n=this._texture;this._texture=this._getFromCache(this.url,this._noMipmap,void 0,void 0,this._useSRGBBuffer,this.isCube);const r=()=>{this.onLoadObservable.notifyObservers(this),n&&(n.dispose(),this.getScene()?.markAllMaterialsAsDirty(t.MATERIAL_TextureDirtyFlag)),e&&e()},l=(t,e)=>{this._loadingError=!0,this._errorObject={message:t,exception:e},i&&i(t,e),a.OnTextureLoadErrorObservable.notifyObservers(this)};this._texture?this._texture.isReady?o.SetImmediate(()=>r()):this._texture.onLoadedObservable.add(()=>r()):(this._prefiltered?this._texture=this._getEngine().createPrefilteredCubeTexture(this.url,s,this._lodScale,this._lodOffset,e,l,this._format,this._forcedExtension,this._createPolynomials):this._texture=this._getEngine().createCubeTexture(this.url,s,this._files,this._noMipmap,e,l,this._format,this._forcedExtension,!1,this._lodScale,this._lodOffset,null,this._loaderOptions,!!this._useSRGBBuffer,this._buffer),this._texture?.onLoadedObservable.add(()=>this.onLoadObservable.notifyObservers(this)))}clone(){let t=0;const e=this.irradianceTexture,i=l.Clone(()=>{const e=new f(this.url,this.getScene()||this._getEngine(),this._extensions,this._noMipmap,this._files);return t=e.uniqueId,e},this);return i.uniqueId=t,e&&!this.irradianceTexture&&(this.irradianceTexture=e),i}},(()=>{const t="function"==typeof Symbol&&Symbol.metadata?Object.create(E[Symbol.metadata]??null):void 0;c=[d()],g=[x()],p=[x()],b=[d("rotationY")],S=[d("files")],y=[d("forcedExtension")],O=[d("extensions")],T=[_("textureMatrix")],M=[_("textureMatrixRefraction")],h(f,null,p,{kind:"getter",name:"boundingBoxSize",static:!1,private:!1,access:{has:t=>"boundingBoxSize"in t,get:t=>t.boundingBoxSize},metadata:t},null,B),h(f,null,b,{kind:"setter",name:"rotationY",static:!1,private:!1,access:{has:t=>"rotationY"in t,set:(t,e)=>{t.rotationY=e}},metadata:t},null,B),h(null,null,c,{kind:"field",name:"url",static:!1,private:!1,access:{has:t=>"url"in t,get:t=>t.url,set:(t,e)=>{t.url=e}},metadata:t},A,L),h(null,null,g,{kind:"field",name:"boundingBoxPosition",static:!1,private:!1,access:{has:t=>"boundingBoxPosition"in t,get:t=>t.boundingBoxPosition,set:(t,e)=>{t.boundingBoxPosition=e}},metadata:t},R,v),h(null,null,S,{kind:"field",name:"_files",static:!1,private:!1,access:{has:t=>"_files"in t,get:t=>t._files,set:(t,e)=>{t._files=e}},metadata:t},D,P),h(null,null,y,{kind:"field",name:"_forcedExtension",static:!1,private:!1,access:{has:t=>"_forcedExtension"in t,get:t=>t._forcedExtension,set:(t,e)=>{t._forcedExtension=e}},metadata:t},z,C),h(null,null,O,{kind:"field",name:"_extensions",static:!1,private:!1,access:{has:t=>"_extensions"in t,get:t=>t._extensions,set:(t,e)=>{t._extensions=e}},metadata:t},Y,F),h(null,null,T,{kind:"field",name:"_textureMatrix",static:!1,private:!1,access:{has:t=>"_textureMatrix"in t,get:t=>t._textureMatrix,set:(t,e)=>{t._textureMatrix=e}},metadata:t},k,I),h(null,null,M,{kind:"field",name:"_textureMatrixRefraction",static:!1,private:!1,access:{has:t=>"_textureMatrixRefraction"in t,get:t=>t._textureMatrixRefraction,set:(t,e)=>{t._textureMatrixRefraction=e}},metadata:t},j,w),t&&Object.defineProperty(f,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:t})})(),f})(),p=!1;function b(t,e,i){let s="";for(const e of t)s+=e;return new g(s,e,null,i,t)}function S(t,e,i=null,s=!0){const n=e.useDelayedTextureLoading;e.useDelayedTextureLoading=!1;const a=new g(t,e,null,!1,null,null,null,void 0,!0,i,s);return e.useDelayedTextureLoading=n,a}function y(t,e,i){const s=l.Parse(()=>{let s=!1;return t.prefiltered&&(s=t.prefiltered),new g(i+(t.url??t.name),e,t.extensions,!1,t.files||null,null,null,void 0,s,t.forcedExtension)},t,e);if(t.boundingBoxPosition&&(s.boundingBoxPosition=n.FromArray(t.boundingBoxPosition)),t.boundingBoxSize&&(s.boundingBoxSize=n.FromArray(t.boundingBoxSize)),t.animations)for(let e=0;e<t.animations.length;e++){const i=t.animations[e],n=c("BABYLON.Animation");n&&s.animations.push(n.Parse(i))}return s}function O(){p||(p=!0,g.CreateFromImages=b,g.CreateFromPrefilteredData=S,g.Parse=y,a._CubeTextureParser=y,f("BABYLON.CubeTexture",g))}export{g as C,O as R,b as a,S as b,y as c};
//# sourceMappingURL=cubeTexture.pure-CFZf4s_Z.esm.min.js.map