我需要跟踪与当前场景相关的一些值,例如:播放时间(时间),最后一次移动(时间)。然而,它们不是我需要显示用户的值,也不是特别与任何游戏对象有关,因此我不确定将它们保存在哪里。
我需要它们在场景中持久存在,并且所有GameObjects都可以访问。
我在哪里保存?
答案 0 :(得分:2)
有更好的方法。
public static class Container
{
private static int variable;
}
使用您需要的信息保留静态类。
您还可以使用Singleton
public class Container
{
private static Container instance;
private int sampleVariable;
private Container() {}
public static Container getInstance()
{
if(instance == null)
instance = new Container();
return instance;
}
}
答案 1 :(得分:0)
您可以做的一件事是将空游戏对象指定为您正在描述的脚本的中心。在我的所有Unity项目中,我都有一个名为 ScriptHub 的空游戏对象,我在其上附加了与任何特定游戏对象无关的所有脚本。在这里,您可以跟踪任意数量的值,这些值都可以由场景中的其他脚本访问。