所以我产生了一个PauseMenu预制件,当玩家点击" p"时,该预制件会被实例化。当玩家重新开始游戏时,我希望菜单消失。然而,使用Destroy(预制)只是破坏了项目的实际预制件,而不是从游戏中移除预制件......
有没有人对如何根据用户输入制作暂停屏幕有任何想法?
答案 0 :(得分:2)
不要破坏UI对象,因为您可能在游戏后期需要它。 只是在你不必要的时候不要表现出来。
喜欢,
uiObject.SetActive(false); // to hide it, technically disable it.
uiObject.SetActive(true); // to show the object
答案 1 :(得分:0)
更好的方法是使用SceneManager
GameObject
。这是可能的GameManager
对象中的内容。这两个将在你的游戏中整个运行。 SceneManager
可以处理诸如音乐播放,声音效果,敌人管理和玩家管理等事情。将功能和处理分成多个文件会让人感到困惑,但从长远来看,在设置游戏时,需要计划一些遗产。非常适合在事后重复使用项目。我仍然会参加我制作的旧游戏并复制课程和预制件,其中最常用的是我的SceneManager
和GameManager
,只是为了简单起见。