Share retained preview pass sequence helper

This commit is contained in:
2026-06-13 11:08:53 +02:00
parent cf3b8e856d
commit f513500b3c
6 changed files with 221 additions and 89 deletions

View File

@@ -43,6 +43,11 @@ agent or engineer to remove them without reconstructing context from chat.
bind, draw, and texture unbind ordering through
`execute_legacy_canvas_stroke_temporary_composite(...)`; erase-path and
broader final composite ownership remain retained in `Canvas`.
- 2026-06-13: DEBT-0036 was narrowed again. `NodeStrokePreview::draw_stroke_immediate()`
now routes dual-pass/background/main-pass/final-composite/copy-back ordering
through `execute_legacy_node_stroke_preview_pass_sequence(...)`; the
remaining local preview ownership is concentrated around `stroke_draw_mix()`
setup/execution.
- 2026-06-13: DEBT-0036 was narrowed again. `NodeStrokePreview::stroke_draw_mix()`
now routes mixer framebuffer bind/unbind, viewport/scissor/blend state,
texture-slot binding, and final plane draw through one local helper;

View File

@@ -3141,6 +3141,11 @@ Results:
`execute_legacy_canvas_stroke_temporary_composite(...)` for setup, sampler
bind, texture bind, draw, and texture unbind ordering, while erase-path and
broader final composite ownership remain in the legacy Canvas path.
- `NodeStrokePreview::draw_stroke_immediate()` now shares
`execute_legacy_node_stroke_preview_pass_sequence(...)` for
dual-pass/background/main-pass/final-composite/copy-back ordering, while the
remaining local preview ownership is concentrated around `stroke_draw_mix()`
setup/execution.
- `NodeStrokePreview::stroke_draw_mix()` now shares one local helper for mixer
framebuffer bind/unbind, viewport/scissor/blend state, texture-slot
binding, and final plane draw, while material planning and shader uniform

View File

@@ -509,6 +509,13 @@ Done Checks:
Progress Notes:
- 2026-06-13: `NodeStrokePreview::draw_stroke_immediate()` now routes
dual-pass/background/main-pass/final-composite/copy-back ordering through
`execute_legacy_node_stroke_preview_pass_sequence(...)`; the remaining local
preview ownership is concentrated around `stroke_draw_mix()` setup/execution.
Next slice should target that final mix-pass setup/execution seam without
reopening landed sample, binding, material-planning, or final-composite
helpers.
- 2026-06-13: `Canvas::draw_merge()` non-erase live temporary-stroke
composite ordering now routes through
`execute_legacy_canvas_stroke_temporary_composite(...)`; erase-path and