Export equirectangular PNGs through paint renderer
This commit is contained in:
@@ -255,7 +255,10 @@ powershell -ExecutionPolicy Bypass -File scripts\automation\apple-remote-build.p
|
||||
recording backend. It also covers the shared
|
||||
`prepare_document_frame_export_readiness` report consumed by CLI and live
|
||||
export-readiness bridges, including the recorded upload command summary and
|
||||
pure six-face PNG export bytes encoded through `pp_assets`.
|
||||
pure six-face PNG export bytes encoded through `pp_assets`. The compositor
|
||||
tests now also cover equirectangular PNG export from that same composited
|
||||
document frame using the shader-equivalent cube sampling policy and
|
||||
`pp_assets` PNG encoding.
|
||||
- `pano_cli simulate-document-export` exposes the same pure document-to-PPI
|
||||
export, asset-level decode, and document reimport path through JSON
|
||||
automation and is covered by `pano_cli_simulate_document_export_smoke`.
|
||||
@@ -284,8 +287,10 @@ powershell -ExecutionPolicy Bypass -File scripts\automation\apple-remote-build.p
|
||||
Cube-face export writes the pure document/renderer PNG bytes through the
|
||||
app-core write/publish executor to the planned retained face filename set and
|
||||
falls back to `Canvas::export_cube_faces` if snapshot capture, PNG generation,
|
||||
or file writing fails. Equirectangular, layer, animation-frame, depth, and
|
||||
video export remain on retained writer paths.
|
||||
or file writing fails. PNG equirectangular export writes a pure
|
||||
document/paint-renderer equirectangular PNG before falling back to the
|
||||
retained writer; JPEG/XMP equirectangular export, layer, animation-frame,
|
||||
depth, and video export remain on retained writer paths.
|
||||
- `pano_cli save-document-project` writes that pure document export to a PPI
|
||||
file and is covered by `pano_cli_save_document_project_roundtrip_smoke`,
|
||||
which inspects and loads the generated file.
|
||||
@@ -1124,11 +1129,13 @@ powershell -ExecutionPolicy Bypass -File scripts\automation\apple-remote-build.p
|
||||
exports, Web prepared-file handoff, and legacy `Canvas` export execution while
|
||||
retained renderer/document/platform ownership is tracked by `DEBT-0043`.
|
||||
Equirectangular, layer, animation-frame, and cube-face execution now prepare
|
||||
the document snapshot plus shared paint-renderer export-readiness report before those
|
||||
retained calls; cube-face export writes pure face-PNG bytes to the app-core
|
||||
planned legacy work-directory face paths through the app-core write/publish
|
||||
executor before falling back to the retained writer, and depth export remains
|
||||
on the older retained path. It
|
||||
the document snapshot plus shared paint-renderer export-readiness report
|
||||
before retained calls; cube-face export writes pure face-PNG bytes to the
|
||||
app-core planned legacy work-directory face paths through the app-core
|
||||
write/publish executor before falling back to the retained writer, PNG
|
||||
equirectangular export writes the pure document/paint-renderer
|
||||
equirectangular PNG before retained fallback, and JPEG/XMP, collection, and
|
||||
depth exports remain on older retained paths. It
|
||||
also bridges timelapse and animation MP4 export picker-selected paths while
|
||||
preserving desktop worker-thread timelapse behavior, mobile/Web save
|
||||
callbacks, `App::rec_export`, animation `Canvas::export_anim_mp4`, and
|
||||
|
||||
@@ -24,8 +24,8 @@ and validation command.
|
||||
| Capability | Current Area | Target Owner | Required Tests |
|
||||
| --- | --- | --- | --- |
|
||||
| PNG/JPEG import | `Image`, `Canvas` import paths | `pp_assets`, `pp_document` | Fixture import, malformed file |
|
||||
| PNG/JPEG export | `Canvas`, `Image`, export dialogs | `pp_assets`, `pp_paint_renderer`, `pp_app_core` | Golden output tolerance, export start/target planning tests, live export-adapter document snapshot readiness through the shared paint-renderer export report |
|
||||
| Equirectangular import/export | `Canvas`, shaders, RTT, export dialogs | `pp_paint_renderer`, `pp_app_core` | Tiny cube/equirect golden, app-core file target tests, live export-adapter renderer-upload/face-PNG readiness report |
|
||||
| PNG/JPEG export | `Canvas`, `Image`, export dialogs | `pp_assets`, `pp_paint_renderer`, `pp_app_core` | Golden output tolerance, export start/target planning tests, live export-adapter document snapshot readiness through the shared paint-renderer export report, pure cube-face PNG writer, pure equirectangular PNG writer, JPEG/XMP parity still retained |
|
||||
| Equirectangular import/export | `Canvas`, shaders, RTT, export dialogs | `pp_paint_renderer`, `pp_app_core` | Tiny cube/equirect golden, app-core file target tests, live export-adapter renderer-upload/face-PNG readiness report, pure document-frame equirectangular PNG export and live PNG writer fallback, JPEG/XMP retained until metadata parity is owned |
|
||||
| Cube face export | `Canvas` fallback | `pp_paint_renderer`, `pp_app_core` | Pure six-face document frame composite, renderer texture-upload bridge, shared export-readiness report, app-core face filename planning and write/publish service execution, payload-complete canvas-snapshot renderer-upload and face-PNG automation, live document/renderer face-PNG writer with retained Canvas fallback, OpenGL command-plan coverage, six-face golden set |
|
||||
| Depth export | `Canvas`, grid tools | `pp_paint_renderer` | Float/readback validation |
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -689,8 +689,11 @@ prepare the same payload-bearing document snapshot and shared renderer export
|
||||
readiness report. Cube-face export writes those
|
||||
document/renderer-owned PNG bytes through a tested app-core write/publish
|
||||
executor using the app-core-planned legacy face filenames when available and
|
||||
falls back to retained `Canvas::export_cube_faces` on snapshot/write failure;
|
||||
the other export workflows still delegate to retained `Canvas` writers after
|
||||
falls back to retained `Canvas::export_cube_faces` on snapshot/write failure.
|
||||
PNG equirectangular export now uses the same document/composite payload to
|
||||
generate an equirectangular PNG through `pp_paint_renderer` before the retained
|
||||
fallback. JPEG/XMP equirectangular export, layer collections, animation-frame
|
||||
collections, depth, and video still delegate to retained `Canvas` writers after
|
||||
readiness reporting.
|
||||
`pano_cli plan-image-import` exposes app-core planning for File > Import image
|
||||
route decisions, including wide equirectangular images, legacy vertical cube
|
||||
@@ -2531,9 +2534,12 @@ Results:
|
||||
reports. Cube-face export now writes the pure document/renderer PNG bytes to
|
||||
the `pp_app_core` planned legacy face filenames through a tested
|
||||
write/publish service executor before falling back to retained `Canvas`
|
||||
execution on failure. Equirectangular, layer, animation-frame, depth, and
|
||||
video export remain on their prior retained writer paths; actual broader
|
||||
writer replacement remains tracked under export debt.
|
||||
execution on failure. PNG equirectangular export now writes a
|
||||
`pp_paint_renderer` equirectangular PNG from the same composited document
|
||||
frame before falling back to retained `Canvas` execution; JPEG/XMP,
|
||||
layer, animation-frame, depth, and video export remain on their prior
|
||||
retained writer paths. Actual broader writer replacement remains tracked
|
||||
under export debt.
|
||||
- Snapshot creation now rejects invalid embedded RGBA8 face payloads before
|
||||
document export or history can persist malformed state.
|
||||
- Package-smoke wrappers validate the Windows CMake app executable/runtime
|
||||
|
||||
Reference in New Issue
Block a user