docs: expand gameobject helper docs

This commit is contained in:
2026-04-03 16:11:48 +08:00
parent ee44e14960
commit 2c2e1fab1c
34 changed files with 597 additions and 603 deletions

View File

@@ -1,31 +1,37 @@
# GameObject::Find
查找并返回匹配对象
按对象名称在全局 registry 中查找第一个匹配的 `GameObject`
```cpp
static GameObject* Find(const std::string& name);
```
该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。
## 行为说明
**参数:**
- `name` - 参数语义详见头文件声明。
**返回:** `GameObject*` - 返回值语义详见头文件声明。
**示例:**
当前实现会遍历 `GameObject::GetGlobalRegistry()`,并检查:
```cpp
#include <XCEngine/Components/GameObject.h>
void Example() {
XCEngine::Components::GameObject object;
// 根据上下文补齐参数后调用 GameObject::Find(...)。
(void)object;
}
pair.second->GetName() == name
```
找到第一个匹配项后立即返回。
## 重要边界
- 查询范围是全局 registry不是某个 `Scene` 的局部子树
- 独立构造、未加入场景的对象默认不会被查到
- registry 底层是 `std::unordered_map`,因此“第一个匹配项”的顺序不构成稳定契约
## 参数
- `name` - 目标对象名。
## 返回值
- `GameObject*` - 找到时返回匹配对象;否则返回 `nullptr`
## 相关文档
- [返回类总览](GameObject.md)
- [返回模块目录](../Components.md)
- [GameObject](GameObject.md)
- [FindObjectsOfType](FindObjectsOfType.md)
- [FindGameObjectsWithTag](FindGameObjectsWithTag.md)