1 |
- {"ast":null,"code":"import _asyncToGenerator from \"F:/workspace/202226701027/huinongbao-app/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport { WebXRLayerWrapper } from \"../webXRLayerWrapper.js\";\nimport { WebXRLayerRenderTargetTextureProvider } from \"../webXRRenderTargetTextureProvider.js\";\n/**\n * Wraps XRWebGLLayer's created by Babylon Native.\n * @internal\n */\nexport class NativeXRLayerWrapper extends WebXRLayerWrapper {\n constructor(layer) {\n super(() => layer.framebufferWidth, () => layer.framebufferHeight, layer, \"XRWebGLLayer\", sessionManager => new NativeXRLayerRenderTargetTextureProvider(sessionManager, this));\n this.layer = layer;\n }\n}\n/**\n * Provides render target textures for layers created by Babylon Native.\n * @internal\n */\nexport class NativeXRLayerRenderTargetTextureProvider extends WebXRLayerRenderTargetTextureProvider {\n constructor(sessionManager, layerWrapper) {\n super(sessionManager.scene, layerWrapper);\n this.layerWrapper = layerWrapper;\n this._nativeRTTProvider = navigator.xr.getNativeRenderTargetProvider(sessionManager.session, this._createRenderTargetTexture.bind(this), this._destroyRenderTargetTexture.bind(this));\n this._nativeLayer = layerWrapper.layer;\n }\n trySetViewportForView(viewport) {\n viewport.x = 0;\n viewport.y = 0;\n viewport.width = 1;\n viewport.height = 1;\n return true;\n }\n getRenderTargetTextureForEye(eye) {\n // TODO (rgerd): Update the contract on the BabylonNative side to call this \"getRenderTargetTextureForEye\"\n return this._nativeRTTProvider.getRenderTargetForEye(eye);\n }\n getRenderTargetTextureForView(view) {\n return this._nativeRTTProvider.getRenderTargetForEye(view.eye);\n }\n getFramebufferDimensions() {\n return {\n framebufferWidth: this._nativeLayer.framebufferWidth,\n framebufferHeight: this._nativeLayer.framebufferHeight\n };\n }\n}\n/**\n * Creates the xr layer that will be used as the xr session's base layer.\n * @internal\n */\nexport class NativeXRRenderTarget {\n constructor(_xrSessionManager) {\n this._nativeRenderTarget = navigator.xr.getWebXRRenderTarget(_xrSessionManager.scene.getEngine());\n }\n initializeXRLayerAsync(xrSession) {\n var _this = this;\n return _asyncToGenerator(function* () {\n yield _this._nativeRenderTarget.initializeXRLayerAsync(xrSession);\n _this.xrLayer = _this._nativeRenderTarget.xrLayer;\n return _this.xrLayer;\n })();\n }\n dispose() {\n /* empty */\n }\n}","map":{"version":3,"names":["WebXRLayerWrapper","WebXRLayerRenderTargetTextureProvider","NativeXRLayerWrapper","constructor","layer","framebufferWidth","framebufferHeight","sessionManager","NativeXRLayerRenderTargetTextureProvider","layerWrapper","scene","_nativeRTTProvider","navigator","xr","getNativeRenderTargetProvider","session","_createRenderTargetTexture","bind","_destroyRenderTargetTexture","_nativeLayer","trySetViewportForView","viewport","x","y","width","height","getRenderTargetTextureForEye","eye","getRenderTargetForEye","getRenderTargetTextureForView","view","getFramebufferDimensions","NativeXRRenderTarget","_xrSessionManager","_nativeRenderTarget","getWebXRRenderTarget","getEngine","initializeXRLayerAsync","xrSession","_this","_asyncToGenerator","xrLayer","dispose"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/@babylonjs/core/XR/native/nativeXRRenderTarget.js"],"sourcesContent":["import { WebXRLayerWrapper } from \"../webXRLayerWrapper.js\";\nimport { WebXRLayerRenderTargetTextureProvider } from \"../webXRRenderTargetTextureProvider.js\";\n/**\n * Wraps XRWebGLLayer's created by Babylon Native.\n * @internal\n */\nexport class NativeXRLayerWrapper extends WebXRLayerWrapper {\n constructor(layer) {\n super(() => layer.framebufferWidth, () => layer.framebufferHeight, layer, \"XRWebGLLayer\", (sessionManager) => new NativeXRLayerRenderTargetTextureProvider(sessionManager, this));\n this.layer = layer;\n }\n}\n/**\n * Provides render target textures for layers created by Babylon Native.\n * @internal\n */\nexport class NativeXRLayerRenderTargetTextureProvider extends WebXRLayerRenderTargetTextureProvider {\n constructor(sessionManager, layerWrapper) {\n super(sessionManager.scene, layerWrapper);\n this.layerWrapper = layerWrapper;\n this._nativeRTTProvider = navigator.xr.getNativeRenderTargetProvider(sessionManager.session, this._createRenderTargetTexture.bind(this), this._destroyRenderTargetTexture.bind(this));\n this._nativeLayer = layerWrapper.layer;\n }\n trySetViewportForView(viewport) {\n viewport.x = 0;\n viewport.y = 0;\n viewport.width = 1;\n viewport.height = 1;\n return true;\n }\n getRenderTargetTextureForEye(eye) {\n // TODO (rgerd): Update the contract on the BabylonNative side to call this \"getRenderTargetTextureForEye\"\n return this._nativeRTTProvider.getRenderTargetForEye(eye);\n }\n getRenderTargetTextureForView(view) {\n return this._nativeRTTProvider.getRenderTargetForEye(view.eye);\n }\n getFramebufferDimensions() {\n return {\n framebufferWidth: this._nativeLayer.framebufferWidth,\n framebufferHeight: this._nativeLayer.framebufferHeight,\n };\n }\n}\n/**\n * Creates the xr layer that will be used as the xr session's base layer.\n * @internal\n */\nexport class NativeXRRenderTarget {\n constructor(_xrSessionManager) {\n this._nativeRenderTarget = navigator.xr.getWebXRRenderTarget(_xrSessionManager.scene.getEngine());\n }\n async initializeXRLayerAsync(xrSession) {\n await this._nativeRenderTarget.initializeXRLayerAsync(xrSession);\n this.xrLayer = this._nativeRenderTarget.xrLayer;\n return this.xrLayer;\n }\n dispose() {\n /* empty */\n }\n}\n"],"mappings":";AAAA,SAASA,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,qCAAqC,QAAQ,wCAAwC;AAC9F;AACA;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,SAASF,iBAAiB,CAAC;EACxDG,WAAWA,CAACC,KAAK,EAAE;IACf,KAAK,CAAC,MAAMA,KAAK,CAACC,gBAAgB,EAAE,MAAMD,KAAK,CAACE,iBAAiB,EAAEF,KAAK,EAAE,cAAc,EAAGG,cAAc,IAAK,IAAIC,wCAAwC,CAACD,cAAc,EAAE,IAAI,CAAC,CAAC;IACjL,IAAI,CAACH,KAAK,GAAGA,KAAK;EACtB;AACJ;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMI,wCAAwC,SAASP,qCAAqC,CAAC;EAChGE,WAAWA,CAACI,cAAc,EAAEE,YAAY,EAAE;IACtC,KAAK,CAACF,cAAc,CAACG,KAAK,EAAED,YAAY,CAAC;IACzC,IAAI,CAACA,YAAY,GAAGA,YAAY;IAChC,IAAI,CAACE,kBAAkB,GAAGC,SAAS,CAACC,EAAE,CAACC,6BAA6B,CAACP,cAAc,CAACQ,OAAO,EAAE,IAAI,CAACC,0BAA0B,CAACC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAACC,2BAA2B,CAACD,IAAI,CAAC,IAAI,CAAC,CAAC;IACrL,IAAI,CAACE,YAAY,GAAGV,YAAY,CAACL,KAAK;EAC1C;EACAgB,qBAAqBA,CAACC,QAAQ,EAAE;IAC5BA,QAAQ,CAACC,CAAC,GAAG,CAAC;IACdD,QAAQ,CAACE,CAAC,GAAG,CAAC;IACdF,QAAQ,CAACG,KAAK,GAAG,CAAC;IAClBH,QAAQ,CAACI,MAAM,GAAG,CAAC;IACnB,OAAO,IAAI;EACf;EACAC,4BAA4BA,CAACC,GAAG,EAAE;IAC9B;IACA,OAAO,IAAI,CAAChB,kBAAkB,CAACiB,qBAAqB,CAACD,GAAG,CAAC;EAC7D;EACAE,6BAA6BA,CAACC,IAAI,EAAE;IAChC,OAAO,IAAI,CAACnB,kBAAkB,CAACiB,qBAAqB,CAACE,IAAI,CAACH,GAAG,CAAC;EAClE;EACAI,wBAAwBA,CAAA,EAAG;IACvB,OAAO;MACH1B,gBAAgB,EAAE,IAAI,CAACc,YAAY,CAACd,gBAAgB;MACpDC,iBAAiB,EAAE,IAAI,CAACa,YAAY,CAACb;IACzC,CAAC;EACL;AACJ;AACA;AACA;AACA;AACA;AACA,OAAO,MAAM0B,oBAAoB,CAAC;EAC9B7B,WAAWA,CAAC8B,iBAAiB,EAAE;IAC3B,IAAI,CAACC,mBAAmB,GAAGtB,SAAS,CAACC,EAAE,CAACsB,oBAAoB,CAACF,iBAAiB,CAACvB,KAAK,CAAC0B,SAAS,CAAC,CAAC,CAAC;EACrG;EACMC,sBAAsBA,CAACC,SAAS,EAAE;IAAA,IAAAC,KAAA;IAAA,OAAAC,iBAAA;MACpC,MAAMD,KAAI,CAACL,mBAAmB,CAACG,sBAAsB,CAACC,SAAS,CAAC;MAChEC,KAAI,CAACE,OAAO,GAAGF,KAAI,CAACL,mBAAmB,CAACO,OAAO;MAC/C,OAAOF,KAAI,CAACE,OAAO;IAAC;EACxB;EACAC,OAAOA,CAAA,EAAG;IACN;EAAA;AAER","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|