Route paint UI clear state through GL backend

This commit is contained in:
2026-06-04 23:05:19 +02:00
parent b65db6f617
commit b8c7cd6e99
8 changed files with 330 additions and 40 deletions

View File

@@ -385,17 +385,20 @@ Known local toolchain state:
consume backend-owned error codes, state queries, framebuffer targets,
texture binding targets, and active texture units.
`NodeStrokePreview` brush preview rendering also consumes backend-owned
depth/scissor/blend state, viewport/clear-color queries, active texture
unit execution, fallback 2D texture unbinds, 2D texture targets, copy
targets, and sampler filters/wraps. Its live stroke-mixer and brush-preview
viewport, scissor, and depth/blend state changes now execute through tested
`pp_renderer_gl` dispatch with only local OpenGL adapter endpoints retained.
depth/scissor/blend state, tested viewport/clear-color query dispatch,
clear-color restore, active texture unit execution, fallback 2D texture
unbinds, 2D texture targets, copy targets, and sampler filters/wraps. Its
live stroke-mixer and brush-preview viewport, scissor, and depth/blend state
changes now execute through tested `pp_renderer_gl` dispatch with only local
OpenGL adapter endpoints retained.
Retained `Canvas` stroke/thumbnail/object/export paths and `NodeCanvas`
panorama rendering use the same tested active-texture dispatch for
texture-unit switches, and their live viewport, scissor, and generic
depth/blend/scissor capability changes now route through the same backend
dispatch contracts. Retained desktop HMD eye rendering also routes viewport
execution through tested backend dispatch.
dispatch contracts. `NodeCanvas` saved viewport/clear-color query,
density/offscreen color clear, and clear-color restore paths also use tested
`pp_renderer_gl` dispatch helpers. Retained desktop HMD eye rendering also
routes viewport execution through tested backend dispatch.
Legacy `Texture2D`, `TextureManager`, `Sampler`, and `RTT` public headers no
longer expose raw OpenGL enum defaults; default texture formats, sampler
filters/wraps, and render-target formats resolve through backend-owned
@@ -431,9 +434,10 @@ Known local toolchain state:
the retained canvas-tip pick readback remains direct legacy OpenGL until the
readback boundary is finished under DEBT-0036.
`NodeCanvas` panorama UI rendering also consumes backend-owned sampler
defaults, viewport/clear-state queries, blend/depth/scissor state, color
clear masks, active texture units, fallback 2D texture unbind targets, copy
targets, and RGBA8 render-target formats.
defaults, tested viewport/clear-color query dispatch, blend/depth/scissor
state, color-buffer clear dispatch, clear-color restore, active texture
units, fallback 2D texture unbind targets, copy targets, and RGBA8
render-target formats.
Canvas resource setup also consumes backend-owned stroke-buffer
RGBA8/RGBA16F/RGBA32F formats, flood-fill texture upload format/type,
brush/stencil/mix sampler filters and wraps, and image channel-count texture
@@ -653,6 +657,8 @@ Known local toolchain state:
NodeStrokePreview texture-unit switches,
tested viewport/scissor/capability dispatch consumed by retained Canvas,
NodeCanvas, NodeStrokePreview, and HMD render-state paths,
tested viewport query, clear-color query, and clear-color restore dispatch
consumed by retained `NodeCanvas` and `NodeStrokePreview` draw-state paths,
tested color-write-mask dispatch consumed by retained `NodePanelGrid`
transparent heightmap rendering,
tested pixel-buffer allocation/readback/map/unmap/delete dispatch