【问题标题】:Script Reference in UnityUnity 中的脚本参考
【发布时间】:2013-10-05 09:23:23
【问题描述】:

我正在创建一个游戏,它对脚本有多个引用,一个到另一个。

例如:

  1. 控制器脚本
  2. SomeBehavior 脚本
  3. GUI 脚本

当我可以做两件不同的事情时,我的疑惑就出现了:

  1. 在 SomeBehavior 中访问/编辑我想要的 GUI 变量/函数...例如:

    1.1。 variable = GameObject.Find("GuiTag").GetComponent();
    variable.score....然后继续...

  2. 在 SomeBehavior 中,通过 Controller.gui 访问/编辑 GUI 变量/函数(gui 是控制器脚本上的公共变量)...将所有基本脚本集中到一个中,这样,脚本中的变量更少,内存更少( perraps)...

    2.1。 variable = GameObject.Find("ControllerTag").GetComponent();
    variable.gui.score....

哪个更好?

【问题讨论】:

  • 基准测试。如果您将再次使用它们,您应该存储GameObject.Find 的结果,Find 是一个浪费电话。就内存而言……您可能应该阅读 C# 的引用类型。 “脚本中的变量更少”与内存几乎没有关系。

标签: c# scripting unity3d monodevelop


【解决方案1】:

在您将只有一个的脚本中,您可以在该类中使用公共 get 和私有集设置公共静态变量。在 Start 或 Awake 函数中,您将该变量设置为此,然后您可以从任何其他脚本轻松访问该脚本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多