2017-02-04 20 views
0

現在、ゲームのUIをプログラミングしています。キープレスでシーンを呼び出す方法を理解しようとしています。この場合は、Escキーを押します。私は一般的にシーンを召喚する方法を知っていますが、キーボードからのボタンプレスを組み込むことは、私が立ち往生している場所です。C#を使用したUnity 3Dキーボードプレスを使用してシーンを呼び出す

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

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

あなたはUnityでどのようにボタンが押されたかを調べましたか? – Serlite

+0

更新機能でエスケープキー押下を確認し、シーンをロードしますか? 'if(Input.GetKey(KeyCode.Escape)){...ロードシーン};'複雑な部分はどれですか? – Programmer

+0

@Serlite私はしましたが、ユニティフォーラムで見つかったものはすべて私のためには機能しませんでした。そして、Googleに答えようとすると、時代遅れになったので、決定的なものになりました。 – user7514546

答えて

0

あなたはこれを探しています:

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

事は、このスクリプトは、シーン内のすべての時間使用可能である必要があります。それは永続的なものにするには、スクリプトにこれを追加する必要があります:あなたは

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

を使用することができますしかし、あなたはBuildSettingsに、あなたのシーンを追加する必要が

void Awake() 
{ 
    DontDestroyOnLoad(gameObject); 
} 
1

移動:[ファイル]> [リストに追加するシーンはあなたがで2つのシーンを持っている必要があり、単に

「をオープンシーンを追加」を押しすでに開いている場合は[設定](またはCtrl + Shift + Bを) を構築少なくとも1つを別のシーンからロードするか、同じシーンを再びロードすることができますが、これは状況によっては役に立ちます。

この状況で「エスケープ」を押すと、シーンを追加した後、

あなたのシーンは、(ここで、あなたの「loadSceneScript」)がオープンする必要があり、あなたのスクリプトは、あなたのシーンがロードされますゲームオブジェクト

に添付する必要があります。

関連する問題