Skip to content

v0.12.4: Resize and grain fixes

v0.12.4 is a patch release with two fixes found while building a multi-pass demo against the public API, which itself stays unchanged.

TextureTarget::resize keeps the registry in sync

Section titled “TextureTarget::resize keeps the registry in sync”

Resizing an offscreen target used to swap its internal texture while the registered id still pointed at the old one. Every Pass color attachment and shader binding that referenced the target went on drawing into that stale copy and sampling from it. TextureTarget::resize now updates the renderer’s registry along with the texture.

Passes and bindings follow the resize automatically, and recreating targets as a workaround is no longer needed.

Given the normalized fragment coordinate, the postfx/film_grain catalog function now produces per-pixel grain. For inputs in [0, 1], its hash collapsed into smooth diagonal banding, because the multiply inside it never left the first fract period. The function scales its input itself, and call sites that pass in.uv render correct grain. Its catalog preview and docs page show the new behavior.

Release notes: GitHub v0.12.4.

Rafael