f561188e4a501b411702d887e3f1258a0e79c3df21c43b52481af25ec746494f.json 7.0 KB

1
  1. {"ast":null,"code":"import { FrameGraphPass } from \"./pass.js\";\n/**\n * Render pass used to render objects.\n */\nexport class FrameGraphRenderPass extends FrameGraphPass {\n /**\n * Checks if a pass is a render pass.\n * @param pass The pass to check.\n * @returns True if the pass is a render pass, else false.\n */\n static IsRenderPass(pass) {\n return pass.setRenderTarget !== undefined;\n }\n /**\n * Gets the render target(s) used by the render pass.\n */\n get renderTarget() {\n return this._renderTarget;\n }\n /**\n * Gets the render target depth used by the render pass.\n */\n get renderTargetDepth() {\n return this._renderTargetDepth;\n }\n /** @internal */\n constructor(name, parentTask, context, engine) {\n super(name, parentTask, context);\n this._usedTextures = [];\n this._engine = engine;\n }\n /**\n * Indicates that the pass will use the given texture.\n * Use this method to indicate that the pass will use a texture so that the frame graph can handle the texture's lifecycle.\n * You don't have to call this method for the render target / render target depth textures.\n * @param texture The texture used.\n */\n useTexture(texture) {\n this._usedTextures.push(texture);\n }\n /**\n * Sets the render target(s) to use for rendering.\n * @param renderTargetHandle The render target to use for rendering, or an array of render targets to use for multi render target rendering.\n */\n setRenderTarget(renderTargetHandle) {\n this._renderTarget = renderTargetHandle;\n }\n /**\n * Sets the render target depth to use for rendering.\n * @param renderTargetHandle The render target depth to use for rendering.\n */\n setRenderTargetDepth(renderTargetHandle) {\n this._renderTargetDepth = renderTargetHandle;\n }\n /** @internal */\n _execute() {\n this._frameGraphRenderTarget = this._frameGraphRenderTarget || this._context.createRenderTarget(this.name, this._renderTarget, this._renderTargetDepth);\n this._context.bindRenderTarget(this._frameGraphRenderTarget, `frame graph render pass - ${this.name}`);\n super._execute();\n this._context._flushDebugMessages();\n }\n /** @internal */\n _isValid() {\n const errMsg = super._isValid();\n return errMsg ? errMsg : this._renderTarget !== undefined || this.renderTargetDepth !== undefined ? null : \"Render target and render target depth cannot both be undefined.\";\n }\n}","map":{"version":3,"names":["FrameGraphPass","FrameGraphRenderPass","IsRenderPass","pass","setRenderTarget","undefined","renderTarget","_renderTarget","renderTargetDepth","_renderTargetDepth","constructor","name","parentTask","context","engine","_usedTextures","_engine","useTexture","texture","push","renderTargetHandle","setRenderTargetDepth","_execute","_frameGraphRenderTarget","_context","createRenderTarget","bindRenderTarget","_flushDebugMessages","_isValid","errMsg"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/@babylonjs/core/FrameGraph/Passes/renderPass.js"],"sourcesContent":["import { FrameGraphPass } from \"./pass.js\";\n/**\n * Render pass used to render objects.\n */\nexport class FrameGraphRenderPass extends FrameGraphPass {\n /**\n * Checks if a pass is a render pass.\n * @param pass The pass to check.\n * @returns True if the pass is a render pass, else false.\n */\n static IsRenderPass(pass) {\n return pass.setRenderTarget !== undefined;\n }\n /**\n * Gets the render target(s) used by the render pass.\n */\n get renderTarget() {\n return this._renderTarget;\n }\n /**\n * Gets the render target depth used by the render pass.\n */\n get renderTargetDepth() {\n return this._renderTargetDepth;\n }\n /** @internal */\n constructor(name, parentTask, context, engine) {\n super(name, parentTask, context);\n this._usedTextures = [];\n this._engine = engine;\n }\n /**\n * Indicates that the pass will use the given texture.\n * Use this method to indicate that the pass will use a texture so that the frame graph can handle the texture's lifecycle.\n * You don't have to call this method for the render target / render target depth textures.\n * @param texture The texture used.\n */\n useTexture(texture) {\n this._usedTextures.push(texture);\n }\n /**\n * Sets the render target(s) to use for rendering.\n * @param renderTargetHandle The render target to use for rendering, or an array of render targets to use for multi render target rendering.\n */\n setRenderTarget(renderTargetHandle) {\n this._renderTarget = renderTargetHandle;\n }\n /**\n * Sets the render target depth to use for rendering.\n * @param renderTargetHandle The render target depth to use for rendering.\n */\n setRenderTargetDepth(renderTargetHandle) {\n this._renderTargetDepth = renderTargetHandle;\n }\n /** @internal */\n _execute() {\n this._frameGraphRenderTarget = this._frameGraphRenderTarget || this._context.createRenderTarget(this.name, this._renderTarget, this._renderTargetDepth);\n this._context.bindRenderTarget(this._frameGraphRenderTarget, `frame graph render pass - ${this.name}`);\n super._execute();\n this._context._flushDebugMessages();\n }\n /** @internal */\n _isValid() {\n const errMsg = super._isValid();\n return errMsg\n ? errMsg\n : this._renderTarget !== undefined || this.renderTargetDepth !== undefined\n ? null\n : \"Render target and render target depth cannot both be undefined.\";\n }\n}\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,WAAW;AAC1C;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,SAASD,cAAc,CAAC;EACrD;AACJ;AACA;AACA;AACA;EACI,OAAOE,YAAYA,CAACC,IAAI,EAAE;IACtB,OAAOA,IAAI,CAACC,eAAe,KAAKC,SAAS;EAC7C;EACA;AACJ;AACA;EACI,IAAIC,YAAYA,CAAA,EAAG;IACf,OAAO,IAAI,CAACC,aAAa;EAC7B;EACA;AACJ;AACA;EACI,IAAIC,iBAAiBA,CAAA,EAAG;IACpB,OAAO,IAAI,CAACC,kBAAkB;EAClC;EACA;EACAC,WAAWA,CAACC,IAAI,EAAEC,UAAU,EAAEC,OAAO,EAAEC,MAAM,EAAE;IAC3C,KAAK,CAACH,IAAI,EAAEC,UAAU,EAAEC,OAAO,CAAC;IAChC,IAAI,CAACE,aAAa,GAAG,EAAE;IACvB,IAAI,CAACC,OAAO,GAAGF,MAAM;EACzB;EACA;AACJ;AACA;AACA;AACA;AACA;EACIG,UAAUA,CAACC,OAAO,EAAE;IAChB,IAAI,CAACH,aAAa,CAACI,IAAI,CAACD,OAAO,CAAC;EACpC;EACA;AACJ;AACA;AACA;EACId,eAAeA,CAACgB,kBAAkB,EAAE;IAChC,IAAI,CAACb,aAAa,GAAGa,kBAAkB;EAC3C;EACA;AACJ;AACA;AACA;EACIC,oBAAoBA,CAACD,kBAAkB,EAAE;IACrC,IAAI,CAACX,kBAAkB,GAAGW,kBAAkB;EAChD;EACA;EACAE,QAAQA,CAAA,EAAG;IACP,IAAI,CAACC,uBAAuB,GAAG,IAAI,CAACA,uBAAuB,IAAI,IAAI,CAACC,QAAQ,CAACC,kBAAkB,CAAC,IAAI,CAACd,IAAI,EAAE,IAAI,CAACJ,aAAa,EAAE,IAAI,CAACE,kBAAkB,CAAC;IACvJ,IAAI,CAACe,QAAQ,CAACE,gBAAgB,CAAC,IAAI,CAACH,uBAAuB,EAAE,6BAA6B,IAAI,CAACZ,IAAI,EAAE,CAAC;IACtG,KAAK,CAACW,QAAQ,CAAC,CAAC;IAChB,IAAI,CAACE,QAAQ,CAACG,mBAAmB,CAAC,CAAC;EACvC;EACA;EACAC,QAAQA,CAAA,EAAG;IACP,MAAMC,MAAM,GAAG,KAAK,CAACD,QAAQ,CAAC,CAAC;IAC/B,OAAOC,MAAM,GACPA,MAAM,GACN,IAAI,CAACtB,aAAa,KAAKF,SAAS,IAAI,IAAI,CAACG,iBAAiB,KAAKH,SAAS,GACpE,IAAI,GACJ,iEAAiE;EAC/E;AACJ","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}