အဆင့်တစ်ခုပြီးမြောက်ရန်သင်ခလုတ်တစ်ခုလိုအပ်သည်။ ဤအတွက် Cube တစ်ခုကိုဖန်တီးပြီးလိုအပ်သလိုအတိုင်းအဆပြုလုပ်ပါ။
Y ဝင်ရိုးကိုရွေးပြီး cube နှင့် isometric view သို့ပြောင်းပါ။ သင်၏ cuboid ကိုအဆုံးသို့ (သို့) အဆင့်အဆုံးသို့ဆွဲယူပါ။
ဥပမာအားဖြင့်၊ ၎င်းကို End ဟုတံဆိပ်တပ်ပါ။ ဂိမ်းအတွင်း trigger ကိုမမြင်စေလိုသောကြောင့်၊ mesh renderer ကိုပိတ်ထားပါ။ မှာ Collider “is Trigger” ကို အသက်သွင်းရပါမည်။
သင်အကွက်ကိုမြင်နိုင်ရန်စစ်ဆေးရေး ၀ င်းဒိုးတွင်အရောင်သင်္ကေတတစ်ခုကိုရွေးပါ။
အိုင်ကွန်ကိုမမြင်ရလျှင် Unity ရှိ gizmos ကိုဖွင့်ပြီး slider များနှင့် 3D သင်္ကေတများကိုသက်ဝင်စေပြီး slider ကိုရွှေ့ပါ။ ထို့နောက်၎င်းသည်မမြင်ရလျှင်ပင်သင်၏ခလုတ်ကိုသင်မှတ်မိလိမ့်မည်။
EndTrigger ဟုခေါ်သော script တစ်ခုကိုဖန်တီးပါ။
ခလုတ်သည်အတူရှိသည်
void OnTriggerEnter () ကိုတွေ့ရှိသည်
GameManager ကိုရည်ညွှန်းရန်လိုအပ်သည်။
မင်းက variable တစ်ခုဖန်တီးပြီး public gameManager gameManager;
GameManager ကို ကိုးကား၍ GameManager ၌လုပ်ဆောင်ချက်အသစ်တစ်ခုလိုအပ်သည်။ ထို့ကြောင့်သင်ယခု GameManager script ကိုဖွင့်လိုက်သည်။
၎င်းတွင်သင် variable အသစ်တစ်ခုကိုဖန်တီးသည်။
လူထုကွက်လပ် CompleteLevel ()
ယခုသင်သည် GameManager ၌လုပ်ဆောင်ချက်အသစ်တစ်ခုကိုဖန်တီးလိုက်ပြီ။
ယခုဤလုပ်ဆောင်ချက်ကို EndTrigger script တွင်ခေါ်နိုင်သည်။
gameManager.CompleteLevel ();
TriggerScript သည်ယခုပုံနှင့်တူသည်။
အခုဆိုရင် GameManager ကို script ရဲ့ free space ထဲကိုဆွဲထည့်လိုက်ပါ။
မက်ဆေ့ခ်ျသည်ယခုအချိန်တွင် console ၌သာပေါ်လာသောကြောင့်ကျွန်ုပ်တို့သည်ကစားသမားအတွက် UI တစ်ခုဖန်တီးရန်လိုသည်။
ထို့ကြောင့် Canvas တွင် UI panel တစ်ခုကိုဖန်တီးပါ။ 2D mode သို့ပြောင်းပြီး၎င်းကို F ဖြင့်အာရုံစိုက်ပါ။ UI ကိုမြင်နိုင်စေရန်နောက်ခံပုံကိုဖယ်ရှားပါ။
LevelComplete လို့နာမည်ပေးလိုက်ပါ။ ညာကလစ်နှင့် UI ဖြင့်စာသားထည့်ပါ။
သင်၏စာအတွက်နယ်နိမိတ်ကိုညှိပါ။ နောက်ဆုံးအနေနဲ့အဲဒါကိုဗဟိုထားပါ။ ဖောင့်ပြောင်းပါ။ စာလုံးအရွယ်အစားကို z သို့တိုးပါ။ B. ၁၀၀
စာသားကို Level သို့ပြောင်းပါ။ TextObject ကိုအဆင့်တစ်ခုအနေနဲ့အမည်တပ်ပါ။ Object ကိုပွားပြီးအဲဒါကို Complete လို့နာမည်ပေးပါ။ ဒုတိယဖောင့်ကိုလိုအပ်သလိုသတ်မှတ်ပါ။ အရာဝတ္ထုနှစ်ခုကိုတစ်ပြိုင်နက်တည်းအမှတ်အသားပြုလျှင်၎င်းတို့ကိုအတူတကွရွှေ့နိုင်သည်။
အဆုံးမှာ "Level Complete" ကို deactivate လုပ်ပါ။
တစ်ဖန် GameManager တွင်ရည်ညွှန်းချက်လိုအပ်သည်။
မင်းဒါကို variable အသစ်တစ်ခုနဲ့လုပ်နိုင်တယ်။
အများသုံး GameObject completeLevelUI;
ထို့ပြင်သင်ယခုအောက်ရှိ function ကိုထည့်ပါ
လူထုကွက်လပ် CompleteLevel ()
{
completeLevelUI.SetActive (အမှန်);
၎င်းသည် function ကိုသက်ဝင်စေသည်။
ဇာတ်ညွှန်းသည်ယခုကဲ့သို့ဖြစ်သည်။
ယခု LevelComplete ကို GameManager ထဲသို့ဆွဲထည့်ပါ။
သင်အဆင့်ပြီးဆုံးသောအခါ Level Complete ပေါ်လာလိမ့်မည်။
နောက်တစ်ခုကငါတို့ကာတွန်းတစ်ခုထည့်မယ်။ ပထမ ဦး စွာ UI ကိုပြန်လည်အသက်သွင်းပါ။ ယခုသင်သည် animation window လိုအပ်သည်။
ကာတွန်းအတွက်ဖိုဒါတစ်ခုဖန်တီးပါ။ ကာတွန်းအသစ်ကို "LevelComplete" ဟုအမည်ပေးပါ။ ယခုသင်စီမံကိန်းဖိုင်တွဲတွင်ပိုင်ဆိုင်မှုနှစ်ခုကိုသင်တွေ့လိမ့်မည်။
ပထမတစ်ခုသည်ကာတွန်းများကိုယ်တိုင်ဖြစ်သည်။ ကာတွန်းသည်တစ်ကြိမ်သာကစားသင့်သောကြောင့်ကွင်းပိတ်ပါ။
ဒုတိယသည် animator controller တွင်ပေါ်လာသော animation controller ဖြစ်သည်။ animator သည်ရှုပ်ထွေးသောကာတွန်းများကို စုစည်း၍ ချိတ်ဆက်ရန်သုံးနိုင်သည်။
LevelComplete animation ကိုလိမ္မော်ရောင်ဖြင့်မီးမောင်းထိုးပြထားသည်။ ဆိုလိုသည်မှာ၎င်းသည်အဆင့်ပြီးဆုံးသောအခါပထမဆုံးကာတွန်းအဖြစ်ကစားလိမ့်မည်ဟုဆိုလိုသည်။
ကာတွန်းဝင်းဒိုးသို့ပြန်သွားပါ။ မှတ်တမ်းတင်စနစ် (သို့) အသံသွင်းမှုပုံစံကိုအသက်သွင်းပါကအရာဝတ္ထုသို့ပြောင်းလဲမှုတိုင်းကို keyframes အဖြစ်မှတ်တမ်းတင်သည်။
ဥပမာ၊ ၁ း ၀၀ ကိုရွေးပြီး alpha mode ကိုလျှော့ပါ။ keyframe တစ်ခုကိုအစတွင်အလိုအလျောက်ဖန်တီးခဲ့ပြီး alpha mode သည်ပြီးပြည့်စုံနေဆဲဖြစ်သည်။ keyframes များ၏တည်နေရာကိုပြောင်းပါ။ ရလဒ်အနေနှင့် alpha mode အောက်တွင်အဆင့်ပြည့်လာသည်။ ၀:၅၀ ခန့်သို့သွားပြီး UI မှစာလုံးအရောင်များအတွက် alpha mode ကိုလျှော့ပါ။ သက်ဆိုင်ရာ keyframes များကိုရှေ့ရှိ key များနှင့်လဲလှယ်ပါ။
LevelComplete UI ကိုပြန်ပိတ်ပါ။ အဆင့်၏အဆုံး၌ UI သည်ယခုအဆင့်ပြီးမြောက်မှုကိုပြသသင့်သည်။
စက္ကန့်အနည်းငယ်ကြာပြီးနောက်စက္ကန့်အနည်းငယ်အကြာတွင်အဆင့်သစ်ကိုယခုတင်ပေးသင့်သည်။ ဒီလိုလုပ်ဖို့ ၂ စက္ကန့်အမှတ်အသားမတိုင်ခင်အဖြစ်အပျက်တစ်ခုကိုထည့်ပါ။
ကာတွန်းဖြစ်ရပ်သည်သင့်အား function တစ်ခုကိုရွေးချယ်ရန်ခွင့်ပြုသည်။
LevelComplete object အတွက် script တစ်ခုလိုတယ်။ ဤ script သည်အဆင့်အသစ်တစ်ခုကိုတင်ပေးသည်။ LevelComplete ၏အစိတ်အပိုင်းသစ်ကိုအမည်သတ်မှတ်ပါ။
ဇာတ်ညွှန်းအသစ်တွင်ထည့်ပါ။
အများသုံး LoadNextLevel ()
တစ်ဦး။
ယခုသင် LoadNextLevel ကို function တစ်ခုအဖြစ်ရွေးချယ်နိုင်သည်။
ကာတွန်းကားသည်ဤနေရာသို့ရောက်သောအခါမြင်ကွင်းသစ်ကိုတင်ပေးလိမ့်မည်။
ထိုအခါမြင်ကွင်းသည်ပြောင်းသင့်သည်။
ဤအရာအတွက် scene manager လိုအပ်သည်။
UnityEngine.SceneManagement ကိုအသုံးပြု။
လူထုပျက်ပြယ်မှုအောက်တွင်
SceneManager.LoadScene ()
ယခုသက်ဆိုင်ရာမြင်ကွင်းကိုသာတင်ပေးသင့်သည်။ သို့သော်တင်ပေးရမည့်မြင်ကွင်းသည်အဆင့်ပေါ်မူတည်သည်။ ထို့ကြောင့် BuildIndex ကိုတင်ရန်သုံးသည်။
Unity ကသင့်ရဲ့မြင်ကွင်းတွေကို File -> Build Settings မှာပြပါတယ်။ မင်းသူတို့ကိုသူတို့ကိုဆွဲထည့်ဖို့လိုကောင်းလိုလိမ့်မယ်။ အဆုံး၌တည်ဆောက်မှုအညွှန်းကိုပြသည်။ စည်းလုံးမှုသည်တည်ဆောက်မှုအညွှန်းသို့မဟုတ်လက်ရှိမြင်ကွင်း + ၁ အရမြင်ကွင်းကိုတင်သင့်သည်။
အများသုံးပျက်ပြယ်သော LoadNextLevel အောက်တွင်လာသည်။
SceneManager.LoadScene (SceneManager.GetActiveScene () ။ BuildIndex + 1);
ဇာတ်ညွှန်းကဒီလိုပါ။
နောက်ပိုင်းမှာမြင်ကွင်းအသစ်တစ်ခုအမြဲရှိနေတာသေချာရင် Unity ကအမှားတစ်ခုကိုပြလိမ့်မယ်။
မူလက 2020-06-10 18:11:00 တင်ခဲ့သည်။