Route canvas clear state through GL backend

This commit is contained in:
2026-06-04 23:13:21 +02:00
parent b8c7cd6e99
commit 9190e9053a
5 changed files with 128 additions and 54 deletions

View File

@@ -1121,9 +1121,11 @@ Retained `Canvas` stroke/thumbnail/object/export paths and `NodeCanvas`
panorama rendering use the same tested active-texture dispatch for their
texture-unit switches, and their live viewport, scissor, and generic
depth/blend/scissor capability changes now route through the same backend
dispatch contracts. `NodeCanvas` saved viewport/clear-color query, density
target color clear, and clear-color restore paths also use tested
`pp_renderer_gl` dispatch helpers.
dispatch contracts. Retained `Canvas` stroke draw/commit, thumbnail
generation, object drawing, and `LayerFrame::clear` saved viewport/clear-color
query plus clear-color restore paths also use tested `pp_renderer_gl` dispatch
helpers. `NodeCanvas` saved viewport/clear-color query, density target color
clear, and clear-color restore paths use the same helpers.
Desktop HMD eye rendering now routes eye framebuffer viewport changes through
the tested `pp_renderer_gl` viewport dispatch while platform VR SDK bridges
remain isolated for later platform-shell extraction.
@@ -2075,6 +2077,10 @@ Results:
query, clear-color query, clear-color restore, and color-buffer clear helpers
in `NodeCanvas` and `NodeStrokePreview`, removing direct query/clear calls
from those draw bodies while keeping their legacy compositing order.
- Retained Canvas stroke draw/commit, thumbnail, object-render, and
`LayerFrame::clear` paths now use the same tested backend viewport query,
clear-color query, and clear-color restore helpers, removing direct
viewport/clear-state queries from `src/canvas.cpp` and the frame clear path.
- Canvas draw-merge shader-blend selection now consumes the extracted
`pp_paint_renderer` stroke composite planner for current layer and primary
brush blend modes, while preserving legacy OpenGL compositing execution under