docs: Document stub/not-implemented methods in resources module

Fixed discrepancies between source code and documentation:
- AsyncLoader: Document Initialize() ignores workerThreadCount, Submit() doesn't do actual async loading, Update() is stub
- ResourceManager: Document UnloadUnused() and ReloadResource() are stubs
- ResourceCache: Document OnZeroRefCount() and Flush() are stubs
- ResourceDependencyGraph: Document TopologicalSort() returns empty (stub)
- ResourceFileSystem: Document GetResourceInfo() doesn't fill modifiedTime, EnumerateResources() is stub
- FileArchive: Document Enumerate() is stub
- ResourcePackageBuilder: Document AddDirectory() is stub
- ImportSettings: Document LoadFromJSON/SaveToJSON are stubs
- TextureImportSettings/MeshImportSettings: Document JSON methods are stubs
- TextureLoader/MeshLoader/MaterialLoader/ShaderLoader/AudioLoader: Document GetDefaultSettings() returns nullptr
- AudioLoader: Document ParseWAVData() is stub, Load() doesn't parse WAV headers
- ShaderLoader: Document DetectShaderType/ParseShaderSource are stubs
- MaterialLoader: Document ParseMaterialData() is stub
- Texture: Document Create() mipLevels=0 behavior, GenerateMipmaps() returns false
- Mesh: Document MeshLoader::Load() is example only
- IResourceLoader: Document GetDefaultSettings() returns nullptr for all loaders
This commit is contained in:
2026-03-19 01:16:12 +08:00
parent 8c719418d0
commit 7e4c48d4f9
21 changed files with 192 additions and 37 deletions

View File

@@ -31,12 +31,12 @@ struct OBB {
| 方法 | 返回值 | 描述 |
|------|--------|------|
| [GetAxis(index)](obb-getaxis.md) | `Vector3` | 获取局部轴 |
| [GetMin()](obb-getmin.md) | `Vector3` | 局部空间最小点 |
| [GetMax()](obb-getmax.md) | `Vector3` | 局部空间最大点 |
| [Contains(point)](obb-contains.md) | `bool` | 点是否在 OBB 内 |
| [Intersects(OBB)](obb-intersects-obb.md) | `bool` | 与另一个 OBB 相交 |
| [Intersects(Sphere)](obb-intersects-sphere.md) | `bool` | 与球体相交 |
| [GetAxis(index)](getaxis.md) | `Vector3` | 获取局部轴index 必须是 0、1 或 2 |
| [GetMin()](../box/getmin.md) | `Vector3` | 局部空间最小点 |
| [GetMax()](../box/getmax.md) | `Vector3` | 局部空间最大点 |
| [Contains(point)](../box/contains.md) | `bool` | 点是否在 OBB 内 |
| [Intersects(OBB)](intersects-obb.md) | `bool` | 与另一个 OBB 相交 |
| [Intersects(Sphere)](intersects-sphere.md) | `bool` | 与球体相交 |
## 相关文档

View File

@@ -0,0 +1,23 @@
# OBB::GetAxis
```cpp
Vector3 GetAxis(int index) const
```
获取 OBB 的局部坐标轴。
**参数:**
- `index` - 轴索引0=X轴, 1=Y轴, 2=Z轴
**返回:** `Vector3` - 对应轴的方向向量
**复杂度:** O(1)
**示例:**
```cpp
OBB obb = ...;
Vector3 xAxis = obb.GetAxis(0); // 局部 X 轴
Vector3 yAxis = obb.GetAxis(1); // 局部 Y 轴
Vector3 zAxis = obb.GetAxis(2); // 局部 Z 轴
```

View File

@@ -0,0 +1,24 @@
# OBB::Intersects (OBB)
```cpp
bool Intersects(const OBB& other) const
```
检测两个 OBB 是否相交(使用 SAT 分离轴定理)。
**参数:**
- `other` - 另一个 OBB
**返回:** `bool` - true 表示相交
**复杂度:** O(1)
**示例:**
```cpp
OBB obbA = ...;
OBB obbB = ...;
if (obbA.Intersects(obbB)) {
// 两个有向包围盒相交
}
```

View File

@@ -0,0 +1,24 @@
# OBB::Intersects (Sphere)
```cpp
bool Intersects(const Sphere& sphere) const
```
检测 OBB 是否与球体相交。
**参数:**
- `sphere` - 要检测的球体
**返回:** `bool` - true 表示相交
**复杂度:** O(1)
**示例:**
```cpp
OBB obb = ...;
Sphere sphere = ...;
if (obb.Intersects(sphere)) {
// OBB 与球体相交
}
```

View File

@@ -16,6 +16,11 @@ struct Box {
};
```
**成员:**
- `center` - 包围盒中心点
- `extents` - 包围盒半长(各轴向的半径)
- `transform` - 变换矩阵(用于 OBB 检测)
**注意:** `Contains` 方法会使用 `transform` 进行真正的 OBB 检测。`Intersects(Box)` 目前使用 AABB 简化算法,未考虑旋转。
## 构造函数

View File

@@ -17,6 +17,11 @@ struct Color {
};
```
## 构造函数
- `Color()` - 默认构造,初始化为白色 (1, 1, 1, 1)
- `constexpr Color(float r, float g, float b, float a = 1.0f)` - 从 RGBA 分量构造
## 静态工厂方法
| 方法 | 返回值 | 描述 |

View File

@@ -1,12 +1,34 @@
# Quaternion::Normalized
# Quaternion::Normalized / Normalize
## 实例方法
```cpp
Quaternion Normalized() const
Quaternion Normalize(const Quaternion& q)
```
返回当前四元数的归一化副本(不修改原四元数)。
**返回:** `Quaternion` - 归一化后的四元数副本
**复杂度:** O(1)
**示例:**
```cpp
Quaternion unit = quat.Normalized(); // quat 保持不变
```
## 静态方法
```cpp
static Quaternion Normalize(const Quaternion& q)
```
归一化四元数。
**参数:**
- `q` - 要归一化的四元数
**返回:** `Quaternion` - 归一化后的四元数
**复杂度:** O(1)
@@ -14,6 +36,5 @@ Quaternion Normalize(const Quaternion& q)
**示例:**
```cpp
Quaternion unit = quat.Normalized();
Quaternion unit2 = Quaternion::Normalize(quat);
Quaternion unit = Quaternion::Normalize(quat);
```

View File

@@ -38,8 +38,13 @@ struct Quaternion {
| [Inverse()](inverse.md) | `Quaternion` | 共轭/逆四元数 |
| [Dot(other)](dot.md) | `float` | 点积 |
| [Magnitude()](magnitude.md) | `float` | 模长 |
| [Normalized()](normalized.md) | `Quaternion` | 归一化 |
| [Normalize(q)](normalized.md) | `Quaternion` | 归一化(静态) |
| [Normalized()](normalized.md) | `Quaternion` | 归一化副本 |
## 静态方法
| 方法 | 返回值 | 描述 |
|------|--------|------|
| [Normalize(q)](normalized.md) | `Quaternion` | 归一化四元数 |
## 运算符