Siirtyminen näkymien välillä
Varmennusympäristö
- Windows
-
- Windows 11
- Unity-editori
-
- 2020.3.25F1
- Syöttöjärjestelmän paketti
-
- 1.2.0
Tämän vinkin edellytykset
Seuraavat asetukset on tehty etukäteen tämän vinkin kuvauksen lähtökohtana.
Lue, miten voit vaihtaa tilanteiden välillä
Kohtaus on niin sanottu "kohtaus", mutta Unity käyttää sanaa "kohtaus" sellaisenaan, joten selitän sen ilmaisukohtauksella.
Kohtaukset vaihtuvat usein pelin kohtausten välillä. Jos esimerkiksi käynnistät pelin Käynnistä-valikosta ja toiminto alkaa, voit ajatella sitä kohtauksen vaihtona. Myös valikkonäytön avaaminen toiminnon aikana on myös kohtauksen vaihto valikkolausekkeesta riippuen.
Tällainen kohtauksen vaihto on toteutettava Unityssa, ja siihen on monia tapoja. Esimerkiksi pelissä pitäisi olla vain yksi "kohtaus (yhtenäisyydessä)". Kun pelikohtaus muuttuu, kaikki edellisen kohtauksen esineet hylätään ja seuraavaan kohtaukseen tarvittavat objektit luodaan. Vaikka tällä lähestymistavalla on se etu, että se tarjoaa vain yhden kohtauksen, sillä on se haittapuoli, että sen on hallittava objektisiirtymiä ohjelmallisesti.
Tässä vinkissä haluaisin toteuttaa menetelmän valmistaa niin monta "Scene" -tiedostoa kuin kohtauksia on ja sijoittaa tarvittavat esineet kohtaukseen etukäteen kohtausten vaihtamiseksi. Vaihtaminen todellisten kohtausten välillä on erittäin helppoa, koska sinun tarvitsee vain vaihtaa Scene-tiedostojen välillä.
Kohtauksen valmistelu
Luo ensin normaali projekti. Oletetaan, että olet jo valmistellut syöttöjärjestelmäpaketin ja määrittänyt kameran.
Tällä kertaa valmistelemme kaksi kohtaustiedostoa ja toteutamme toiminnon napsauttamalla painiketta ensimmäisessä kohtauksessa ja siirtymällä toiseen kohtaukseen.
Nykyisen SampleScene
näkymän nimen tulisi olla , joten muuta tämä SampleScene1
arvoksi .
Napsauta seuraavaksi hiiren kakkospainikkeella projektin tyhjää aluetta ja valitse "Kohtaus" kohdasta "Luo". Voit lisätä sen myös projektivälilehden alla olevasta +-painikkeesta.
Uusi kohtaustiedosto lisätään, joten nimeä SampleScene2
se .
SampleScene1
Avaa näkymä kaksoisosoittamalla ja aseta objekti alla esitetyllä tavalla.
Kun napsautat SampleScene2
painiketta, voit siirtyä -kohtaan, jotta asettelu voi olla sopiva.
SampleScene2
Avaa näkymä kaksoisosoittamalla ja aseta objekti alla esitetyllä tavalla.
Sillä ei ole väliä, mitä laitat, koska haluat vain tietää, mikä on muuttunut.
Kun olet luonut kohtauksen, avaa valikosta "File > Build Settings".
Pudota koontiversioon sisältyviä SampleScene2
kohtauksia.
Sulje koontiversion asetukset, kun ne on lisätty alla olevan kuvan mukaisesti.
Kohtauksen vaihtoprosessi
Kohtauksen vaihto tapahtuu skriptillä, joten luo skripti. Nimi on mielivaltainen, mutta tässä tapauksessa SceneChange
se on .
Skripti näyttää tältä:
using UnityEngine;
using UnityEngine.SceneManagement; // 追加
public class SceneChange : MonoBehaviour
{
<summary>ボタンをクリックしたときに呼ばれます。</summary>
public void OnClick()
{
// 指定したシーンを読み込み他のシーンは削除します
SceneManager.LoadScene("SampleScene2", LoadSceneMode.Single);
}
}
Sisältö on hyvin yksinkertaista SceneManager.LoadScene
ja voit vaihtaa kohtausten välillä kutsumalla menetelmiä.
Ensimmäinen argumentti on sen kohtauksen nimi, johon vaihdetaan.
Jos määrität LoadSceneMode.Single
toiseksi argumentiksi, voit avata vain määritetyn näkymän ja sulkea nykyisen näkymän.
On myös parametri nimeltä yksinkertaisesti lisää LoadSceneMode.Additive
kohtaus, mutta en selitä sitä tässä artikkelissa.
Kun olet tallentanut komentosarjan, SampleScene1
avaa se ja liitä se . EventSystem
Se voi olla mikä tahansa esine, johon kiinnität.
Määritä OnClick
painikkeen napsautustapahtumaksi objekti, johon on liitetty menetelmä, SceneChange
jotta menetelmää voidaan kutsua.
Yritä suorittaa peli ja katso, muuttuuko kohtaus painikkeen napsauttamisen jälkeen.