Preklapljanje med prizori

Stran posodobljena :
Datum ustvarjanja strani :

Okolje za preverjanje

Windows
  • Windows 11
Urejevalnik Unity
  • 2020.3.25F1
Paket vhodnega sistema
  • 1.2.0

Predpogoji za ta nasvet

Naslednje nastavitve so bile vnaprej narejene kot premisa za opis tega nasveta.

Preberite, kako preklapljate med prizori

Prizor je tako imenovani "prizor", vendar Unity uporablja besedo "prizor" takšen, kot je, zato ga bom razložil z izraznim prizorom.

Prizori pogosto preklapljajo med prizori v igri. Če na primer zaženete igro iz začetnega menija in se dejanje začne, si jo lahko predstavljate kot stikalo za prizor. Dejanje odpiranja zaslona menija med dejanjem bo tudi stikalo prizora, odvisno od izraza menija.

Tovrstno preklapljanje prizorov je treba izvajati v Unityju in obstaja veliko načinov za to. Na primer, v igri bi moral biti samo en "prizor (v enotnosti)". Ko se prizor igre spremeni, se zavržejo vsi predmeti iz prejšnjega prizora in ustvarijo potrebni predmeti za naslednji prizor. Čeprav ima ta pristop prednost, da zagotavlja samo en prizor, ima pomanjkljivost, da mora programsko upravljati prehode objektov.

V tem nasvetu bi rad uporabil metodo priprave toliko "scenskih" datotek, kot so prizori, in vnaprej postavil potrebne predmete v sceno za preklapljanje prizorov. Preklapljanje med dejanskimi prizori je zelo enostavno, saj morate le preklapljati med datotekami Scene.

Priprava prizora

Najprej ustvarite običajen projekt. Predpostavlja se, da ste že pripravili paket vhodnega sistema in konfigurirali fotoaparat.

Tokrat bomo pripravili dve scenski datoteki in implementirali operacijo klika na gumb v prvem prizoru in prehoda na drugo sceno.

Obstoječi SampleScene prizor je treba poimenovati , zato spremenite to SampleScene1 v .

Nato z desno miškino tipko kliknite prazno območje projekta in v razdelku »Ustvari« izberite »Prizor«. Dodate ga lahko tudi z gumba + pod zavihkom projekta.

Dodana bo nova datoteka prizora, zato jo poimenujte SampleScene2 .

SampleScene1 Dvokliknite, da odprete prizor in postavite predmet, kot je prikazano spodaj. SampleScene2 Ko kliknete gumb, lahko preklopite na , tako da je postavitev lahko ustrezna.

SampleScene2 Dvokliknite, da odprete prizor in postavite predmet, kot je prikazano spodaj. Ni pomembno, kaj ste dali, ker želite vedeti, kaj se je spremenilo.

Ko ustvarite prizor, v meniju odprite »Nastavitve datoteke > gradnje«.

Padec prizorov, vključenih v SampleScene2 gradnjo.

Ko jih dodate, zaprite nastavitve gradnje, kot je prikazano spodaj.

Postopek preklapljanja med prizori

Preklapljanje med prizori poteka s skriptom, zato ustvarite skript. Ime je poljubno, vendar je v tem primeru SceneChange .

Scenarij izgleda takole:

using UnityEngine;
using UnityEngine.SceneManagement;  // 追加

public class SceneChange : MonoBehaviour
{
  /// <summary>ボタンをクリックしたときに呼ばれます。</summary>
  public void OnClick()
  {
    // 指定したシーンを読み込み他のシーンは削除します
    SceneManager.LoadScene("SampleScene2", LoadSceneMode.Single);
  }
}

Vsebina je zelo preprosta SceneManager.LoadScene in med prizori lahko preklapljate s klicnimi metodami.

Prvi argument je ime prizora, na katerega lahko preklopite.

Če določite kot LoadSceneMode.Single drugi argument, lahko med zapiranjem trenutnega prizora odprete le navedeni prizor. Obstaja tudi parameter, imenovan preprosto dodaj LoadSceneMode.Additive prizor, vendar ga v tem članku ne bom razložil.

Ko shranite skript SampleScene1 , ga odprite in priložite . EventSystem Lahko je kateri koli predmet, na katerega se pritrdite.

Nastavite OnClick dogodek klika gumba na predmet, ki je priložen, tako da lahko pokličete metodoSceneChange.

Poskusite zagnati igro in preverite, ali se prizor spremeni, ko kliknete gumb.