docs(api): sync xceditor roots and model importer
This commit is contained in:
@@ -67,13 +67,13 @@
|
||||
|
||||
- 当前编辑器主路径仍然以 Windows + D3D12 + Dear ImGui 为核心。
|
||||
- 这套代码整体属于应用层源码,不应误解为已经整理成稳定插件 SDK。
|
||||
- 自动审计脚本目前主要覆盖 `engine/include/XCEngine/**` 的 public headers;Editor 这组文档更依赖目录并行约束、链接校验和人工核对源码行为。
|
||||
- 自动审计脚本现在同时覆盖 `engine/include/XCEngine/**` 与 `new_editor/include/XCEditor/**` 的 public headers;`docs/api/XCEngine/Editor/**` 这组 source-backed 文档仍更依赖目录并行约束、链接校验和人工核对源码行为。
|
||||
|
||||
## 文档边界更新(2026-04-09)
|
||||
## 文档边界更新(2026-04-10)
|
||||
|
||||
- `docs/api/XCEngine/Editor/**` 当前严格对应旧 `editor/src/**`。
|
||||
- `new_editor/include/XCEditor/**` 与 `new_editor/src/**` 已经形成新的 Editor 基础层主线,不再适合继续并入这棵旧树。
|
||||
- 后续会为 `XCEditor` 单独建立新的 API 文档根树,并把 `Collections / Fields / Foundation / Shell / Widgets` 迁到新结构下。
|
||||
- `docs/api/XCEditor/**` 现在单独对应 `new_editor/include/XCEditor/**` 的新 Editor 基础层 public headers。
|
||||
- `new_editor/app/**` 与 `new_editor/ui/**` 属于宿主与产品装配层,不并入这棵 public-header canonical 树。
|
||||
|
||||
## 目录
|
||||
|
||||
@@ -101,5 +101,6 @@
|
||||
- [Scene](../Scene/Scene.md)
|
||||
- [Components](../Components/Components.md)
|
||||
- [Rendering](../Rendering/Rendering.md)
|
||||
- [XCEditor](../../XCEditor/XCEditor.md)
|
||||
- [Editor Architecture And Workflow](../../_guides/Editor/Editor-Architecture-And-Workflow.md)
|
||||
- [API 总索引](../../main.md)
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
# AssimpModelImporter
|
||||
|
||||
**命名空间**: `XCEngine::Resources`
|
||||
|
||||
**类型**: `header`
|
||||
|
||||
**头文件**: `XCEngine/Resources/Model/AssimpModelImporter.h`
|
||||
|
||||
**源文件**: `engine/src/Resources/Model/AssimpModelImporter.cpp`
|
||||
|
||||
**描述**: Assimp 模型导入 helper 的 contract 头文件,声明导入结果结构体和 `ImportAssimpModel(...)` 入口。
|
||||
|
||||
## 概述
|
||||
|
||||
`AssimpModelImporter.h` 当前声明的是“把源模型文件导入成 `Model + Mesh + Material + Texture` 组合结果”的接口层,而不是 `.xcmodel` artifact loader。
|
||||
|
||||
按当前头文件,它主要暴露:
|
||||
|
||||
- `ImportedModelMesh`
|
||||
- 单个导入 mesh 的 local id、mesh 指针和材质 local id 列表
|
||||
- `ImportedModelMaterial`
|
||||
- 单个导入 material 的 local id 与 material 指针
|
||||
- `ImportedModelData`
|
||||
- 一次导入得到的 `Model`、mesh/material 集合与纹理集合
|
||||
- `ImportAssimpModel(...)`
|
||||
- 以 `sourcePath + MeshImportSettings` 为输入,把导入结果写进 `ImportedModelData`
|
||||
|
||||
## 声明概览
|
||||
|
||||
| 声明 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| `ImportedModelMesh` | `struct` | 单个 mesh 导入结果与材质绑定索引。 |
|
||||
| `ImportedModelMaterial` | `struct` | 单个 material 导入结果。 |
|
||||
| `ImportedModelData` | `struct` | 一次模型导入得到的资源集合。 |
|
||||
| `ImportAssimpModel(...)` | `function` | 以 Assimp 为前端的模型导入入口。 |
|
||||
|
||||
## 当前状态模型
|
||||
|
||||
| 结构 | 关键字段 | 说明 |
|
||||
|------|----------|------|
|
||||
| `ImportedModelMesh` | `localID`, `mesh`, `materialLocalIDs` | 导入出的 mesh 及其材质绑定 |
|
||||
| `ImportedModelMaterial` | `localID`, `material` | 导入出的 material |
|
||||
| `ImportedModelData` | `model`, `meshes`, `materials`, `textures` | 一次导入得到的完整资源集合 |
|
||||
|
||||
## 当前实现边界
|
||||
|
||||
- 当前实现已经落在 `engine/src/Resources/Model/AssimpModelImporter.cpp`,内部直接依赖 Assimp、`ResourceManager`、`TextureLoader` 与若干 `Resources/*` 运行时类型。
|
||||
- 头文件只暴露导入结果结构与顶层入口;路径解析、纹理缓存、Assimp 后处理参数与子资源构建细节都收敛在 `.cpp` 内部 helper。
|
||||
- 现有 `AssetDatabase::ImportModelAsset(...)` 仍会把导入结果进一步落到模型相关资源与 artifact 流程里,因此这里负责的是“源模型导入前端”,不是 `.xcmodel` artifact loader。
|
||||
- 即便如此,这个头文件仍是 `XCEngine/Resources/Model` 下真实存在的 public header,因此需要保留 canonical API 页面。
|
||||
|
||||
## 相关文档
|
||||
|
||||
- [Model 子模块](../Model.md)
|
||||
- [Model](../Model/Model.md)
|
||||
- [ModelLoader](../ModelLoader/ModelLoader.md)
|
||||
- [API 总索引](../../../../main.md)
|
||||
@@ -4,16 +4,23 @@
|
||||
|
||||
**类型**: `module-root`
|
||||
|
||||
**描述**: `XCEngine` public API 的根目录入口,对齐 `engine/include/XCEngine` 的源码模块结构。
|
||||
**描述**: `XCEngine` runtime public API 与旧编辑器应用层文档根,对齐 `engine/include/XCEngine` 与 `editor/src` 的现有 canonical 结构。
|
||||
|
||||
## 概览
|
||||
|
||||
`docs/api/XCEngine` 是当前唯一的 canonical API 文档树。它和 `engine/include/XCEngine` 保持平行目录结构,用来回答两类问题:
|
||||
`docs/api/XCEngine` 不再是唯一的 canonical API 根树。它当前负责:
|
||||
|
||||
- `engine/include/XCEngine/**` 这组 runtime public headers
|
||||
- `editor/src/**` 这组旧编辑器应用层文档入口
|
||||
|
||||
新编辑器基础层 public headers 已转到 [XCEditor](../XCEditor/XCEditor.md)。
|
||||
|
||||
这棵树和 `engine/include/XCEngine` 保持平行目录结构,用来回答两类问题:
|
||||
|
||||
- 这个模块在引擎里负责什么,边界在哪里。
|
||||
- 这个 public header 在当前版本里到底做到了什么程度。
|
||||
|
||||
同时,这里也统一收纳编辑器侧 API 文档入口 [Editor](Editor/Editor.md),用于描述与引擎并行协作的编辑器应用层接口。
|
||||
同时,这里继续收纳旧编辑器应用层入口 [Editor](Editor/Editor.md),用于描述与引擎并行协作的工具应用接口。
|
||||
|
||||
本轮收口之后,`Core/Asset`、`Rendering`、`Resources` 和 `Scene` 这几个模块已经把基础 helper / 协议层 header 也纳入了 canonical 文档,而不只覆盖高层类和模块页。
|
||||
|
||||
@@ -50,4 +57,5 @@
|
||||
## 相关文档
|
||||
|
||||
- [API 总索引](../main.md)
|
||||
- [XCEditor API 根](../XCEditor/XCEditor.md)
|
||||
- [API 文档重构状态](../_meta/rebuild-status.md)
|
||||
|
||||
Reference in New Issue
Block a user