Add renderer resource factory contract

This commit is contained in:
2026-06-02 16:09:52 +02:00
parent 881b5271a2
commit 23c308db1b
9 changed files with 389 additions and 48 deletions

View File

@@ -285,16 +285,18 @@ Known local toolchain state:
source code reintroduces raw `GL_*`/`WGL_*` constants outside the allowed
legacy OpenGL implementation files.
- `pp_renderer_api` exposes a headless `RecordingRenderDevice` that validates
command order, scissor state, depth state, blend state, texture-slot binding,
sampler-state binding, texture-upload byte counts, readback bounds,
frame-capture sources, destination buffer sizes, and render-target blit
regions, records render/scissor/depth/blend/texture-bind/sampler-bind/upload/
readback/frame-capture/blit commands, draw mesh inputs, and records trace
markers without a window or GL context.
backend-owned resource creation, command order, scissor state, depth state,
blend state, texture-slot binding, sampler-state binding, texture-upload byte
counts, readback bounds, frame-capture sources, destination buffer sizes, and
render-target blit regions, records
render/scissor/depth/blend/texture-bind/sampler-bind/upload/readback/
frame-capture/blit commands, draw mesh inputs, and records trace markers
without a window or GL context.
- `pano_cli record-render` exposes the recording renderer through JSON
automation, including scissor/depth/blend/texture-bind/sampler-bind/upload/
readback/frame-capture/blit command and byte totals plus draw vertex/index
totals, and is covered by `pano_cli_record_render_smoke` plus
readback/frame-capture/blit command and byte totals, backend resource
creation counts, plus draw vertex/index totals, and is covered by
`pano_cli_record_render_smoke` plus
`pano_cli_record_render_rejects_oversized_target`.
- `pano_cli simulate-document-history` exposes `pp_document::DocumentHistory`
apply/undo/redo state through JSON automation and is covered by