我有一个名为 PlayerManager 的“Manager”类型类,我想使用 FindObjectOfType() 在不同的类/对象中为它初始化一个对象。我的理解是,这会搜索当前场景层次结构以查找具有此特定脚本的对象。
我在场景中生成的预制件上使用了这行代码,而不是从一开始就在那里。该变量是私有的。有时找不到对象,因为我在 Start() 函数上使用了这一行,所以我假设在实际搜索对象之前调用了“FindObjectOfType”行,因此在那里找不到任何东西。
我想在 Update() 上使用它,并首先检查对象是否为空,这样它就不会循环。我不知道这是否是一个好习惯,但它“感觉不对”。
如果我不想使用公共变量或 [SerializeField] 变量,那么理想的做法是什么?