Move framebuffer blit mapping to renderer gl

This commit is contained in:
2026-06-02 06:25:14 +02:00
parent 36fea6b870
commit 9ce49ef19c
6 changed files with 55 additions and 16 deletions

View File

@@ -131,10 +131,12 @@ Known local toolchain state:
validates image channel-count to OpenGL texture format mapping, including
invalid channel counts rejected by `Texture2D::create(Image)`, and
framebuffer status naming used by `RTT` diagnostics. It also owns and
validates the default linear clamp-to-edge render-target texture parameters
used by `RTT::create`. It also validates Shape index-type and fill/stroke
primitive-mode mapping used by the legacy mesh draw path, plus the
PanoPainter cube-face to OpenGL texture-target mapping used by `TextureCube`.
validates framebuffer blit color mask and linear/nearest filters used by
`RTT::resize` and `RTT::copy`, plus the default linear clamp-to-edge
render-target texture parameters used by `RTT::create`. It also validates
Shape index-type and fill/stroke primitive-mode mapping used by the legacy
mesh draw path, plus the PanoPainter cube-face to OpenGL texture-target
mapping used by `TextureCube`.
It also owns and validates sampler wrap S/T/R, min/mag filter, and desktop
border-color parameter mapping used by legacy `Sampler`. The PanoPainter
shader attribute binding catalog used by legacy `Shader` creation also lives

View File

@@ -390,15 +390,17 @@ OpenGL capability detection for framebuffer fetch, map-buffer alignment, and
float texture support. It also owns the OpenGL texture upload-type mapping used
by legacy `Texture2D` and `RTT` creation, plus image channel-count to texture
format mapping for `Texture2D` image uploads and framebuffer status naming for
`RTT` diagnostics. The default render-target texture parameters used by
`RTT::create` also live in `pp_renderer_gl`. Mesh index-type and primitive-mode
`RTT` diagnostics. The framebuffer blit color mask and linear/nearest filter
tokens used by `RTT::resize` and `RTT::copy`, plus the default render-target
texture parameters used by `RTT::create`, also live in `pp_renderer_gl`.
Mesh index-type and primitive-mode
decisions used by legacy `Shape` drawing and the PanoPainter cube-face to
OpenGL texture-target mapping used by `TextureCube` also live in
`pp_renderer_gl`. The legacy app delegates extension, upload-format,
framebuffer diagnostic, render-target texture parameter, mesh draw-mode, and
cube-face texture-target interpretation to that backend library. Sampler wrap,
min/mag filter, and desktop border-color parameter mapping for legacy
`Sampler` also lives in `pp_renderer_gl`. The PanoPainter shader attribute
framebuffer diagnostic, framebuffer blit, render-target texture parameter,
mesh draw-mode, and cube-face texture-target interpretation to that backend
library. Sampler wrap, min/mag filter, and desktop border-color parameter
mapping for legacy `Sampler` also lives in `pp_renderer_gl`. The PanoPainter shader attribute
binding catalog also lives in `pp_renderer_gl` and is consumed by legacy
`Shader` creation. Shader uniform hashing, catalog validation, active-uniform
mapping, and the legacy uniform uniqueness check now delegate to
@@ -644,9 +646,10 @@ Results:
alignment, desktop GL core float support, GLES float/half-float extensions,
WebGL exclusion behavior, upload types for RGBA8/RGBA16F/RGBA32F internal
formats, image channel-count format mapping including invalid counts, and
framebuffer status names, plus Shape index-type and fill/stroke primitive
mode mapping, PanoPainter cube-face texture-target order, and the linear
clamp-to-edge render-target texture parameter set used by `RTT::create`.
framebuffer status names, framebuffer blit color mask and linear/nearest
filters, plus Shape index-type and fill/stroke primitive mode mapping,
PanoPainter cube-face texture-target order, and the linear clamp-to-edge
render-target texture parameter set used by `RTT::create`.
Sampler parameter validation covers wrap S/T/R plus min/mag filter ordering
used by legacy `Sampler::set` and `Sampler::set_filter`, plus the desktop
border-color parameter name used by `Sampler::set_border`.