@babylonjs/smart-filters 0.3.9-alpha → 0.3.10-alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@ import type { InitializationData, SmartFilter } from "../smartFilter";
2
2
  import { ConnectionPointType } from "../connection/connectionPointType.js";
3
3
  import { BaseBlock } from "./baseBlock.js";
4
4
  import type { Nullable } from "@babylonjs/core/types";
5
- import type { ThinRenderTargetTexture } from "@babylonjs/core/Materials/Textures/thinRenderTargetTexture";
5
+ import type { RenderTargetWrapper } from "@babylonjs/core/Engines/renderTargetWrapper";
6
6
  /**
7
7
  * The output block of a smart filter.
8
8
  *
@@ -20,10 +20,10 @@ export declare class OutputBlock extends BaseBlock {
20
20
  */
21
21
  readonly input: import("../connection/connectionPoint").ConnectionPoint<ConnectionPointType.Texture>;
22
22
  /**
23
- * If supplied, the Smart Filter will render into this texture. Otherwise, it renders
23
+ * If supplied, the Smart Filter will render into this RenderTargetWrapper. Otherwise, it renders
24
24
  * into the the canvas or WebGL context the ThinEngine is using for rendering.
25
25
  */
26
- renderTargetTexture: Nullable<ThinRenderTargetTexture>;
26
+ renderTargetWrapper: Nullable<RenderTargetWrapper>;
27
27
  /**
28
28
  * Create a new output block.
29
29
  * @param smartFilter - The smart filter this block belongs to
@@ -1 +1 @@
1
- {"version":3,"file":"outputBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/outputBlock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4DAA4D,CAAC;AAM1G;;;;;GAKG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACtC;;OAEG;IACH,OAAuB,SAAS,SAAiB;IAEjD;;;OAGG;IACH,SAAgB,KAAK,uFAA6D;IAElF;;;OAGG;IACI,mBAAmB,EAAE,QAAQ,CAAC,uBAAuB,CAAC,CAAQ;IAErE;;;OAGG;gBACS,WAAW,EAAE,WAAW;IAIpC;;OAEG;IACa,iBAAiB,IAAI,IAAI;IAQzC;;OAEG;IACa,oBAAoB,IAAI,IAAI;IAQ5C;;;;OAIG;IACa,qCAAqC,CACjD,kBAAkB,EAAE,kBAAkB,EACtC,WAAW,EAAE,OAAO,GACrB,IAAI;CAmBV"}
1
+ {"version":3,"file":"outputBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/outputBlock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAMvF;;;;;GAKG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACtC;;OAEG;IACH,OAAuB,SAAS,SAAiB;IAEjD;;;OAGG;IACH,SAAgB,KAAK,uFAA6D;IAElF;;;OAGG;IACI,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAQ;IAEjE;;;OAGG;gBACS,WAAW,EAAE,WAAW;IAIpC;;OAEG;IACa,iBAAiB,IAAI,IAAI;IAQzC;;OAEG;IACa,oBAAoB,IAAI,IAAI;IAQ5C;;;;OAIG;IACa,qCAAqC,CACjD,kBAAkB,EAAE,kBAAkB,EACtC,WAAW,EAAE,OAAO,GACrB,IAAI;CAmBV"}
@@ -22,10 +22,10 @@ export class OutputBlock extends BaseBlock {
22
22
  */
23
23
  this.input = this._registerInput("input", ConnectionPointType.Texture);
24
24
  /**
25
- * If supplied, the Smart Filter will render into this texture. Otherwise, it renders
25
+ * If supplied, the Smart Filter will render into this RenderTargetWrapper. Otherwise, it renders
26
26
  * into the the canvas or WebGL context the ThinEngine is using for rendering.
27
27
  */
28
- this.renderTargetTexture = null;
28
+ this.renderTargetWrapper = null;
29
29
  }
