Přepínání mezi scénami
Ověřovací prostředí
- Windows
-
- Systém Windows 11
- Editor jednoty
-
- 2020.3.25f1
- Vstupní systémový balíček
-
- 1.2.0
Předpoklady pro tento tip
Následující nastavení byla provedena předem jako předpoklad pro popis tohoto tipu.
Přečtěte si, jak přepínat mezi scénami
Scéna je takzvaná "scéna", ale Jednota používá slovo "scéna" tak, jak je, takže to vysvětlím výrazem scéna.
Scény se často přepínají mezi scénami ve hře. Pokud například spustíte hru z nabídky Start a spustí se akce, můžete si ji představit jako přepínač scény. Také akce otevření obrazovky nabídky během akce bude také přepínačem scény v závislosti na výrazu nabídky.
Tento druh přepínání scén musí být implementován v Unity a existuje mnoho způsobů, jak to udělat. Například ve hře by měla být pouze jedna "Scéna (v Unity)". Když se změní herní scéna, všechny objekty z předchozí scény jsou vyřazeny a potřebné objekty jsou generovány pro další scénu. Nicméně, zatímco tento přístup má tu výhodu, že poskytuje pouze jednu scénu, má nevýhodu v tom, že musí programově spravovat přechody objektů.
V tomto tipu bych chtěl implementovat metodu přípravy co nejvíce souborů "Scéna", kolik je scén a umístění potřebných objektů do scény předem pro přepínání scén. Přepínání mezi skutečnými scénami je velmi snadné, protože vše, co musíte udělat, je přepínat mezi soubory scén.
Příprava scény
Nejprve vytvořte normální projekt. Předpokládá se, že jste již připravili balíček vstupního systému a nakonfigurovali fotoaparát.
Tentokrát připravíme dva soubory scény a implementujeme operaci kliknutí na tlačítko v první scéně a přechod na druhou scénu.
Existující scéna SampleScene
by měla být pojmenována , takže změňte tuto hodnotu SampleScene1
na .
Dále klikněte pravým tlačítkem myši na prázdnou oblast projektu a vyberte "Scéna" z "Vytvořit". Můžete ji také přidat pomocí tlačítka + pod kartou projektu.
Bude přidán nový soubor scény, takže jej pojmenujte SampleScene2
.
SampleScene1
Poklepáním otevřete scénu a umístěte objekt tak, jak je znázorněno níže.
SampleScene2
Po kliknutí na tlačítko můžete přejít na , takže rozložení může být vhodné.
SampleScene2
Poklepáním otevřete scénu a umístěte objekt tak, jak je znázorněno níže.
Nezáleží na tom, co dáte, protože chcete vědět, co se změnilo.
Po vytvoření scény otevřete z nabídky "File > Build Settings".
Drop v scénách zahrnutých v SampleScene2
sestavení.
Po přidání zavřete nastavení sestavení, jak je znázorněno níže.
Proces přepínání scény
Přepínání scén se provádí skriptem, proto prosím vytvořte skript. Název je libovolný, ale v tomto případě SceneChange
je .
Skript vypadá takto:
using UnityEngine;
using UnityEngine.SceneManagement; // 追加
public class SceneChange : MonoBehaviour
{
<summary>ボタンをクリックしたときに呼ばれます。</summary>
public void OnClick()
{
// 指定したシーンを読み込み他のシーンは削除します
SceneManager.LoadScene("SampleScene2", LoadSceneMode.Single);
}
}
Obsah je velmi jednoduchý SceneManager.LoadScene
a mezi scénami můžete přepínat voláním metod.
Prvním argumentem je název scény, na kterou se má přepnout.
Pokud zadáte jako LoadSceneMode.Single
druhý argument, můžete při zavírání aktuální scény otevřít pouze určenou scénu.
Existuje také parametr nazvaný jednoduše přidat LoadSceneMode.Additive
scénu, ale v tomto článku to nebudu vysvětlovat.
Po uložení skriptu SampleScene1
jej otevřete a připojte k rozhraní . EventSystem
Může to být jakýkoli objekt, ke kterému se připojíte.
Nastavte OnClick
událost kliknutí tlačítka na připojený objekt, aby SceneChange
bylo možné metodu volat.
Zkuste spustit hru a zjistěte, zda se scéna po kliknutí na tlačítko změní.