Unity 3D使用C#使用键盘按下来调用场景

时间:2017-02-04 06:38:58

标签: c# unity3d

我正在编写一个游戏的用户界面,我正试图弄清楚如何用按键来调用一个场景。在这种情况下,Escape键。我知道如何召唤一般场景但是从键盘上按下按钮是我被困住的地方。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class pauseMenu : MonoBehaviour 
{
    public void pausemenu()
    {
        Application.LoadLevel("menuPause");
    }
}

2 个答案:

答案 0 :(得分:1)

您可以使用

void Update()
{
    if(Input.GetKeyDown(Keycode.Escape))
    {
     Application.LoadLevel("YourSceneNameHere");
    }
}

但您需要将场景添加到 BuildSettings

Go:文件>构建设置(或Ctrl + Shift + B) 如果要添加到列表的场景已打开,只需按“添加打开场景”

您至少需要有2个场景才能相互加载,或者您可以在其中再次加载相同的场景,这在某些情况下非常有用。

添加所需的场景后,在这种情况下按“Escape”;

你的场景(你的“loadSceneScript”)需要打开,你的脚本需要附加到游戏对象

您的场景将被加载。

答案 1 :(得分:0)

你正在寻找这个:

void FixedUpdate()
{
     if(Input.GetKey(KeyCode.Escape))
     {
          //load the scene
     }
}

事情是这个脚本必须始终在场景中可用。为了使其持久化,您还必须将其添加到脚本中:

void Awake()
{
     DontDestroyOnLoad(gameObject);
}