30
30
  /**
31
31
  * Prepares all blocks for runtime by traversing the graph.
@@ -61,7 +61,7 @@ export class OutputBlock extends BaseBlock {
61
61
  const shaderBlockRuntime = new ShaderRuntime(runtime.effectRenderer, shaderProgram, new OutputShaderBinding(this.input.runtimeData));
62
62
  initializationData.initializationPromises.push(shaderBlockRuntime.onReadyAsync);
63
63
  runtime.registerResource(shaderBlockRuntime);
64
- registerFinalRenderCommand(this.renderTargetTexture, runtime, this, shaderBlockRuntime);
64
+ registerFinalRenderCommand(this.renderTargetWrapper, runtime, this, shaderBlockRuntime);
65
65
  super.generateCommandsAndGatherInitPromises(initializationData, finalOutput);
66
66
  }
67
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"outputBlock.js","sourceRoot":"","sources":["../../src/blocks/outputBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAGrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAG3E,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAElE;;;;;GAKG;AACH,MAAM,OAAO,WAAY,SAAQ,SAAS;IAkBtC;;;OAGG;IACH,YAAY,WAAwB;QAChC,KAAK,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAjBjC;;;WAGG;QACa,UAAK,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAElF;;;WAGG;QACI,wBAAmB,GAAsC,IAAI,CAAC;IAQrE,CAAC;IAED;;OAEG;IACa,iBAAiB;QAC7B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAgB,EAAE,UAAkB,EAAE,EAAE;YACpD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjB,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC9B,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACa,oBAAoB;QAChC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAgB,EAAE,UAAkB,EAAE,EAAE;YACpD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjB,KAAK,CAAC,oBAAoB,EAAE,CAAC;YACjC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACa,qCAAqC,CACjD,kBAAsC,EACtC,WAAoB;;QAEpB,2FAA2F;QAC3F,iEAAiE;QACjE,IAAI,CAAA,MAAA,IAAI,CAAC,KAAK,CAAC,WAAW,0CAAE,UAAU,CAAC,OAAO,KAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACvE,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC;YAE3C,MAAM,kBAAkB,GAAG,IAAI,aAAa,CACxC,OAAO,CAAC,cAAc,EACtB,aAAa,EACb,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAClD,CAAC;YACF,kBAAkB,CAAC,sBAAsB,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;YAChF,OAAO,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;YAE7C,0BAA0B,CAAC,IAAI,CAAC,mBAAmB,EAAE,OAAO,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC;YAExF,KAAK,CAAC,qCAAqC,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QACjF,CAAC;IACL,CAAC;;AAzED;;GAEG;AACoB,qBAAS,GAAG,aAAa,AAAhB,CAAiB;AAyErD;;GAEG;AACH,MAAM,mBAAoB,SAAQ,OAAO;IAGrC;;;OAGG;IACH,YAAY,YAAsD;QAC9D,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACtC,CAAC;IAED;;;;OAIG;IACa,IAAI,CAAC,MAAc;QAC/B,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACtF,CAAC;CACJ"}
1
+ {"version":3,"file":"outputBlock.js","sourceRoot":"","sources":["../../src/blocks/outputBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAGrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAG3E,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAElE;;;;;GAKG;AACH,MAAM,OAAO,WAAY,SAAQ,SAAS;IAkBtC;;;OAGG;IACH,YAAY,WAAwB;QAChC,KAAK,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAjBjC;;;WAGG;QACa,UAAK,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAElF;;;WAGG;QACI,wBAAmB,GAAkC,IAAI,CAAC;IAQjE,CAAC;IAED;;OAEG;IACa,iBAAiB;QAC7B,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAgB,EAAE,UAAkB,EAAE,EAAE;YACpD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjB,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC9B,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACa,oBAAoB;QAChC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAgB,EAAE,UAAkB,EAAE,EAAE;YACpD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjB,KAAK,CAAC,oBAAoB,EAAE,CAAC;YACjC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACa,qCAAqC,CACjD,kBAAsC,EACtC,WAAoB;;QAEpB,2FAA2F;QAC3F,iEAAiE;QACjE,IAAI,CAAA,MAAA,IAAI,CAAC,KAAK,CAAC,WAAW,0CAAE,UAAU,CAAC,OAAO,KAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACvE,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC;YAE3C,MAAM,kBAAkB,GAAG,IAAI,aAAa,CACxC,OAAO,CAAC,cAAc,EACtB,aAAa,EACb,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAClD,CAAC;YACF,kBAAkB,CAAC,sBAAsB,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;YAChF,OAAO,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;YAE7C,0BAA0B,CAAC,IAAI,CAAC,mBAAmB,EAAE,OAAO,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC;YAExF,KAAK,CAAC,qCAAqC,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QACjF,CAAC;IACL,CAAC;;AAzED;;GAEG;AACoB,qBAAS,GAAG,aAAa,AAAhB,CAAiB;AAyErD;;GAEG;AACH,MAAM,mBAAoB,SAAQ,OAAO;IAGrC;;;OAGG;IACH,YAAY,YAAsD;QAC9D,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACtC,CAAC;IAED;;;;OAIG;IACa,IAAI,CAAC,MAAc;QAC/B,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACtF,CAAC;CACJ"}
@@ -4,7 +4,7 @@ import { ConnectionPointType } from "../connection/connectionPointType.js";
4
4
  import { createCommand } from "../command/command.js";
5
5
  import { DisableableBlock } from "./disableableBlock.js";
6
6
  import { undecorateSymbol } from "../utils/shaderCodeUtils.js";
7
- import { getRenderTarget, registerFinalRenderCommand } from "../utils/renderTargetUtils.js";
7
+ import { getRenderTargetWrapper, registerFinalRenderCommand } from "../utils/renderTargetUtils.js";
8
8
  /**
9
9
  * This is the base class for all shader blocks.
10
10
  *
@@ -80,10 +80,10 @@ export class ShaderBlock extends DisableableBlock {
80
80
  initializationData.initializationPromises.push(shaderBlockRuntime.onReadyAsync);
81
81
  runtime.registerResource(shaderBlockRuntime);
82
82
  if (finalOutput) {
83
- registerFinalRenderCommand(initializationData.outputBlock.renderTargetTexture, runtime, this, shaderBlockRuntime);
83
+ registerFinalRenderCommand(initializationData.outputBlock.renderTargetWrapper, runtime, this, shaderBlockRuntime);
84
84
  }
85
85
  else {
86
- const renderTarget = getRenderTarget((_a = this.output.runtimeData) === null || _a === void 0 ? void 0 : _a.value, this.getClassName());
86
+ const renderTarget = getRenderTargetWrapper((_a = this.output.runtimeData) === null || _a === void 0 ? void 0 : _a.value, this.getClassName());
87
87
  runtime.registerCommand(createCommand(`${this.getClassName()}.render`, this, () => {
88
88
  shaderBlockRuntime.renderToTexture(renderTarget);
89
89
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"shaderBlock.js","sourceRoot":"","sources":["../../src/blocks/shaderBlock.ts"],"names":[],"mappings":"AACA,OAAO,2DAA2D,CAAC;AAMnE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAE5F;;;;;;GAMG;AACH,MAAM,OAAgB,WAAY,SAAQ,gBAAgB;IAyBtD;;OAEG;IACH,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAW,YAAY,CAAC,KAAa;QACjC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACa,mBAAmB,CAAC,uBAA8D;QAC9F,MAAM,KAAK,GAAG,IAAI,CAAC,iCAAiC,EAAE,CAAC;QAEvD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC3C,uBAAuB,aAAvB,uBAAuB,uBAAvB,uBAAuB,CAAE,IAAI,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACvD,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;IAES,iCAAiC;QACvC,MAAM,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAC/E,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACxB,MAAM,oBAAoB,IAAI,CAAC,IAAI,+CAA+C,CAAC;QACvF,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;YACrD,MAAM,2BAA2B,oBAAoB,qBAAqB,IAAI,CAAC,IAAI,qBAAqB,CAAC;QAC7G,CAAC;QAED,OAAO,gBAAgB,CAAC,WAAW,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACH,YAAY,WAAwB,EAAE,IAAY,EAAE,mBAAmB,GAAG,KAAK;QAC3E,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAvDlD;;WAEG;QACa,WAAM,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAE3E,kBAAa,GAAW,CAAC,CAAC;IAmDpC,CAAC;IAED;;;OAGG;IACI,gBAAgB;QACnB,OAAQ,IAAI,CAAC,WAAkC,CAAC,UAAU,CAAC;IAC/D,CAAC;IAED;;;;OAIG;IACa,qCAAqC,CACjD,kBAAsC,EACtC,WAAoB;;QAEpB,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC;QAC3C,MAAM,kBAAkB,GAAG,IAAI,aAAa,CACxC,OAAO,CAAC,cAAc,EACtB,IAAI,CAAC,gBAAgB,EAAE,EACvB,IAAI,CAAC,gBAAgB,EAAE,CAC1B,CAAC;QACF,kBAAkB,CAAC,sBAAsB,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAChF,OAAO,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QAE7C,IAAI,WAAW,EAAE,CAAC;YACd,0BAA0B,CACtB,kBAAkB,CAAC,WAAW,CAAC,mBAAmB,EAClD,OAAO,EACP,IAAI,EACJ,kBAAkB,CACrB,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,MAAM,YAAY,GAAG,eAAe,CAChC,MAAA,IAAI,CAAC,MAAM,CAAC,WAAW,0CAAE,KAAgC,EACzD,IAAI,CAAC,YAAY,EAAE,CACtB,CAAC;YAEF,OAAO,CAAC,eAAe,CACnB,aAAa,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE;gBACtD,kBAAkB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;YACrD,CAAC,CAAC,CACL,CAAC;QACN,CAAC;QAED,KAAK,CAAC,qCAAqC,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;IACjF,CAAC;;AA1HD;;GAEG;AACoB,qBAAS,GAAG,aAAa,AAAhB,CAAiB"}
1
+ {"version":3,"file":"shaderBlock.js","sourceRoot":"","sources":["../../src/blocks/shaderBlock.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"renderTargetGenerator.d.ts","sourceRoot":"","sources":["../../src/runtime/renderTargetGenerator.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAqBtE;;GAEG;AACH,qBAAa,qBAAqB;IAC9B,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,iBAAiB,CAAsC;IAC/D,OAAO,CAAC,kBAAkB,CAAC;IAE3B;;;OAGG;gBACS,QAAQ,UAAO;IAM3B;;OAEG;IACH,IAAW,iBAAiB,WAE3B;IAED;;;;OAIG;IACI,iBAAiB,CAAC,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB;IAqDzF,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,WAAW;IAgCnB,OAAO,CAAC,eAAe;IAoBvB;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;CAyCzB"}
1
+ {"version":3,"file":"renderTargetGenerator.d.ts","sourceRoot":"","sources":["../../src/runtime/renderTargetGenerator.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAqBtE;;GAEG;AACH,qBAAa,qBAAqB;IAC9B,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,iBAAiB,CAAsC;IAC/D,OAAO,CAAC,kBAAkB,CAAC;IAE3B;;;OAGG;gBACS,QAAQ,UAAO;IAM3B;;OAEG;IACH,IAAW,iBAAiB,WAE3B;IAED;;;;OAIG;IACI,iBAAiB,CAAC,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB;IAqDzF,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,WAAW;IAgCnB,OAAO,CAAC,eAAe;IAoBvB;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;CAwCzB"}
@@ -129,7 +129,6 @@ export class RenderTargetGenerator {
129
129
  * @returns The render target texture
130
130
  */
