C# 将字符串转换为非活动的游戏对象
我有一个不活动的游戏对象,即emptyShape1,我创建了一个函数,返回一个字符串,即emptyShape1 我试着用施法将字符串转换成游戏对象C# 将字符串转换为非活动的游戏对象,c#,unity3d,game-development,C#,Unity3d,Game Development,我有一个不活动的游戏对象,即emptyShape1,我创建了一个函数,返回一个字符串,即emptyShape1 我试着用施法将字符串转换成游戏对象 (GameObject)emptyShape1 这样我就可以激活空形状1游戏对象,但它给了我一个错误的说法 无法将字符串转换为Unity.GameObject 我尝试使用GameObject.FindemptyShape1,但它也给了我一个错误提示 对象引用未设置为对象的实例 查找空形状1字符串或将其转换为游戏对象的有效方法是什么?编辑:我误解了
(GameObject)emptyShape1
这样我就可以激活空形状1游戏对象,但它给了我一个错误的说法
无法将字符串转换为Unity.GameObject
我尝试使用GameObject.FindemptyShape1,但它也给了我一个错误提示
对象引用未设置为对象的实例
查找空形状1字符串或将其转换为游戏对象的有效方法是什么?编辑:我误解了,您想查找具有特定名称的非活动游戏对象。我不认为你能用GameObject做到这一点
parent.transform.Find("emptyShape1");
旧答案:
如何创建具有特定名称的游戏对象并将其禁用:
GameObject emptyGameObject = new GameObject(enemyShape1);
emptyGameObject.setActive(false);
您可以使用Resources查找所有对象。FindObjectsOfTypeAll;它返回一个数组,然后查找具有名称的数组-但是这是一个昂贵的调用。您的代码是否无法更改,以保留您要回拨的禁用项列表?请查看第二个答案。警告:您需要了解其父级。