shaders 3.0.437 → 3.0.438

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.
package/dist/cli.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- /* shaders@3.0.437 CLI — npx shaders install-mcp. https://shaders.com */
2
+ /* shaders@3.0.438 CLI — npx shaders install-mcp. https://shaders.com */
3
3
  import { createRequire as __cliCreateRequire } from "module";
4
4
  const require = __cliCreateRequire(import.meta.url);
5
5
  var Vi=Object.create;var sr=Object.defineProperty;var Yi=Object.getOwnPropertyDescriptor;var Gi=Object.getOwnPropertyNames;var Ki=Object.getPrototypeOf,qi=Object.prototype.hasOwnProperty;var Ji=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,i)=>(typeof require<"u"?require:t)[i]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var $=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var zi=(e,t,i,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of Gi(t))!qi.call(e,u)&&u!==i&&sr(e,u,{get:()=>t[u],enumerable:!(r=Yi(t,u))||r.enumerable});return e};var Se=(e,t,i)=>(i=e!=null?Vi(Ki(e)):{},zi(t||!e||!e.__esModule?sr(i,"default",{value:e,enumerable:!0}):i,e));var Dt=$((ka,or)=>{"use strict";var ht={to(e,t){return t?`\x1B[${t+1};${e+1}H`:`\x1B[${e+1}G`},move(e,t){let i="";return e<0?i+=`\x1B[${-e}D`:e>0&&(i+=`\x1B[${e}C`),t<0?i+=`\x1B[${-t}A`:t>0&&(i+=`\x1B[${t}B`),i},up:(e=1)=>`\x1B[${e}A`,down:(e=1)=>`\x1B[${e}B`,forward:(e=1)=>`\x1B[${e}C`,backward:(e=1)=>`\x1B[${e}D`,nextLine:(e=1)=>"\x1B[E".repeat(e),prevLine:(e=1)=>"\x1B[F".repeat(e),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},Qi={up:(e=1)=>"\x1B[S".repeat(e),down:(e=1)=>"\x1B[T".repeat(e)},Zi={screen:"\x1B[2J",up:(e=1)=>"\x1B[1J".repeat(e),down:(e=1)=>"\x1B[J".repeat(e),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(e){let t="";for(let i=0;i<e;i++)t+=this.line+(i<e-1?ht.up():"");return e&&(t+=ht.left),t}};or.exports={cursor:ht,scroll:Qi,erase:Zi,beep:"\x07"}});var cr=$(($a,ft)=>{var Oe=process||{},lr=Oe.argv||[],Be=Oe.env||{},Xi=!(Be.NO_COLOR||lr.includes("--no-color"))&&(!!Be.FORCE_COLOR||lr.includes("--color")||Oe.platform==="win32"||(Oe.stdout||{}).isTTY&&Be.TERM!=="dumb"||!!Be.CI),eu=(e,t,i=e)=>r=>{let u=""+r,s=u.indexOf(t,e.length);return~s?e+tu(u,t,i,s)+t:e+u+t},tu=(e,t,i,r)=>{let u="",s=0;do u+=e.substring(s,r)+i,s=r+t.length,r=e.indexOf(t,s);while(~r);return u+e.substring(s)},ar=(e=Xi)=>{let t=e?eu:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};ft.exports=ar();ft.exports.createColors=ar});var Wn=$((vc,Un)=>{"use strict";var re=class e extends Error{constructor(t,i,r){super("[ParserError] "+t,i,r),this.name="ParserError",this.code="ParserError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}},Ge=class{constructor(t){this.parser=t,this.buf="",this.returned=null,this.result=null,this.resultTable=null,this.resultArr=null}},ve=class{constructor(){this.pos=0,this.col=0,this.line=0,this.obj={},this.ctx=this.obj,this.stack=[],this._buf="",this.char=null,this.ii=0,this.state=new Ge(this.parseStart)}parse(t){if(t.length===0||t.length==null)return;this._buf=String(t),this.ii=-1,this.char=-1;let i;for(;i===!1||this.nextChar();)i=this.runOne();this._buf=null}nextChar(){return this.char===10&&(++this.line,this.col=-1),++this.ii,this.char=this._buf.codePointAt(this.ii),++this.pos,++this.col,this.haveBuffer()}haveBuffer(){return this.ii<this._buf.length}runOne(){return this.state.parser.call(this,this.state.returned)}finish(){this.char=1114112;let t;do t=this.state.parser,this.runOne();while(this.state.parser!==t);return this.ctx=null,this.state=null,this._buf=null,this.obj}next(t){if(typeof t!="function")throw new re("Tried to set state to non-existent state: "+JSON.stringify(t));this.state.parser=t}goto(t){return this.next(t),this.runOne()}call(t,i){i&&this.next(i),this.stack.push(this.state),this.state=new Ge(t)}callNow(t,i){return this.call(t,i),this.runOne()}return(t){if(this.stack.length===0)throw this.error(new re("Stack underflow"));t===void 0&&(t=this.state.buf),this.state=this.stack.pop(),this.state.returned=t}returnNow(t){return this.return(t),this.runOne()}consume(){if(this.char===1114112)throw this.error(new re("Unexpected end-of-buffer"));this.state.buf+=this._buf[this.ii]}error(t){return t.line=this.line,t.col=this.col,t.pos=this.pos,t}parseStart(){throw new re("Must declare a parseStart method")}};ve.END=1114112;ve.Error=re;Un.exports=ve});var Yn=$((wc,Vn)=>{"use strict";Vn.exports=e=>{let t=new Date(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var Ke=$((_c,Gn)=>{"use strict";Gn.exports=(e,t)=>{for(t=String(t);t.length<e;)t="0"+t;return t}});var qn=$((Tc,Kn)=>{"use strict";var De=Ke(),jt=class extends Date{constructor(t){super(t+"Z"),this.isFloating=!0}toISOString(){let t=`${this.getUTCFullYear()}-${De(2,this.getUTCMonth()+1)}-${De(2,this.getUTCDate())}`,i=`${De(2,this.getUTCHours())}:${De(2,this.getUTCMinutes())}:${De(2,this.getUTCSeconds())}.${De(3,this.getUTCMilliseconds())}`;return`${t}T${i}`}};Kn.exports=e=>{let t=new jt(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var Qn=$((Sc,zn)=>{"use strict";var Jn=Ke(),cl=global.Date,Ut=class extends cl{constructor(t){super(t),this.isDate=!0}toISOString(){return`${this.getUTCFullYear()}-${Jn(2,this.getUTCMonth()+1)}-${Jn(2,this.getUTCDate())}`}};zn.exports=e=>{let t=new Ut(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var Xn=$((Bc,Zn)=>{"use strict";var qe=Ke(),Wt=class extends Date{constructor(t){super(`0000-01-01T${t}Z`),this.isTime=!0}toISOString(){return`${qe(2,this.getUTCHours())}:${qe(2,this.getUTCMinutes())}:${qe(2,this.getUTCSeconds())}.${qe(3,this.getUTCMilliseconds())}`}};Zn.exports=e=>{let t=new Wt(e);if(isNaN(t))throw new TypeError("Invalid Datetime");return t}});var Je=$((exports,module)=>{"use strict";module.exports=makeParserClass(Wn());module.exports.makeParserClass=makeParserClass;var TomlError=class e extends Error{constructor(t){super(t),this.name="TomlError",Error.captureStackTrace&&Error.captureStackTrace(this,e),this.fromTOML=!0,this.wrapped=null}};TomlError.wrap=e=>{let t=new TomlError(e.message);return t.code=e.code,t.wrapped=e,t};module.exports.TomlError=TomlError;var createDateTime=Yn(),createDateTimeFloat=qn(),createDate=Qn(),createTime=Xn(),CTRL_I=9,CTRL_J=10,CTRL_M=13,CTRL_CHAR_BOUNDARY=31,CHAR_SP=32,CHAR_QUOT=34,CHAR_NUM=35,CHAR_APOS=39,CHAR_PLUS=43,CHAR_COMMA=44,CHAR_HYPHEN=45,CHAR_PERIOD=46,CHAR_0=48,CHAR_1=49,CHAR_7=55,CHAR_9=57,CHAR_COLON=58,CHAR_EQUALS=61,CHAR_A=65,CHAR_E=69,CHAR_F=70,CHAR_T=84,CHAR_U=85,CHAR_Z=90,CHAR_LOWBAR=95,CHAR_a=97,CHAR_b=98,CHAR_e=101,CHAR_f=102,CHAR_i=105,CHAR_l=108,CHAR_n=110,CHAR_o=111,CHAR_r=114,CHAR_s=115,CHAR_t=116,CHAR_u=117,CHAR_x=120,CHAR_z=122,CHAR_LCUB=123,CHAR_RCUB=125,CHAR_LSQB=91,CHAR_BSOL=92,CHAR_RSQB=93,CHAR_DEL=127,SURROGATE_FIRST=55296,SURROGATE_LAST=57343,escapes={[CHAR_b]:"\b",[CHAR_t]:" ",[CHAR_n]:`
@@ -106,7 +106,7 @@ Options:
106
106
  Supported agents:
107
107
  ${e}
108
108
 
109
- Docs: ${Pi}`)}function Ba(e){let t={global:!1,yes:!1,agents:[]},i;for(let r=0;r<e.length;r++){let u=e[r];switch(u){case"-g":case"--global":t.global=!0;break;case"-y":case"--yes":t.yes=!0;break;case"-a":case"--agent":{let s=e[++r];s||ie(`Missing value for ${u}`),t.agents.push(...s.split(",").map(n=>n.trim()).filter(Boolean));break}case"-h":case"--help":Mi(),process.exit(0);break;case"-v":case"--version":console.log("3.0.437"),process.exit(0);break;default:u.startsWith("-")&&ie(`Unknown option: ${u} (see npx shaders --help)`),i&&ie(`Unexpected argument: ${u}`),i=u}}return{command:i,flags:t}}function ie(e){console.error(`\u2717 ${e}`),process.exit(1)}function ji(e){let t=new Set(Z());for(let i of e)t.has(i)||ie(`Unknown agent "${i}". Supported agents: ${Z().join(", ")}`);return e}async function Oa(e,t){if(e.agents.length>0)return{targets:ji(e.agents),scope:e.global?"global":"project"};let i=e.global?[]:Qt(t),r=e.global||i.length===0?"global":"project",u=r==="project"?i:await Zt();if(!(!e.yes&&process.stdout.isTTY&&process.stdin.isTTY))return u.length===0&&ie(`No coding agents detected. Pass one explicitly, e.g. npx shaders install-mcp -a cursor
109
+ Docs: ${Pi}`)}function Ba(e){let t={global:!1,yes:!1,agents:[]},i;for(let r=0;r<e.length;r++){let u=e[r];switch(u){case"-g":case"--global":t.global=!0;break;case"-y":case"--yes":t.yes=!0;break;case"-a":case"--agent":{let s=e[++r];s||ie(`Missing value for ${u}`),t.agents.push(...s.split(",").map(n=>n.trim()).filter(Boolean));break}case"-h":case"--help":Mi(),process.exit(0);break;case"-v":case"--version":console.log("3.0.438"),process.exit(0);break;default:u.startsWith("-")&&ie(`Unknown option: ${u} (see npx shaders --help)`),i&&ie(`Unexpected argument: ${u}`),i=u}}return{command:i,flags:t}}function ie(e){console.error(`\u2717 ${e}`),process.exit(1)}function ji(e){let t=new Set(Z());for(let i of e)t.has(i)||ie(`Unknown agent "${i}". Supported agents: ${Z().join(", ")}`);return e}async function Oa(e,t){if(e.agents.length>0)return{targets:ji(e.agents),scope:e.global?"global":"project"};let i=e.global?[]:Qt(t),r=e.global||i.length===0?"global":"project",u=r==="project"?i:await Zt();if(!(!e.yes&&process.stdout.isTTY&&process.stdin.isTTY))return u.length===0&&ie(`No coding agents detected. Pass one explicitly, e.g. npx shaders install-mcp -a cursor
110
110
  Supported agents: ${Z().join(", ")}`),{targets:u,scope:r};let n=await Et({message:`Install the Shaders MCP server to which agents? (${r} config)`,options:Z().map(o=>({value:o,label:R[o].displayName,hint:r==="project"&&R[o].localConfigPath?R[o].localConfigPath:R[o].configPath.replace(/^\/Users\/[^/]+|^\/home\/[^/]+|^C:\\Users\\[^\\]+/,"~")})),initialValues:u,required:!0});return de(n)&&(console.log("Cancelled \u2014 nothing was changed."),process.exit(0)),{targets:n,scope:r}}async function Ra(e){let t=process.cwd(),{targets:i,scope:r}=await Oa(e,t),u=0;for(let s of i){let n=r==="project"&&!!R[s].localConfigPath,o=$i(s,ir,{type:"http",url:Sa},{local:n,cwd:t});o.success?console.log(`\u2713 ${R[s].displayName} \u2014 ${o.path}`):(u++,console.error(`\u2717 ${R[s].displayName} \u2014 ${o.error}`))}u===i.length&&process.exit(1),console.log(`
111
111
  Done! Open your agent and connect to the "${ir}" MCP server \u2014 you'll be
112
112
  prompted to sign in to your Shaders account (Pro) the first time it connects.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/gpu/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/gpu/index.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,14 @@ export interface PassManager {
31
31
  }>): void;
32
32
  /** Execute the current composition: compute → RTT passes → final pass to `canvasView`. */
33
33
  render(canvasView: unknown, frameParams: unknown): void;
34
+ /**
35
+ * Re-execute only the RTT passes (no compute, no final pass). `resize` recreates every RTT
36
+ * texture zero-initialized, and `render` runs compute FIRST — so a compute step that reads a
37
+ * child RTT (Glass frosted blur, kit/blur consumers) would read black for one frame after a
38
+ * resize. The renderer calls this right after `resize` to repopulate the textures before the
39
+ * next full frame samples them.
40
+ */
41
+ repaintRtt(): void;
34
42
  /** Resize all RTT textures to the new backing-buffer size. */
35
43
  resize(width: number, height: number): void;
36
44
  /** Live RTT texture count (feeds performanceTracker.textureCount). */
@@ -1 +1 @@
1
- {"version":3,"file":"passManager.d.ts","sourceRoot":"","sources":["../../src/gpu/passManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAS,KAAK,QAAQ,EAAE,KAAK,aAAa,EAA0B,MAAM,SAAS,CAAA;AAC1F,OAAO,KAAK,EAAC,aAAa,EAAe,MAAM,YAAY,CAAA;AAE3D,OAAO,KAAK,EAAC,cAAc,EAAE,aAAa,EAAyB,MAAM,YAAY,CAAA;AACrF,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAA;AA0BhD,MAAM,WAAW,kBAAkB;IAC/B,6CAA6C;IAC7C,cAAc,EAAE,cAAc,CAAA;IAC9B,gDAAgD;IAChD,UAAU,EAAE,iBAAiB,CAAA;IAC7B,2FAA2F;IAC3F,YAAY,CAAC,EAAE,gBAAgB,CAAA;IAC/B,gDAAgD;IAChD,SAAS,CAAC,EAAE,gBAAgB,CAAA;IAC5B,wFAAwF;IACxF,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,iFAAiF;IACjF,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC/B;AAED,MAAM,WAAW,WAAW;IACxB;;;;OAIG;IACH,cAAc,CACV,EAAE,EAAE,aAAa,EACjB,gBAAgB,EAAE,aAAa,GAAG,SAAS,EAC3C,IAAI,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,EACrC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG;QAAC,OAAO,EAAE,OAAO,CAAA;KAAC,CAAC,GACpE,IAAI,CAAA;IACP,0FAA0F;IAC1F,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,GAAG,IAAI,CAAA;IACvD,8DAA8D;IAC9D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,sEAAsE;IACtE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,kDAAkD;IAClD,OAAO,IAAI,IAAI,CAAA;CAClB;AAID,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,GAAG,WAAW,CAwU1F"}
1
+ {"version":3,"file":"passManager.d.ts","sourceRoot":"","sources":["../../src/gpu/passManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAS,KAAK,QAAQ,EAAE,KAAK,aAAa,EAA0B,MAAM,SAAS,CAAA;AAC1F,OAAO,KAAK,EAAC,aAAa,EAAe,MAAM,YAAY,CAAA;AAE3D,OAAO,KAAK,EAAC,cAAc,EAAE,aAAa,EAAyB,MAAM,YAAY,CAAA;AACrF,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAA;AA0BhD,MAAM,WAAW,kBAAkB;IAC/B,6CAA6C;IAC7C,cAAc,EAAE,cAAc,CAAA;IAC9B,gDAAgD;IAChD,UAAU,EAAE,iBAAiB,CAAA;IAC7B,2FAA2F;IAC3F,YAAY,CAAC,EAAE,gBAAgB,CAAA;IAC/B,gDAAgD;IAChD,SAAS,CAAC,EAAE,gBAAgB,CAAA;IAC5B,wFAAwF;IACxF,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,iFAAiF;IACjF,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC/B;AAED,MAAM,WAAW,WAAW;IACxB;;;;OAIG;IACH,cAAc,CACV,EAAE,EAAE,aAAa,EACjB,gBAAgB,EAAE,aAAa,GAAG,SAAS,EAC3C,IAAI,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,EACrC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG;QAAC,OAAO,EAAE,OAAO,CAAA;KAAC,CAAC,GACpE,IAAI,CAAA;IACP,0FAA0F;IAC1F,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,GAAG,IAAI,CAAA;IACvD;;;;;;OAMG;IACH,UAAU,IAAI,IAAI,CAAA;IAClB,8DAA8D;IAC9D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,sEAAsE;IACtE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,kDAAkD;IAClD,OAAO,IAAI,IAAI,CAAA;CAClB;AAID,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,GAAG,WAAW,CA8U1F"}
@@ -544,12 +544,16 @@ function createPassManager(root, options) {
544
544
  const steps = step.getComputeNodes(frameParams);
545
545
  if (steps && steps.length) dispatcher.dispatch(steps);
546
546
  }
547
+ repaintRtt();
548
+ execPass(current.finalPass, canvasView);
549
+ }
550
+ function repaintRtt() {
551
+ if (!current) return;
547
552
  for (const pass of current.rttPasses) {
548
553
  const rt = rttTextures.get(pass.target.key);
549
554
  if (!rt) continue;
550
555
  execPass(pass, renderView(rt));
551
556
  }
552
- execPass(current.finalPass, canvasView);
553
557
  }
554
558
  function renderView(rt) {
555
559
  return root.unwrap(rt.texture).createView();
@@ -573,6 +577,7 @@ function createPassManager(root, options) {
573
577
  return {
574
578
  setComposition,
575
579
  render,
580
+ repaintRtt,
576
581
  resize,
577
582
  get textureCount() {
578
583
  return liveTextures.size;
@@ -2245,6 +2250,11 @@ function shaderRendererGPU() {
2245
2250
  }
2246
2251
  reresolveDimensionalUniforms(node);
2247
2252
  }
2253
+ for (const c of liveCompositions) {
2254
+ writeSystemUniforms(c.store);
2255
+ c.store.flush();
2256
+ c.passManager.repaintRtt();
2257
+ }
2248
2258
  lastRenderTime = 0;
2249
2259
  renderFrame();
2250
2260
  };