将运行时实例化的对象从一个场景加载到Unity中的另一个场景

时间:2019-01-13 01:06:40

标签: c# unity3d

我正在创建一个游戏,玩家在“设置”场景中创建对象(块),然后在计时器结束时,我希望将这些对象(包括其转换值)加载到新的场景中。我该如何将运行时创建的对象加载到新场景中?

1 个答案:

答案 0 :(得分:1)

DontDestroyOnLoad是实现此目标的一种有价值的方法。 您还可以执行以下操作:

创建一个名为“ Cross-Scene-Objects”的空对象,并向其中添加脚本,以使其不会在加载时销毁。然后,将所有对象简单地子化为该对象,并根据需要删除对象。

您还可以使CrossSceneObjects脚本成为单例类,并具有一些基本的AddObject和RemoveObject方法来处理将游戏对象放置在该对象下的情况。

如果只希望在某些场景中使用某些对象,则可以使用上面的方法,但如果希望在其中显示游戏对象,则可以添加一些进一步的逻辑来将游戏对象设置为活动状态。

我没有示例代码,但是如果这还不足以满足您的需要,我可以很高兴地进行编辑以提供代码示例:)我的风格是首先提供解决方案步骤,而不是代码来为您提供起点。