131
131
  _createTexture(runtime, smartFilter, ratio) {
132
- var _a;
133
132
  const engine = runtime.engine;
134
133
  // We are only rendering full screen post process without depth or stencil information
135
134
  const setup = {
@@ -141,10 +140,9 @@ export class RenderTargetGenerator {
141
140
  // Get the smartFilter output size - either from the output block's renderTargetTexture or the engine's render size
142
141
  let outputWidth;
143
142
  let outputHeight;
144
- const renderTargetTextureSize = (_a = smartFilter.outputBlock.renderTargetTexture) === null || _a === void 0 ? void 0 : _a.getSize();
145
- if (renderTargetTextureSize) {
146
- outputWidth = renderTargetTextureSize.width;
147
- outputHeight = renderTargetTextureSize.height;
143
+ if (smartFilter.outputBlock.renderTargetWrapper) {
144
+ outputWidth = smartFilter.outputBlock.renderTargetWrapper.width;
145
+ outputHeight = smartFilter.outputBlock.renderTargetWrapper.height;
148
146
  }
149
147
  else {
150
148
  outputWidth = engine.getRenderWidth(true);
@@ -1 +1 @@
1
- {"version":3,"file":"renderTargetGenerator.js","sourceRoot":"","sources":["../../src/runtime/renderTargetGenerator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,+DAA+D,CAAC;AAKxG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAiB3E;;GAEG;AACH,MAAM,OAAO,qBAAqB;IAK9B;;;OAGG;IACH,YAAY,QAAQ,GAAG,IAAI;QACvB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAC;QACnC,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,IAAW,iBAAiB;QACxB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACI,iBAAiB,CAAC,WAAwB,EAAE,kBAAsC;QACrF,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAC/B,kBAAkB,EAClB,CAAC,KAAgB,EAAE,kBAAsC,EAAE,EAAE;YACzD,IAAI,CAAC,CAAC,KAAK,YAAY,WAAW,CAAC,EAAE,CAAC;gBAClC,OAAO;YACX,CAAC;YAED,IAAI,iBAAiB,GAAgC,IAAI,CAAC;YAE1D,kGAAkG;YAClG,qIAAqI;YACrI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBACxF,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;gBAElG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;oBAC5B,MAAM,aAAa,GAAG,eAAe,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;oBACjE,KAAK,CAAC,MAAM,CAAC,WAAW,GAAG,aAAa,CAAC;gBAC7C,CAAC;qBAAM,CAAC;oBACJ,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC;gBAC/D,CAAC;YACL,CAAC;YAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;oBAC7B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;wBACjC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;4BAClC,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gCACvB,iBAAkB,CAAC,QAAQ,EAAE,CAAC;4BAClC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACP,CAAC;gBACL,CAAC;gBAED,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBAC/B,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,mBAAmB,CAAC,OAAO,EAAE,CAAC;wBAC/E,SAAS;oBACb,CAAC;oBACD,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC;oBACpD,IACI,cAAc,YAAY,WAAW;wBACrC,cAAc,CAAC,MAAM,CAAC,WAAW;wBACjC,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EACzC,CAAC;wBACC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;oBAC/F,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC,CACJ,CAAC;QACF,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAEO,qBAAqB,CAAC,KAAa;QACvC,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE,CAAC;YACjD,IAAI,iBAAiB,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBACnC,OAAO,iBAAiB,CAAC;YAC7B,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,WAAW,CACf,OAAmC,EACnC,KAAa,EACb,WAAwB;QAExB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,OAAO;gBACH,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC;gBACzD,QAAQ,EAAE,CAAC;aACd,CAAC;QACN,CAAC;QAED,IAAI,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtB,kBAAkB,GAAG,IAAI,GAAG,EAAE,CAAC;YAC/B,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACrB,iBAAiB,GAAG;gBAChB,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC;gBACzD,QAAQ,EAAE,CAAC;aACd,CAAC;YACF,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC1C,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC9B,CAAC;QAED,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAEO,eAAe,CAAC,OAAoB,EAAE,KAAa;QACvD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,OAAO;QACX,CAAC;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,yEAAyE,KAAK,GAAG,CAAC,CAAC;QACvG,CAAC;QAED,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE,CAAC;YACjD,IAAI,iBAAiB,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;gBACxC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBAC7B,OAAO;YACX,CAAC;QACL,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,6DAA6D,KAAK,GAAG,CAAC,CAAC;IAC3F,CAAC;IAED;;;;;;OAMG;IACK,cAAc,CAClB,OAAmC,EACnC,WAAwB,EACxB,KAAa;;QAEb,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAE9B,sFAAsF;QACtF,MAAM,KAAK,GAAG;YACV,mBAAmB,EAAE,KAAK;YAC1B,qBAAqB,EAAE,KAAK;YAC5B,eAAe,EAAE,KAAK;YACtB,YAAY,EAAE,CAAC,EAAE,2CAA2C;SAC/D,CAAC;QAEF,mHAAmH;QACnH,IAAI,WAAmB,CAAC;QACxB,IAAI,YAAoB,CAAC;QACzB,MAAM,uBAAuB,GAAG,MAAA,WAAW,CAAC,WAAW,CAAC,mBAAmB,0CAAE,OAAO,EAAE,CAAC;QACvF,IAAI,uBAAuB,EAAE,CAAC;YAC1B,WAAW,GAAG,uBAAuB,CAAC,KAAK,CAAC;YAC5C,YAAY,GAAG,uBAAuB,CAAC,MAAM,CAAC;QAClD,CAAC;aAAM,CAAC;YACJ,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC1C,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,IAAI,GAAG;YACT,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;YACtC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC;SAC3C,CAAC;QAEF,oCAAoC;QACpC,MAAM,iBAAiB,GAAG,IAAI,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC3E,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;QAE5C,6DAA6D;QAC7D,iBAAiB,CAAC,KAAK,GAAG,CAAC,CAAC;QAC5B,iBAAiB,CAAC,KAAK,GAAG,CAAC,CAAC;QAE5B,OAAO,iBAAiB,CAAC;IAC7B,CAAC;CACJ"}
1
+ {"version":3,"file":"renderTargetGenerator.js","sourceRoot":"","sources":["../../src/runtime/renderTargetGenerator.ts"],"names":[],"mappings":"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"}
@@ -1,24 +1,24 @@
1
1
  import type { RenderTargetWrapper } from "@babylonjs/core/Engines/renderTargetWrapper";
2
- import type { ThinRenderTargetTexture } from "@babylonjs/core/Materials/Textures/thinRenderTargetTexture";
3
2
  import type { Nullable } from "@babylonjs/core/types";
4
3
  import type { BaseBlock } from "../blocks/baseBlock";
5
4
  import type { ShaderRuntime } from "../runtime/shaderRuntime";
6
5
  import type { InternalSmartFilterRuntime } from "../runtime/smartFilterRuntime";
6
+ import type { ThinRenderTargetTexture } from "@babylonjs/core/Materials/Textures/thinRenderTargetTexture.js";
7
7
  /**
8
- * Tries to get a renderTarget from a renderTargetTexture, throws an error if it fails.
9
- * @param renderTargetTexture - The renderTargetTexture to get the renderTarget from.
8
+ * Tries to get a renderTargetWrapper from a ThinRenderTargetTexture, and throws an error if it fails.
9
+ * @param renderTargetTexture - The ThinRenderTargetTexture to get the renderTarget from.
10
10
  * @param callerName - The name of the component calling this one, used for a more descriptive error message.
11
- * @returns - The renderTarget or throws an Error if it fails.
11
+ * @returns - The renderTarget or it throws an Error if it fails.
12
12
  */
13
- export declare function getRenderTarget(renderTargetTexture: Nullable<ThinRenderTargetTexture>, callerName: string): RenderTargetWrapper;
13
+ export declare function getRenderTargetWrapper(renderTargetTexture: Nullable<ThinRenderTargetTexture>, callerName: string): RenderTargetWrapper;
14
14
  /**
15
15
  * Registers the final command of the command queue - the one that draws to either the canvas or
16
16
  * renderTargetTexture.
17
- * @param renderTargetTexture - If non-null, the render target texture to render to, otherwise the command will
17
+ * @param renderTargetWrapper - If non-null, the RenderTargetWrapper to render to, otherwise the command will
18
18
  * render to the canvas.
19
19
  * @param runtime - The smart filter runtime to use.
20
20
  * @param commandOwner - The owner of the command.
21
21
  * @param shaderBlockRuntime - The shader block runtime to use.
22
22
  */
23
- export declare function registerFinalRenderCommand(renderTargetTexture: Nullable<ThinRenderTargetTexture>, runtime: InternalSmartFilterRuntime, commandOwner: BaseBlock, shaderBlockRuntime: ShaderRuntime): void;
23
+ export declare function registerFinalRenderCommand(renderTargetWrapper: Nullable<RenderTargetWrapper>, runtime: InternalSmartFilterRuntime, commandOwner: BaseBlock, shaderBlockRuntime: ShaderRuntime): void;
24
24
  //# sourceMappingURL=renderTargetUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderTargetUtils.d.ts","sourceRoot":"","sources":["../../src/utils/renderTargetUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4DAA4D,CAAC;AAC1G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAEhF;;;;;GAKG;AACH,wBAAgB,eAAe,CAC3B,mBAAmB,EAAE,QAAQ,CAAC,uBAAuB,CAAC,EACtD,UAAU,EAAE,MAAM,GACnB,mBAAmB,CAMrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACtC,mBAAmB,EAAE,QAAQ,CAAC,uBAAuB,CAAC,EACtD,OAAO,EAAE,0BAA0B,EACnC,YAAY,EAAE,SAAS,EACvB,kBAAkB,EAAE,aAAa,GAClC,IAAI,CAgBN"}
1
+ {"version":3,"file":"renderTargetUtils.d.ts","sourceRoot":"","sources":["../../src/utils/renderTargetUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+DAA+D,CAAC;AAE7G;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAClC,mBAAmB,EAAE,QAAQ,CAAC,uBAAuB,CAAC,EACtD,UAAU,EAAE,MAAM,GACnB,mBAAmB,CAMrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACtC,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB,CAAC,EAClD,OAAO,EAAE,0BAA0B,EACnC,YAAY,EAAE,SAAS,EACvB,kBAAkB,EAAE,aAAa,GAClC,IAAI,CAeN"}
@@ -1,11 +1,11 @@
1
1
  import { createCommand } from "../command/command.js";
2
2
  /**
3
- * Tries to get a renderTarget from a renderTargetTexture, throws an error if it fails.
4
- * @param renderTargetTexture - The renderTargetTexture to get the renderTarget from.
3
+ * Tries to get a renderTargetWrapper from a ThinRenderTargetTexture, and throws an error if it fails.
4
+ * @param renderTargetTexture - The ThinRenderTargetTexture to get the renderTarget from.
5
5
  * @param callerName - The name of the component calling this one, used for a more descriptive error message.
6
- * @returns - The renderTarget or throws an Error if it fails.
6
+ * @returns - The renderTarget or it throws an Error if it fails.
7
7
  */
8
- export function getRenderTarget(renderTargetTexture, callerName) {
8
+ export function getRenderTargetWrapper(renderTargetTexture, callerName) {
9
9
  const renderTarget = renderTargetTexture === null || renderTargetTexture === void 0 ? void 0 : renderTargetTexture.renderTarget;
10
10
  if (!renderTarget) {
11
11
  throw new Error(`${callerName} could not get a renderTarget it needed.`);
@@ -15,18 +15,17 @@ export function getRenderTarget(renderTargetTexture, callerName) {
15
15
  /**
16
16
  * Registers the final command of the command queue - the one that draws to either the canvas or
17
17
  * renderTargetTexture.
18
- * @param renderTargetTexture - If non-null, the render target texture to render to, otherwise the command will
18
+ * @param renderTargetWrapper - If non-null, the RenderTargetWrapper to render to, otherwise the command will
19
19
  * render to the canvas.
20
20
  * @param runtime - The smart filter runtime to use.
21
21
  * @param commandOwner - The owner of the command.
22
22
  * @param shaderBlockRuntime - The shader block runtime to use.
23
23
  */
24
- export function registerFinalRenderCommand(renderTargetTexture, runtime, commandOwner, shaderBlockRuntime) {
24
+ export function registerFinalRenderCommand(renderTargetWrapper, runtime, commandOwner, shaderBlockRuntime) {
25
25
  const commandOwnerClassName = commandOwner.getClassName();
26
- if (renderTargetTexture) {
27
- const renderTarget = getRenderTarget(renderTargetTexture, commandOwnerClassName);
26
+ if (renderTargetWrapper) {
28
27
  runtime.registerCommand(createCommand(`${commandOwnerClassName}.renderToFinalTexture`, commandOwner, () => {
29
- shaderBlockRuntime.renderToTexture(renderTarget);
28
+ shaderBlockRuntime.renderToTexture(renderTargetWrapper);
30
29
  }));
31
30
  }
32
31
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"renderTargetUtils.js","sourceRoot":"","sources":["../../src/utils/renderTargetUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAKtD;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC3B,mBAAsD,EACtD,UAAkB;IAElB,MAAM,YAAY,GAAG,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,YAAY,CAAC;IACvD,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,GAAG,UAAU,0CAA0C,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,YAAY,CAAC;AACxB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,0BAA0B,CACtC,mBAAsD,EACtD,OAAmC,EACnC,YAAuB,EACvB,kBAAiC;IAEjC,MAAM,qBAAqB,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC;IAC1D,IAAI,mBAAmB,EAAE,CAAC;QACtB,MAAM,YAAY,GAAG,eAAe,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,CAAC;QACjF,OAAO,CAAC,eAAe,CACnB,aAAa,CAAC,GAAG,qBAAqB,uBAAuB,EAAE,YAAY,EAAE,GAAG,EAAE;YAC9E,kBAAkB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QACrD,CAAC,CAAC,CACL,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,eAAe,CACnB,aAAa,CAAC,GAAG,qBAAqB,iBAAiB,EAAE,YAAY,EAAE,GAAG,EAAE;YACxE,kBAAkB,CAAC,cAAc,EAAE,CAAC;QACxC,CAAC,CAAC,CACL,CAAC;IACN,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"renderTargetUtils.js","sourceRoot":"","sources":["../../src/utils/renderTargetUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAMtD;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAClC,mBAAsD,EACtD,UAAkB;IAElB,MAAM,YAAY,GAAG,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,YAAY,CAAC;IACvD,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,GAAG,UAAU,0CAA0C,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,YAAY,CAAC;AACxB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,0BAA0B,CACtC,mBAAkD,EAClD,OAAmC,EACnC,YAAuB,EACvB,kBAAiC;IAEjC,MAAM,qBAAqB,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC;IAC1D,IAAI,mBAAmB,EAAE,CAAC;QACtB,OAAO,CAAC,eAAe,CACnB,aAAa,CAAC,GAAG,qBAAqB,uBAAuB,EAAE,YAAY,EAAE,GAAG,EAAE;YAC9E,kBAAkB,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAC5D,CAAC,CAAC,CACL,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,eAAe,CACnB,aAAa,CAAC,GAAG,qBAAqB,iBAAiB,EAAE,YAAY,EAAE,GAAG,EAAE;YACxE,kBAAkB,CAAC,cAAc,EAAE,CAAC;QACxC,CAAC,CAAC,CACL,CAAC;IACN,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs/smart-filters",
3
- "version": "0.3.9-alpha",
3
+ "version": "0.3.10-alpha",
4
4
  "description": "Babylon.js Smart Filter core",
5
5
  "author": {
6
6
  "name": "Sebastien VANDENBERGHE"
@@ -3,7 +3,7 @@ import { ConnectionPointType } from "../connection/connectionPointType.js";
3
3
  import { BaseBlock } from "./baseBlock.js";
4
4
  import { Binding, ShaderRuntime } from "../runtime/shaderRuntime.js";
5
5
  import type { Nullable } from "@babylonjs/core/types";
6
- import type { ThinRenderTargetTexture } from "@babylonjs/core/Materials/Textures/thinRenderTargetTexture";
6
+ import type { RenderTargetWrapper } from "@babylonjs/core/Engines/renderTargetWrapper";
7
7
  import { registerFinalRenderCommand } from "../utils/renderTargetUtils.js";
8
8
  import type { RuntimeData } from "../connection/connectionPoint";
9
9
  import type { Effect } from "@babylonjs/core/Materials/effect";
@@ -28,10 +28,10 @@ export class OutputBlock extends BaseBlock {
28
28
  public readonly input = this._registerInput("input", ConnectionPointType.Texture);
29
29
 
30
30
  /**
31
- * If supplied, the Smart Filter will render into this texture. Otherwise, it renders
31
+ * If supplied, the Smart Filter will render into this RenderTargetWrapper. Otherwise, it renders
32
32
  * into the the canvas or WebGL context the ThinEngine is using for rendering.
33
33
  */
34
- public renderTargetTexture: Nullable<ThinRenderTargetTexture> = null;
34
+ public renderTargetWrapper: Nullable<RenderTargetWrapper> = null;
35
35
 
36
36
  /**
37
37
  * Create a new output block.
@@ -85,7 +85,7 @@ export class OutputBlock extends BaseBlock {
85
85
  initializationData.initializationPromises.push(shaderBlockRuntime.onReadyAsync);
86
86
  runtime.registerResource(shaderBlockRuntime);
87
87
 
88
- registerFinalRenderCommand(this.renderTargetTexture, runtime, this, shaderBlockRuntime);
88
+ registerFinalRenderCommand(this.renderTargetWrapper, runtime, this, shaderBlockRuntime);
89
89
 
90
90
  super.generateCommandsAndGatherInitPromises(initializationData, finalOutput);
91
91
  }
@@ -10,7 +10,7 @@ import { ConnectionPointType } from "../connection/connectionPointType.js";
10
10
  import { createCommand } from "../command/command.js";
11
11
  import { DisableableBlock } from "./disableableBlock.js";
12
12
  import { undecorateSymbol } from "../utils/shaderCodeUtils.js";
13
- import { getRenderTarget, registerFinalRenderCommand } from "../utils/renderTargetUtils.js";
13
+ import { getRenderTargetWrapper, registerFinalRenderCommand } from "../utils/renderTargetUtils.js";
14
14
 
15
15
  /**
16
16
  * This is the base class for all shader blocks.
@@ -123,13 +123,13 @@ export abstract class ShaderBlock extends DisableableBlock {
123
123
 
124
124
  if (finalOutput) {
125
125
  registerFinalRenderCommand(
126
- initializationData.outputBlock.renderTargetTexture,
126
+ initializationData.outputBlock.renderTargetWrapper,
127
127
  runtime,
128
128
  this,
129
129
  shaderBlockRuntime
130
130
  );
131
131
  } else {
132
- const renderTarget = getRenderTarget(
132
+ const renderTarget = getRenderTargetWrapper(
133
133
  this.output.runtimeData?.value as ThinRenderTargetTexture,
134
134
  this.getClassName()
135
135
  );
@@ -199,10 +199,9 @@ export class RenderTargetGenerator {
199
199
  // Get the smartFilter output size - either from the output block's renderTargetTexture or the engine's render size
200
200
  let outputWidth: number;
201
201
  let outputHeight: number;
202
- const renderTargetTextureSize = smartFilter.outputBlock.renderTargetTexture?.getSize();
203
- if (renderTargetTextureSize) {
204
- outputWidth = renderTargetTextureSize.width;
205
- outputHeight = renderTargetTextureSize.height;
202
+ if (smartFilter.outputBlock.renderTargetWrapper) {
203
+ outputWidth = smartFilter.outputBlock.renderTargetWrapper.width;
204
+ outputHeight = smartFilter.outputBlock.renderTargetWrapper.height;
206
205
  } else {
207
206
  outputWidth = engine.getRenderWidth(true);
208
207
  outputHeight = engine.getRenderHeight(true);
@@ -1,18 +1,18 @@
1
1
  import type { RenderTargetWrapper } from "@babylonjs/core/Engines/renderTargetWrapper";
2
- import type { ThinRenderTargetTexture } from "@babylonjs/core/Materials/Textures/thinRenderTargetTexture";
3
2
  import type { Nullable } from "@babylonjs/core/types";
4
3
  import { createCommand } from "../command/command.js";
5
4
  import type { BaseBlock } from "../blocks/baseBlock";
6
5
  import type { ShaderRuntime } from "../runtime/shaderRuntime";
7
6
  import type { InternalSmartFilterRuntime } from "../runtime/smartFilterRuntime";
7
+ import type { ThinRenderTargetTexture } from "@babylonjs/core/Materials/Textures/thinRenderTargetTexture.js";
8
8
 
9
9
  /**
10
- * Tries to get a renderTarget from a renderTargetTexture, throws an error if it fails.
11
- * @param renderTargetTexture - The renderTargetTexture to get the renderTarget from.
10
+ * Tries to get a renderTargetWrapper from a ThinRenderTargetTexture, and throws an error if it fails.
11
+ * @param renderTargetTexture - The ThinRenderTargetTexture to get the renderTarget from.
12
12
  * @param callerName - The name of the component calling this one, used for a more descriptive error message.
13
- * @returns - The renderTarget or throws an Error if it fails.
13
+ * @returns - The renderTarget or it throws an Error if it fails.
14
14
  */
15
- export function getRenderTarget(
15
+ export function getRenderTargetWrapper(
16
16
  renderTargetTexture: Nullable<ThinRenderTargetTexture>,
17
17
  callerName: string
18
18
  ): RenderTargetWrapper {
@@ -26,24 +26,23 @@ export function getRenderTarget(
26
26
  /**
27
27
  * Registers the final command of the command queue - the one that draws to either the canvas or
28
28
  * renderTargetTexture.
29
- * @param renderTargetTexture - If non-null, the render target texture to render to, otherwise the command will
29
+ * @param renderTargetWrapper - If non-null, the RenderTargetWrapper to render to, otherwise the command will
30
30
  * render to the canvas.
31
31
  * @param runtime - The smart filter runtime to use.
32
32
  * @param commandOwner - The owner of the command.
33
33
  * @param shaderBlockRuntime - The shader block runtime to use.
34
34
  */
35
35
  export function registerFinalRenderCommand(
36
- renderTargetTexture: Nullable<ThinRenderTargetTexture>,
36
+ renderTargetWrapper: Nullable<RenderTargetWrapper>,
37
37
  runtime: InternalSmartFilterRuntime,
38
38
  commandOwner: BaseBlock,
39
39
  shaderBlockRuntime: ShaderRuntime
40
40
  ): void {
41
41
  const commandOwnerClassName = commandOwner.getClassName();
42
- if (renderTargetTexture) {
43
- const renderTarget = getRenderTarget(renderTargetTexture, commandOwnerClassName);
42
+ if (renderTargetWrapper) {
44
43
  runtime.registerCommand(
45
44
  createCommand(`${commandOwnerClassName}.renderToFinalTexture`, commandOwner, () => {
46
- shaderBlockRuntime.renderToTexture(renderTarget);
45
+ shaderBlockRuntime.renderToTexture(renderTargetWrapper);
47
46
  })
48
47
  );
49
48
  } else {