Extract OpenGL shader uniform catalog

This commit is contained in:
2026-06-01 18:06:14 +02:00
parent bdcd44b340
commit 4212387b70
6 changed files with 172 additions and 59 deletions

View File

@@ -133,7 +133,9 @@ Known local toolchain state:
framebuffer status naming used by `RTT` diagnostics. It also validates
Shape index-type and fill/stroke primitive-mode mapping used by the legacy
mesh draw path, plus the PanoPainter shader attribute binding catalog used
by legacy `Shader` creation.
by legacy `Shader` creation. It also owns the PanoPainter shader uniform
catalog and legacy hash mapping used by `Shader` active-uniform discovery and
the uniform uniqueness check.
- `windows-msvc-vcpkg-headless` validates manifest install/configure/build/test
for the current headless component matrix; see DEBT-0007 for remaining app
and platform triplet migration.

View File

@@ -395,8 +395,10 @@ format mapping for `Texture2D` image uploads and framebuffer status naming for
extension, upload-format, framebuffer diagnostic, and mesh draw-mode
interpretation to that backend library. The PanoPainter shader attribute
binding catalog also lives in `pp_renderer_gl` and is consumed by legacy
`Shader` creation. The existing renderer classes are not yet fully behind the
renderer interfaces.
`Shader` creation. Shader uniform hashing, catalog validation, active-uniform
mapping, and the legacy uniform uniqueness check now delegate to
`pp_renderer_gl` as well. The existing renderer classes are not yet fully
behind the renderer interfaces.
Implementation tasks:
@@ -641,7 +643,9 @@ Results:
mode mapping. Shader attribute binding catalog validation covers the current
`pos`, `uvs`, `uvs2`, `col`, and `nor` bindings and rejects empty, unnamed,
null-name, and duplicate-name catalogs while preserving legacy shared
locations.
locations. Shader uniform catalog validation covers the 43 legacy uniform
names used by `Shader`, preserves the legacy hash ids, and rejects empty,
unnamed, null-name, mismatched-hash, and duplicate-name catalogs.
- PowerShell analyze automation returns JSON summaries and includes the shader
validation target.
- `windows-msvc-vcpkg-headless` configured through the Visual Studio bundled