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

@@ -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