cione-comp-lib
Version:
`$ yarn add cione-comp-lib` 或者 `$ npm i cione-comp-lib -S`
2 lines (1 loc) • 1.61 kB
JavaScript
;Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var e=require("../core/Base.js"),t=require("../math/Vector3.js"),a=require("../camera/Perspective.js"),r=require("../FrameBuffer.js"),f=["px","nx","py","ny","pz","nz"],u=e.default.extend((function(){var e={position:new t.default,far:1e3,near:.1,texture:null,shadowMapPass:null},f=e._cameras={px:new a.default({fov:90}),nx:new a.default({fov:90}),py:new a.default({fov:90}),ny:new a.default({fov:90}),pz:new a.default({fov:90}),nz:new a.default({fov:90})};return f.px.lookAt(t.default.POSITIVE_X,t.default.NEGATIVE_Y),f.nx.lookAt(t.default.NEGATIVE_X,t.default.NEGATIVE_Y),f.py.lookAt(t.default.POSITIVE_Y,t.default.POSITIVE_Z),f.ny.lookAt(t.default.NEGATIVE_Y,t.default.NEGATIVE_Z),f.pz.lookAt(t.default.POSITIVE_Z,t.default.NEGATIVE_Y),f.nz.lookAt(t.default.NEGATIVE_Z,t.default.NEGATIVE_Y),e._frameBuffer=new r.default,e}),{getCamera:function(e){return this._cameras[e]},render:function(e,a,r){var u=e.gl;r||a.update();for(var o=this.texture.width,n=2*Math.atan(o/(o-.5))/Math.PI*180,s=0;s<6;s++){var i=f[s],d=this._cameras[i];if(t.default.copy(d.position,this.position),d.far=this.far,d.near=this.near,d.fov=n,this.shadowMapPass){d.update();var l=a.getBoundingBox();l.applyTransform(d.viewMatrix),a.viewBoundingBoxLastFrame.copy(l),this.shadowMapPass.render(e,a,d,!0)}this._frameBuffer.attach(this.texture,u.COLOR_ATTACHMENT0,u.TEXTURE_CUBE_MAP_POSITIVE_X+s),this._frameBuffer.bind(e),e.render(a,d,!0),this._frameBuffer.unbind(e)}},dispose:function(e){this._frameBuffer.dispose(e)}});exports.default=u;