3.6 KiB
3.6 KiB
项目任务清单(Project Task Checklist)
更新时间:2026-02-28
适用范围:d:\IMGUI\EG 本地工作区(不含远程仓库内容)
目标
- 保持编辑器主路径稳定运行在 ImGui + Panda3D。
- 持续收敛历史兼容耦合(
interface_manager/treeWidget/gui_manager)。 - 基于可执行任务包推进非 VR 优化重构。
当前状态总览
- Qt 运行依赖主路径已清理完成(排除
RenderPipelineFile)。 - 项目已进入“非 VR 结构优化阶段”。
_getActor第一轮拆分已完成,当前最高优先任务转为updateGizmoDrag拆分。
已完成(Done)
A. Qt 清理与迁移完成
- 清理主路径 Qt 直接依赖:
PyQt/PySide/Qt扫描主路径为0。 core/InfoPanelManager.py:去除 Qt 直接导入。core/selection.py:光标逻辑改为 Panda3D 路径。scene/scene_manager_convert_tiles_mixin.py:移除QProgressDialog。ui/widgets.py:替换为 legacy 占位模块。ui/icon_manager.py:替换为无 Qt 兼容实现。core/world.py/core/vr_manager.py/core/vr/testing/test_mode.py:清理qtWidget语义依赖。requirements/*:移除 Qt/PySide 运行依赖。
B. 上下文收敛与基础重构完成
- 建立
core/editor_context.py,并完成第一批接入:core/event_handler.pycore/selection.pycore/InfoPanelManager.pyui/panels/runtime_actions.pycore/terrain_manager.pyscene/scene_manager_convert_tiles_mixin.pyscene/scene_manager_serialization_mixin.pyscene/scene_manager_model_mixin.py
scene/scene_manager_io_mixin.py::loadScene完成两轮拆分(556 -> 74行)。main.py::__init__第一轮拆分完成(375 -> 27行,VR 初始化逻辑保持原样)。
C. 面板模块化完成
ui/panels/editor_panels.py按布局拆分为 4 个模块:editor_panels_top.pyeditor_panels_left.pyeditor_panels_center.pyeditor_panels_right.py
editor_panels_right.py再拆分为 3 个子 mixin:editor_panels_right_transform.pyeditor_panels_right_material.pyeditor_panels_right_collision.py
D. 动画加载入口拆分完成(第一轮)
ui/panels/animation_tools.py::_getActor第一轮拆分完成:- 行数:
510 -> 39 - 新增 helper:
_sync_owner_model_path_tags、_get_valid_cached_actor、_try_memory_fallback_actor、_collect_actor_candidate_paths、_try_actor_from_path等 - 保持策略:文件路径优先,失败后内存/autoBind 兜底
- 行数:
下一步(Next)
N1 updateGizmoDrag 拆分(最高优先级,非 VR)
- 目标文件:
core/selection.py - 当前规模:
278行 - 验收目标:
- 主函数压缩到
<= 120行 - 保持 gizmo 拖拽行为一致
- 主函数压缩到
N2 资源管理器面板 拆分(高优先级,非 VR)
- 目标文件:
ui/panels/editor_panels_left.py::_draw_resource_manager - 当前规模:
310行 - 验收目标:
- 提取目录/文件项渲染与右键菜单复用逻辑
- 交互行为保持一致
验收标准(阶段)
- 不安装 PyQt/PySide 时,
python main.py可进入编辑器主界面。 - 非 VR 主流程(导入/选择/变换/保存/加载)无 Qt 残余异常。
- 每轮重构后可通过最小回归(启动、导入、播放动画、保存加载)。
关联文档
- 优化分析:
PROJECT_OPTIMIZATION_ANALYSIS.md - 模块索引:
PROJECT_MODULE_INDEX.md - 全量目录:
PROJECT_FULL_CATALOG.md - 历史分析:
IMGUI_MODULE_ANALYSIS.md