【问题标题】:Getting name of object which is using currently a script in Unity获取当前在 Unity 中使用脚本的对象的名称
【发布时间】:2016-11-14 18:19:23
【问题描述】:

我在游戏运行时动态创建游戏对象。他们每个人都有另一个名字胸围相同的脚本。我正在寻找方法来了解哪个 GameObject 运行脚本并在另一个脚本中获取此信息。

在此处创建对象:

for (int i = 0; i < w.wHowManyWords; i++)
    {
        var obj = new GameObject();
        obj.name = w.wLevelWords[i, 0];
        elementName = obj.name;
...
    }

我想知道哪个对象启动了这个脚本:

public class ClickAction : MonoBehaviour, IPointerClickHandler
{
    private string[,] levelWords;

    public void OnPointerClick(PointerEventData eventData)
    {
        print("I am here");
    }
}

【问题讨论】:

  • 你不能直接说print(gameObject.name)吗?
  • 完美!我在找那个!谢谢!

标签: c# unity3d gameobject


【解决方案1】:

code11 已回答,但如果您想要更多控制权,可以使用:

Debug.Log(gameObject.name, gameObject);

当您在控制台窗口中单击日志消息时,它将突出显示层次结构中的对象。

【讨论】:

    猜你喜欢
    • 2011-05-08
    • 2017-09-09
    • 2018-01-14
    • 2022-06-16
    • 2011-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-13
    相关资源
    最近更新 更多