void OnMouseDown() {
SceneManager.LoadScene ("Scene2");
}
我尝试了所有可能的方法。发布的方法适用于我使用带碰撞器的GameObjects。相反,这次我在2D画布上使用按钮。它在这种情况下不起作用。
如何使用画布中的按钮加载新场景?我尝试了很多不同的东西。这应该很简单。
感谢您的任何建议。
答案 0 :(得分:0)
在这里(链接:Unity page)你可以在UnityGUI中找到如何在画布上使用Button的视频教程。它适用于Unity 4.6,但它真正适用于最新版本(5.3.1)。
这很简单。你可以使用公共方法制作脚本,例如
public void LoadScene2()
{
SceneManager.LoadScene ("Scene2");
}
将此脚本附加到某些GameObject,例如Controller。并在Button检查器中添加事件。
答案 1 :(得分:0)
在我看来,@PawełMarecki展示了更好的解决方案
我在我的项目中使用它。
好的,所以你只需创建一个名为ButtonManager
的脚本,在其中你可以制作一个像这样的方法
public void ChangeToScene(string sceneName)
{
Application.LoadLevel(sceneName);
OR
SceneManager.LoadScene(sceneName);
}
现在你有了画布按钮,你将选择它并寻找“事件触发器” (我从谷歌得到这个图像帮助)添加一个新的鼠标按下事件。 在场景上创建一个空的GameObject,将其命名为“ButtonManager”并将其拖到事件框中。
现在您需要单击该dropDown列表并找到“ChangeToScene”方法。 您将看到下方显示一个编辑器字段,键入您想要的场景名称并点击播放:P
这样,当您想要更改场景时,您将始终使用此脚本。 您可以添加其他方法并添加功能,但美妙的部分是每次场景名称更改时都不需要创建方法。