From 193fdc276a43ad94a961aa9214be27cfa879d225 Mon Sep 17 00:00:00 2001 From: skal Date: Mon, 23 Mar 2026 08:07:31 +0100 Subject: docs: update temporal feedback docs — wire_dag auto-wiring, F16X8 format MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - HOWTO.md: replace manual set_cnn_output_node() instructions with wire_dag() auto-wiring explanation; add timeline.seq snippet as canonical wiring example; document F16X8/GBUF_ALBEDO format requirement - CNN_V3.md: fix prev_tex format (rgba16float, not rgba8unorm); mark timeline.seq CNNv3Effect TODO as done - SEQUENCE.md: already updated in previous commit (wire_dag pattern, format-matching rule, sink guard) Co-Authored-By: Claude Sonnet 4.6 --- doc/SEQUENCE.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'doc/SEQUENCE.md') diff --git a/doc/SEQUENCE.md b/doc/SEQUENCE.md index ca45756..3d7a6ce 100644 --- a/doc/SEQUENCE.md +++ b/doc/SEQUENCE.md @@ -132,7 +132,8 @@ class MyEffect : public Effect { void set_source_node(const std::string& n) { source_node_ = n; } void declare_nodes(NodeRegistry& reg) override { - reg.declare_node(node_prev_, NodeType::U8X4_NORM, -1, -1); + // Use a NodeType whose format matches source_node_ and has CopyDst. + reg.declare_node(node_prev_, NodeType::F16X8, -1, -1); } void render(...) override { @@ -221,7 +222,10 @@ if (!src_tex) return; // external view — no owned texture to copy - `GBUF_RGBA32UINT`: RGBA32Uint — packed feature textures (CNN v3 feat_tex0/1); `STORAGE_BINDING|TEXTURE_BINDING` **`COPY_SRC|COPY_DST`** is required on any node used with `wgpuCommandEncoderCopyTextureToTexture`. -`U8X4_NORM` has both; use it for temporal feedback dest nodes. +The `node_prev_` format **must match** the source texture format exactly — +`CopyTextureToTexture` requires identical formats. `F16X8` (Rgba16Float, +`CopySrc|CopyDst`) matches `GBUF_ALBEDO` (CNNv3Effect output). Use `U8X4_NORM` +only when the source is also Rgba8Unorm. **Aliasing**: Compiler detects ping-pong patterns (Effect i writes A reads B, Effect i+1 writes B reads A) and aliases nodes to same backing texture. -- cgit v1.2.3