使用关键字Unity查找GameObjects

Dea*_*ean 0 c# unity-game-engine gameobject

如何在Unity中找到带有关键字的GameObjects?

实际上,我有很多GameObject这样命名:

  • 混凝土楼[289483]
  • 混凝土地板[289487]
  • 墙壁部分[293291]
  • 部分[321043]
  • ...

我已经创建函数来获取对象的ID(在[]括号内),因为它是GameObject名称的相关部分.

ID应该是唯一的,但我不确定它是什么!

现在,我希望有一个这个原型的功能:

public static GameObject[] getObjectsWithIdentifier(int identifier)
Run Code Online (Sandbox Code Playgroud)

它将返回具有参数中给出的标识符的所有对象.所以它就像一个搜索功能.

GameObject.Find(name)据我所知,只搜索对象的确切名称.

谢谢你的帮助 !

小智 5

我认为你指的是GameObject的标签?

http://docs.unity3d.com/ScriptReference/GameObject.FindGameObjectsWithTag.html

这仍然使用直接字符串,但它不是GameObject的名称,所以它稍微管理一些.您可以将标签分配给GameObjects,最常见的是通过Prefab.

http://answers.unity3d.com/questions/54040/can-i-get-a-tags-element-number.html

这表明要将Unity3d标记转换为int/enum类型,那么您必须自己管理它.但是使用Dictionary或其他东西应该相当简单.