Files
AnyImage/openspec/changes/add-panorama-conversion/specs/panorama-conversion/spec.md
nan 489003c2cc Add new tests and functionality for image processing and geometry handling
- Introduced color_image.py for preparing standalone color images for tests.
- Added hdr_image.py to create HDR textures for testing.
- Implemented test_image_depth_panorama.py to evaluate panorama topology, UVs, and depth discontinuities.
- Created test_shadeless.py to validate the opacity and HDR color endpoints of the Shadeless group.
- Developed moge3_export.py for exporting dynamic MoGe-3 backbone and ONNX graphs.
- Added material.py to inherit material slots onto generated geometry.
- Built image_depth_panorama.py to construct a quad panorama with depth separation and sampling.
2026-09-10 14:42:17 +08:00

1.5 KiB
Raw Blame History

ADDED Requirements

Requirement: Image Empty panorama conversion entry

系统 SHALL 在 Image Empty 的 AnyImage 右键菜单展示 Convert to Panorama,调用 anyimage.convert_to_panorama。

Scenario: Select panorama conversion

  • WHEN 用户选中静态 2:1 Image Empty 并选择 Convert to Panorama
  • THEN 提交当前图片及 Alpha 的全景生成任务,使用 Preferences 中的模型、推理级别和分析尺寸

Scenario: Unsupported image

  • WHEN 输入是动画、视频或非 2:1 图片
  • THEN 提示输入限制并保留源对象

Requirement: Consume current image alpha

转换 SHALL 直接使用当前源图及 Alpha。背景处理由用户通过现有 Remove Background 完成。

Scenario: Already removed background

  • WHEN 源 Empty 的天空已透明
  • THEN 当前 Alpha 进入全景任务,转换过程中只运行几何模型

Requirement: Complete conversion transaction

系统 SHALL 在主线程加载结果、打包贴图并创建节点对象,成功后替换源 Empty,并提供完整撤销。

Scenario: Successful conversion

  • WHEN Job 返回有效产物
  • THEN 创建使用 O Image Panorama 的对象,继承源 Empty 世界变换并以其原点为拍摄中心,激活结果并支持撤销恢复源对象

Scenario: Cancelled or failed conversion

  • WHEN 任务失败、取消或响应时源对象已失效
  • THEN 清理本任务暂存及未使用数据块,不应用部分转换结果