任务失败, 该分支已经废弃
This commit is contained in:
@@ -293,7 +293,7 @@ using (Profiler.BeginZone("BurstJob.Schedule"))
|
||||
每个Phase完成后打tag,必要时可回滚
|
||||
|
||||
# 当前执行步骤:
|
||||
"阶段3.5 - 阶段3整体测试"
|
||||
"阶段4.8 - 阶段4整体测试"
|
||||
|
||||
# 任务进度
|
||||
|
||||
@@ -460,6 +460,89 @@ using (Profiler.BeginZone("BurstJob.Schedule"))
|
||||
- 阻碍因素:无
|
||||
- 状态:未确认 → 等待用户确认:成功/不成功?
|
||||
|
||||
## 阶段4:双轨运行和实际调用
|
||||
|
||||
### 4.1 GameController添加控制字段
|
||||
[2025-12-01 18:00:00]
|
||||
- 已修改:GameController.cs (添加1个字段,Line 22)
|
||||
- 更改:添加_enableSchedulerUpdate控制字段,默认false
|
||||
- 原因:控制GameController使用新旧Update方式
|
||||
- 阻碍因素:无
|
||||
- 状态:未确认
|
||||
|
||||
### 4.2 修改GameController主Update循环
|
||||
[2025-12-01 18:02:15]
|
||||
- 已修改:GameController.cs Update方法主循环 (修改8行,Line 318-329)
|
||||
- 更改:添加新旧Update方式分支,支持调用FlatOptimizationUpdate或ScriptUpdate
|
||||
- 原因:允许运行时切换Update方式进行对比
|
||||
- 阻碍因素:无
|
||||
- 状态:未确认
|
||||
|
||||
### 4.3 修改GameController滚动时间轴Update调用
|
||||
[2025-12-01 18:04:30]
|
||||
- 已修改:GameController.cs Update方法滚动逻辑 (修改4行,Line 373-376)
|
||||
- 更改:滚动时间轴也支持新旧方式切换
|
||||
- 原因:确保所有Update调用点一致
|
||||
- 阻碍因素:无
|
||||
- 状态:未确认
|
||||
|
||||
### 4.4 修改GameController滚动Reset逻辑
|
||||
[2025-12-01 18:05:45]
|
||||
- 已修改:GameController.cs Update方法滚动Reset (修改10行,Line 378-388)
|
||||
- 更改:滚动重置也支持新旧方式切换
|
||||
- 原因:确保Reset调用点一致
|
||||
- 阻碍因素:无
|
||||
- 状态:未确认
|
||||
|
||||
### 4.5 修改ForceScriptUpdate方法
|
||||
[2025-12-01 18:07:00]
|
||||
- 已修改:GameController.cs ForceScriptUpdate方法 (修改5行,Line 294-299)
|
||||
- 更改:强制更新也支持新旧方式切换
|
||||
- 原因:确保所有Update入口一致
|
||||
- 阻碍因素:无
|
||||
- 状态:未确认
|
||||
|
||||
### 4.6 修改Stop/Pause/Play方法
|
||||
[2025-12-01 18:08:15]
|
||||
- 已修改:GameController.cs Stop/Pause/Play方法 (修改15行,Line 263-292)
|
||||
- 更改:播放控制方法也支持新旧方式切换
|
||||
- 原因:确保播放控制的Update调用一致
|
||||
- 阻碍因素:无
|
||||
- 状态:未确认
|
||||
|
||||
### 4.7 RootObject.UpdateTicks调用调度器(关键)
|
||||
[2025-12-01 18:10:30]
|
||||
- 已修改:RootObject.cs UpdateTicks方法 (添加10行,Line 111-120)
|
||||
- 更改:RootObject调用Scheduler.DoUpdate()进行扁平化Update,移除base.UpdateTicks()调用
|
||||
- 原因:这是关键步骤,让Scheduler实际被调用,建立完整调用链
|
||||
- 阻碍因素:无
|
||||
- 状态:未确认
|
||||
|
||||
### 4.7.1 修复崩溃问题 - 条件调用Scheduler
|
||||
[2025-12-01 18:15:00]
|
||||
- 已修改:RootObject.cs UpdateTicks方法 (修改逻辑,Line 112-124)
|
||||
- 更改:添加条件判断,仅在Scheduler有注册对象时调用Scheduler,否则调用base.UpdateTicks()保持旧行为
|
||||
- 原因:修复旧方式下的崩溃问题,避免双重更新和冲突
|
||||
- 阻碍因素:无
|
||||
- 状态:未确认
|
||||
|
||||
### 4.8 阶段4整体测试
|
||||
[2025-12-01 18:12:00]
|
||||
- 已修改:阶段4所有代码完成,等待测试
|
||||
- 更改:实现双轨Update,支持新旧方式切换(GameController 6处修改,RootObject 1处关键修改)
|
||||
- 原因:验证新方式功能正确且性能提升,Scheduler实际被调用
|
||||
- 测试项目:
|
||||
1. 编译项目 - ✅ 已通过(无linter错误)
|
||||
2. 旧方式测试(_enableSchedulerUpdate=false) - 待测试
|
||||
3. 新方式测试(_enableSchedulerUpdate=true,部分对象启用调度器) - 待测试
|
||||
4. 功能验证(播放/暂停/停止/滚动时间轴) - 待测试
|
||||
5. 性能对比(Tracy Profiler数据) - 待测试
|
||||
- 阻碍因素:无
|
||||
- 状态:未确认 → 等待用户确认:成功/不成功?
|
||||
- 调用链验证:
|
||||
* 旧方式:GameController → MainObject.ScriptUpdate() → 递归
|
||||
* 新方式:GameController → MainObject.FlatOptimizationUpdate() → RootObject.UpdateTicks() → Scheduler.DoUpdate() → 扁平化
|
||||
|
||||
# 最终审查
|
||||
[待完成]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user