Share retained GL runtime dispatch adapters

This commit is contained in:
2026-06-06 10:51:46 +02:00
parent ab36af0a8f
commit 6c772a1c84
9 changed files with 64 additions and 61 deletions

View File

@@ -698,7 +698,11 @@ powershell -ExecutionPolicy Bypass -File scripts\automation\apple-remote-build.p
with app startup, app clear, app UI viewport/scissor, and command-convert
renderer state callbacks, so those files no longer duplicate local raw GL
adapter clusters for capability, blend, clear, viewport, scissor, active
texture, or 2D texture-unbind execution.
texture, or 2D texture-unbind execution. Retained HMD viewport setup, text
atlas texture-unit activation, Windows/legacy default framebuffer binding,
platform render-hint enable callbacks, the global OpenGL error drain, and
Windows debug message callback installation also now reuse the shared retained
dispatch headers instead of file-local raw entrypoint adapters.
Canvas mode overlay, mask, and transform paths also consume backend-owned
blend/depth state execution, active texture unit dispatch, transform/cut
viewport execution, 2D texture copy targets, and RGBA8 readback format tokens;

View File

@@ -1,7 +1,7 @@
# Modernization Debt Log
Status: live
Last updated: 2026-06-05
Last updated: 2026-06-06
Every shortcut, temporary adapter, retained vendored dependency, skipped
platform gate, compatibility shim, or incomplete automation path must be
@@ -417,6 +417,13 @@ agent or engineer to remove them without reconstructing context from chat.
`src/main.cpp`, and `src/app_shaders.cpp` no longer carry duplicated raw
runtime-query callback clusters. Renderer services still need to own runtime
and capability probing before this bridge can be removed.
- 2026-06-06: DEBT-0036/DEBT-0017 were narrowed again. Retained HMD viewport
setup, text atlas texture-unit activation, Windows/legacy default framebuffer
binding, platform render-hint enable callbacks, the global OpenGL error drain,
and Windows debug message callback installation now reuse
`legacy_ui_gl_dispatch`/`legacy_gl_runtime_dispatch` instead of file-local raw
OpenGL entrypoint adapters. Renderer/context services still need to own these
paths before the retained dispatch bridges can be removed.
- 2026-06-05: DEBT-0061 was opened. `pp_platform_api` now owns a tested desktop
XR runtime-selection policy that prefers OpenXR and labels OpenVR as a
legacy fallback; `WindowsPlatformServices` consumes that policy before

View File

@@ -979,7 +979,10 @@ result while the backend owns the query set and order. The Windows entrypoint
also uses that contract for early context logging and renderer-name window
title construction before replacing the temporary WGL context. Retained runtime
info and extension query callback endpoints now share
`legacy_gl_runtime_dispatch`.
`legacy_gl_runtime_dispatch`. The global OpenGL error drain and Windows debug
message callback installation now also route through that retained runtime
dispatch, keeping those entrypoints beside the other runtime callbacks until
renderer/runtime services own context diagnostics.
The default app clear color and color-buffer clear operation now dispatch
through `pp_renderer_gl` as well, moving another direct OpenGL operation out
of `App::clear` while preserving the current gray clear behavior; the live
@@ -2782,9 +2785,17 @@ Results:
- Retained app startup logging, Windows early context logging/window-title
detection, and shader capability detection now share
`legacy_gl_runtime_dispatch` for runtime string and extension enumeration
callbacks, removing duplicated raw runtime-query clusters from `src/app.cpp`,
`src/main.cpp`, and `src/app_shaders.cpp` while runtime/capability probing
remains retained under DEBT-0036.
callbacks, plus the global OpenGL error drain and Windows debug message
callback installation now use the same retained runtime dispatch. This removes
duplicated raw runtime-query clusters from `src/app.cpp`, `src/main.cpp`, and
`src/app_shaders.cpp` and the last active one-off runtime entrypoints from
`src/util.cpp` and `src/platform_windows/windows_platform_services.cpp` while
runtime/capability probing remains retained under DEBT-0036.
- Retained desktop HMD viewport setup, text atlas texture-unit activation,
Windows/legacy platform default framebuffer binding, and platform render-hint
enable callbacks now reuse `legacy_ui_gl_dispatch` instead of local raw GL
adapters while renderer/context ownership remains retained under DEBT-0036
and DEBT-0017.
- 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