Files
AnyImage/openspec/changes/unify-boundary-depth-smoothing/tasks.md
nan 31074bd511 Add tests and implement boundary smoothing and cutout functionality
- Introduced tests for boundary smoothing in `test_boundary_smoothing.py`, verifying that smoothing reduces stair-step artifacts while preserving boundary integrity.
- Added tests for cutout boundary behavior in `test_cutout_boundary.py`, ensuring proper handling of boundary triangles and normal blending.
- Created `test_temporary_attributes.py` to check the cleanup of temporary attributes across depth modifier branches, ensuring no warnings are raised.
- Implemented point culling functionality in `test_validity.py`, confirming that invalid points are removed without affecting adjacent geometry.
- Developed boundary smoothing logic in `boundary_smoothing.py`, allowing for depth smoothing while maintaining edge integrity.
- Added cutout boundary management in `cutout_boundary.py`, including functions for removing boundary triangles and tapering thickness profiles.
- Implemented validity checks in `validity.py` to ensure proper deletion of invalid vertices and associated wire edges.
2026-09-11 20:37:20 +08:00

29 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## 1. 实施基线
- [x] 1.1 检查当前工作区修改、三个节点组的参数标识和调用顺序,保留已有工作;运行相关边界与深度节点测试,记录基线。
- [x] 1.2 复查独立实验的 Cutout 和 Depth Plane 对比,准备可重建的尖刺、内部孔洞、深度断层及全景接缝/极点合成场景。
## 2. 公共深度平滑
- [x] 2.1 在 common/boundary_smoothing.py 中实现 Point 域标量 Blur、两圈影响权重及保护字段,复用现有节点辅助函数。
- [x] 2.2 实现迭代数为 0 和影响权重为 0 时的原值直通,验证内部精确保持、拓扑不变及分离表面的采样隔离。
## 3. 节点组接入
- [x] 3.1 接入 Depth Cutout,在 Split 后、投影前平滑相机 Z,按原射线重建;让原 Alpha 轮廓参与深度平滑,并保留后置网格平滑的既有保护规则。
- [x] 3.2 接入 Depth Plane,复用原 UV 矩形外框保护,处理 Valid Only 和 Split 的新边界;验证完整矩形的新增深度平滑为恒等操作。
- [x] 3.3 接入 Depth Panorama,在当前球面拓扑上平滑有效径向距离,接回 Depth Scale 表达式;验证 Invalid Distance、Valid Only 两分支、UV 接缝和极点。
- [x] 3.4 三组共用 Boundary Smooth 迭代数,保留默认 5、范围 0–20 和既有 socket 标识;更新对应界面描述并精简重复连接。
## 4. 回归与实图验收
- [x] 4.1 为源码构建和保存资产补齐零值直通、边界尖刺、两圈外保持、零深度、相机射线/球面方向及原矩形保护的行为测试。
- [x] 4.2 覆盖 Alpha 与模型 validity 开口、Split 隔离、Cutout 两种模式、零/正厚度及 Depth Scale;检查几何、UV、材质与用户属性传递。
- [x] 4.3 对三张既有实图复验 Cutout 与 Depth Plane,比较 Boundary Smooth 5、12 及不同密度;检查尖刺改善和过度软化,并完成全景专项验收。
- [x] 4.4 递归检查几何组及嵌套组 Capture 为零,审查命名属性的必要性与清理位置,确认节点布局可读。
## 5. 资产与交付
- [x] 5.1 运行 uv run node-group build,更新 O_AnyImage.blend 和必要资产版本标识,在独立 Blender 进程中加载并验证。
- [x] 5.2 运行相关节点及 Operator 测试,确认正常退出;核对源码与资产的一致性、最终差异和旧引用,保留已有其他修改。