Isolate legacy stroke sample execution

This commit is contained in:
2026-06-12 22:25:02 +02:00
parent d69869f720
commit 33f21e0a1b
5 changed files with 190 additions and 96 deletions

View File

@@ -18,6 +18,12 @@ agent or engineer to remove them without reconstructing context from chat.
## Recent Reductions
- 2026-06-12: DEBT-0036 was narrowed again. Canvas and `NodeStrokePreview`
stroke sample execution now delegate optional destination copy, brush vertex
upload, brush-shape draw, and destination unbind through
`execute_legacy_canvas_stroke_sample`. Shader setup, uniforms, RTT/texture
ownership, dirty-box policy, and retained callback execution remain in the
legacy callers until a renderer-owned stroke backend replaces the adapter.
- 2026-06-12: DEBT-0036 was narrowed again. `NodeStrokePreview` now consumes
the same `CanvasStrokeMaterialPlan` boundary for preview dual-brush,
each-sample pattern, and composite material decisions. Preview GL draw calls,

View File

@@ -1343,8 +1343,12 @@ composite texture/uniform intent. Live `Canvas::stroke_draw`, stroke commit,
and draw-merge paths consume that material plan for destination feedback,
each-sample pattern, dual-brush, and final composite decisions, and
`NodeStrokePreview` now consumes the same plan for preview material decisions.
Actual retained OpenGL draw execution and preview texture-binding details remain
under `DEBT-0036`.
Canvas and `NodeStrokePreview` stroke sample execution also delegate optional
destination copy, brush vertex upload, brush-shape draw, and destination unbind
through `execute_legacy_canvas_stroke_sample`, creating the first retained
OpenGL stroke execution service seam. Shader setup, uniforms, RTT/texture
ownership, dirty-box policy, and retained callback execution remain under
`DEBT-0036`.
It also owns renderer API texture-format to
OpenGL internal/pixel/component token mapping, including depth-stencil formats,
for future backend texture objects. `Texture2D` 2D texture binding, upload,