Export layer collections through paint renderer
This commit is contained in:
@@ -258,7 +258,9 @@ powershell -ExecutionPolicy Bypass -File scripts\automation\apple-remote-build.p
|
||||
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.
|
||||
`pp_assets` PNG encoding, independent layer equirectangular PNG export for
|
||||
layer collections, and merged animation-frame equirectangular PNG export for
|
||||
frame collections.
|
||||
- `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`.
|
||||
@@ -289,7 +291,10 @@ powershell -ExecutionPolicy Bypass -File scripts\automation\apple-remote-build.p
|
||||
falls back to `Canvas::export_cube_faces` if snapshot capture, PNG generation,
|
||||
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,
|
||||
retained writer. Payload-complete layer and animation-frame PNG collections
|
||||
write pure document/paint-renderer equirectangular PNG sequences through the
|
||||
app-core collection write/publish executor before retained fallback; JPEG/XMP
|
||||
equirectangular export, Web handoff, incomplete-readback collection cases,
|
||||
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`,
|
||||
@@ -1134,8 +1139,11 @@ powershell -ExecutionPolicy Bypass -File scripts\automation\apple-remote-build.p
|
||||
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
|
||||
equirectangular PNG before retained fallback, payload-complete layer and
|
||||
animation-frame collections write pure document/paint-renderer PNG sequences
|
||||
through the app-core collection write/publish executor, and JPEG/XMP,
|
||||
Web/incomplete-readback collection cases, 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, 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 |
|
||||
| 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, pure layer/frame collection PNG writers, app-core collection write executor, 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, pure layer/frame equirectangular PNG collection export, 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
@@ -692,9 +692,12 @@ executor using the app-core-planned legacy face filenames when available and
|
||||
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.
|
||||
fallback. Payload-complete layer and animation-frame PNG collections now use
|
||||
pure `pp_paint_renderer` equirectangular PNG generation plus app-core
|
||||
collection write/publish execution before retained fallback. JPEG/XMP
|
||||
equirectangular export, Web handoff, depth, video, and incomplete-readback
|
||||
collection cases 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
|
||||
strips, regular transform-placement images, and invalid image dimensions; live
|
||||
@@ -2536,10 +2539,13 @@ Results:
|
||||
write/publish service executor before falling back to retained `Canvas`
|
||||
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.
|
||||
frame before falling back to retained `Canvas` execution; payload-complete
|
||||
layer and animation-frame PNG collections now write pure
|
||||
`pp_paint_renderer` equirectangular PNG sequences through a tested app-core
|
||||
collection write/publish executor before retained fallback. JPEG/XMP,
|
||||
Web prepared-file handoff, depth, video, and incomplete-readback collection
|
||||
cases 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