1.3 KiB
1.3 KiB
GameObject::Constructor
构造一个 GameObject。
GameObject 当前提供两个公开构造形式:
GameObject();
explicit GameObject(const std::string& name);
默认构造行为
默认构造当前会建立如下初始状态:
name = "GameObject"tag = "Untagged"activeSelf = truestarted = falselayer = 0scene = nullptrparent = nullptr- 自动创建一个内建
TransformComponent - 分配新的递增 ID 与随机 UUID
tests/Components/test_game_object.cpp 中的 DefaultConstructor_DefaultValues 已验证默认 tag、layer、激活态和 Transform 都会按这套语义建立。
命名构造行为
带 name 的构造只会把对象名替换为传入值,其他默认状态保持一致:
tag仍是"Untagged"layer仍是0- 仍然会创建内建
Transform - 仍然不会自动加入任何
Scene
重要边界
- 直接构造对象不会自动注册到全局 registry
- 不会自动触发
Awake() - 不会自动接入场景层级
如果你需要完整运行时语义,应优先通过 Scene::CreateGameObject 创建。