Document RenderManager backend sync and manual test checkpoints

- dynamic plan: mark that RenderManager::backend() now syncs with
  DynamicRenderer's actual loaded backend after internal fallback.
- manual test plan: add checks in 10.2/10.3 that RenderManager reports
  the actual runtime backend (OpenGL after Vulkan fallback).

No code changes; ctest passes 4/4.
This commit is contained in:
2026-07-13 10:19:30 +08:00
parent 8b8aa945f0
commit 55271a53c7
2 changed files with 5 additions and 3 deletions
+1 -1
View File
@@ -140,7 +140,7 @@
- [x] `OAK_ENABLE_DYNAMIC_RENDER_BACKEND` 默认 `ON``liboakgl.so` 默认构建并安装;`liboakvulkan.so` 在检测到 Vulkan 开发库时构建并安装。 - [x] `OAK_ENABLE_DYNAMIC_RENDER_BACKEND` 默认 `ON``liboakgl.so` 默认构建并安装;`liboakvulkan.so` 在检测到 Vulkan 开发库时构建并安装。
- [x] OpenGL 后端库可单独构建、加载、初始化、销毁。 - [x] OpenGL 后端库可单独构建、加载、初始化、销毁。
- [x] 用户能在配置中选择 OpenGL/Vulkan。 - [x] 用户能在配置中选择 OpenGL/Vulkan。
- [x] Vulkan 不可用时自动回退到 OpenGL,不崩溃。 - [x] Vulkan 不可用时自动回退到 OpenGL,不崩溃`RenderManager::backend()` 会在 `DynamicRenderer` 内部回退后同步为实际运行后端
- [x] 链接边界已最小化:`oakgl` / `oakvulkan` 现在只链接独立的 `libolive-rendercore`,不再拉入完整 editor 代码;库体积从约 21 MB 降至约 600 KB。 - [x] 链接边界已最小化:`oakgl` / `oakvulkan` 现在只链接独立的 `libolive-rendercore`,不再拉入完整 editor 代码;库体积从约 21 MB 降至约 600 KB。
- [x] Vulkan / backend-neutral viewer readback display 路径已搭建(offscreen texture → download → QImage → QPainter),但端到端显示尚未在真实 Vulkan 设备上验证。 - [x] Vulkan / backend-neutral viewer readback display 路径已搭建(offscreen texture → download → QImage → QPainter),但端到端显示尚未在真实 Vulkan 设备上验证。
- [x] OpenFX 插件渲染边界已处理:`PluginRenderer` 后端无关化,非 OpenGL 渲染器自动回退 CPU 路径,动态 OpenGL 后端通过 C ABI 支持 OFX OpenGL 输出绑定。 - [x] OpenFX 插件渲染边界已处理:`PluginRenderer` 后端无关化,非 OpenGL 渲染器自动回退 CPU 路径,动态 OpenGL 后端通过 C ABI 支持 OFX OpenGL 输出绑定。
@@ -380,8 +380,9 @@
3. 关闭 Oak 并重新启动。 3. 关闭 Oak 并重新启动。
4. 再次打开 Preferences,确认仍显示 Vulkan。 4. 再次打开 Preferences,确认仍显示 Vulkan。
5. 导入并播放 `4k_camera_a.mov` 5. 导入并播放 `4k_camera_a.mov`
6. 检查日志,确认 `RenderManager` 报告的实际后端与回退结果一致。
通过标准:Vulkan 选择可持久化;重启后应用不崩溃;当前未完成 VulkanRenderer 时应明确回退 OpenGL 渲染,播放仍可用。 通过标准:Vulkan 选择可持久化;重启后应用不崩溃;当前 Vulkan 未完整验证时应明确回退 OpenGL 渲染,`RenderManager::backend()` 必须反映实际运行后端(回退后应为 OpenGL,播放仍可用。
### 10.3 Vulkan 驱动缺失或不可用 ### 10.3 Vulkan 驱动缺失或不可用
@@ -389,8 +390,9 @@
2. 重启 Oak。 2. 重启 Oak。
3. 打开项目并播放一段视频。 3. 打开项目并播放一段视频。
4. 检查日志或控制台输出。 4. 检查日志或控制台输出。
5. 通过日志或调试接口确认 `RenderManager::backend()` 已同步为 OpenGL,而不是继续报告 Vulkan。
通过标准:应用可以启动;日志应说明 Vulkan 请求不可完全满足或当前回退 OpenGL;用户能回到 Preferences 改回 OpenGL。 通过标准:应用可以启动;日志应说明 Vulkan 请求不可完全满足或当前回退 OpenGL;`RenderManager::backend()` 必须与实际运行后端一致;用户能回到 Preferences 改回 OpenGL。
### 10.4 从 Vulkan 切回 OpenGL ### 10.4 从 Vulkan 切回 OpenGL