unity3d 如何使“DontDestoryOnLoad”对象记住原始场景中的对象

bjp0bcyl  于 2022-11-25  发布在  其他
关注(0)|答案(1)|浏览(282)

我有一个游戏,其中音乐游戏对象开始在主菜单场景,它有两个组件滑块,我放置与拖放

玩家可以在场景中的设置画布上与这些滑块进行交互。当玩家改变场景时,音乐会因为DontDestroyOnLoad而继续播放,这很棒!但如果玩家返回主场景,播放音乐的DontDestroyOnLoad游戏对象会忘记

滑块和滑块不做任何事情,因为他们没有连接到音乐游戏对象与dontdestroy。任何方法,我可以得到这个周围?

lmvvr0a8

lmvvr0a81#

这是因为当音乐管理器所引用的滑块被破坏时。解决方案1:要快速解决这个问题,只需将这些滑块也设置为DontDestroyOnLoad。如果您不想显示滑块,只需创建两个游戏对象变量并将这些滑块放进去。然后使用gameobject.setactive(true/false)打开或关闭它。创建一个函数来触发每个场景的变化,在这个函数中,使用find gameobject with tag来帮助声音管理器定位滑块,并在编辑器中给予这些滑块gameobject一个标签,这样就可以很容易地找到它。在这种情况下,即使滑块被破坏了,声音管理器仍然可以引用新的滑块

相关问题