<feed xmlns='http://www.w3.org/2005/Atom'>
<title>opencut/apps/web/src/services/renderer/compositor/wasm-compositor.ts, branch main</title>
<subtitle></subtitle>
<id>http://git.cashmere.rs/opencut/atom/apps/web/src/services/renderer/compositor/wasm-compositor.ts?h=main</id>
<link rel='self' href='http://git.cashmere.rs/opencut/atom/apps/web/src/services/renderer/compositor/wasm-compositor.ts?h=main'/>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/'/>
<updated>2026-08-08T08:40:16Z</updated>
<entry>
<title>fix: keep GPU effect previews from clobbering the preview canvas</title>
<updated>2026-08-08T08:40:16Z</updated>
<author>
<name>cashmere</name>
<email>cashmere@autistici.org</email>
</author>
<published>2026-08-02T17:59:59Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=29f1c9932a5c50c36e6a35f6d6539c2aceee983e'/>
<id>urn:sha1:29f1c9932a5c50c36e6a35f6d6539c2aceee983e</id>
<content type='text'>
On the WebGL backend wgpu can only present to the single canvas its GL
context is bound to, which is also the compositor's output canvas. The
effect tile previews (and mask feather) rendered through that canvas
and resized it behind the compositor's back, leaving the main preview
showing the preview image stretched until a full reload.

TS side (works with the published wasm): after every applyEffectPasses/
applyMaskFeather call the gpu renderer restores the canvas size, using
a one-pixel intermediate resize to force a surface reconfigure, then
notifies the preview component to re-render the current frame.

Rust side (next wasm publish): the GL canvas detour saves and restores
the canvas size, and resizeCompositor always reconfigures the surface.
</content>
</entry>
<entry>
<title>perf: improve rendering performance by ~20x</title>
<updated>2026-04-22T14:48:37Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2026-04-22T14:48:37Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=cceb835a84c125990ad8e49784e01a7c52636bb3'/>
<id>urn:sha1:cceb835a84c125990ad8e49784e01a7c52636bb3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore: remove debugging throughout codebase</title>
<updated>2026-04-14T23:00:05Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2026-04-14T23:00:05Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=1fa5442f211fb06548bc51ea3192b5e0b4ffe614'/>
<id>urn:sha1:1fa5442f211fb06548bc51ea3192b5e0b4ffe614</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactor: rendering pipeline</title>
<updated>2026-04-13T03:08:29Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2026-04-13T02:41:17Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=cad88ee4d1c9e06e7529b88ef5e5d3fdf3f89149'/>
<id>urn:sha1:cad88ee4d1c9e06e7529b88ef5e5d3fdf3f89149</id>
<content type='text'>
Made-with: Cursor
</content>
</entry>
</feed>
