docs: sync editor viewport host docs
This commit is contained in:
49
docs/api/XCEngine/Editor/Application/Initialize.md
Normal file
49
docs/api/XCEngine/Editor/Application/Initialize.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# Application::Initialize
|
||||
|
||||
**命名空间**: `XCEngine::Editor`
|
||||
|
||||
**类型**: `method`
|
||||
|
||||
**源文件**: `editor/src/Application.h`
|
||||
|
||||
## 签名
|
||||
|
||||
```cpp
|
||||
bool Initialize(HWND hwnd);
|
||||
```
|
||||
|
||||
## 作用
|
||||
|
||||
完成当前 Editor 宿主壳的启动编排,包括日志、项目根解析、窗口渲染宿主、资源系统、`EditorContext`、脚本运行时、ImGui 和 `EditorLayer` 挂接。
|
||||
|
||||
## 当前实现行为
|
||||
|
||||
- 启动早期会先执行:
|
||||
- `InstallCrashExceptionFilter()`
|
||||
- `RedirectStderrToExecutableLog()`
|
||||
- `ConfigureEditorLogging(exeDir)`
|
||||
- 然后解析当前编辑器项目根目录,并尝试切换工作目录到该路径。
|
||||
- 之后缓存主窗口句柄 `m_hwnd`,并调用 `InitializeWindowRenderer(hwnd)`。
|
||||
- 窗口渲染宿主成功后,会初始化全局 `ResourceManager` 并把资源根设置到项目根目录。
|
||||
- 接着按顺序初始化:
|
||||
- `EditorContext`
|
||||
- 脚本运行时
|
||||
- ImGui session / backend / 内置图标 / `ViewportHostService`
|
||||
- `EditorLayer`
|
||||
- 最后清空上一帧时间戳状态并把 `m_renderReady` 设为 `true`。
|
||||
|
||||
## 失败路径
|
||||
|
||||
- 任一关键步骤失败时,当前会直接返回 `false`。
|
||||
- `InitializeWindowRenderer(...)` 失败时还会弹出 Win32 `MessageBoxW` 错误框。
|
||||
|
||||
## 当前实现边界
|
||||
|
||||
- 当前启动路径默认只面向单窗口 Win32 + D3D12 宿主。
|
||||
- 项目根目录由宿主启动时自动解析,不要求外部先传入项目路径。
|
||||
|
||||
## 相关文档
|
||||
|
||||
- [Application](Application.md)
|
||||
- [Shutdown](Shutdown.md)
|
||||
- [SwitchProject](SwitchProject.md)
|
||||
Reference in New Issue
Block a user