diff --git a/docs/modernization/debt.md b/docs/modernization/debt.md index ad62c29..9dfb989 100644 --- a/docs/modernization/debt.md +++ b/docs/modernization/debt.md @@ -18,6 +18,10 @@ agent or engineer to remove them without reconstructing context from chat. ## Recent Reductions +- 2026-06-13: DEBT-0036 was narrowed again. `Canvas::draw_objects` retained + object composite `Texture` shader setup now routes through + `legacy_canvas_draw_merge_services.h`; draw_objects still owns temporary + face readback, sampler/texture binding, draw execution, and dirty-box updates. - 2026-06-13: DEBT-0036 was narrowed again. `Canvas::thumbnail_generate` thumbnail layer `TextureBlend` shader setup now routes through `legacy_canvas_draw_merge_services.h`; thumbnail generation still owns diff --git a/docs/modernization/roadmap.md b/docs/modernization/roadmap.md index d757caf..6e3caa5 100644 --- a/docs/modernization/roadmap.md +++ b/docs/modernization/roadmap.md @@ -3021,6 +3021,10 @@ Results: stroke composite shader setup helper, while render-task ordering, framebuffer copy bounds, sampler/texture binding, and draw execution remain in retained canvas-mode code. +- `Canvas::draw_objects` retained object compositing now shares the retained + draw-merge texture shader setup helper, while temporary face readback, + sampler/texture binding, draw execution, and dirty-box updates remain in + retained Canvas code. - Desktop VR checkerboard background drawing now shares the retained draw-merge shader setup helper, while render state transitions, per-plane transforms, and draw execution remain in retained VR code. diff --git a/src/canvas.cpp b/src/canvas.cpp index 073dd7b..c37ba13 100644 --- a/src/canvas.cpp +++ b/src/canvas.cpp @@ -3199,9 +3199,11 @@ void Canvas::draw_objects(std::function