تحميل مشهد
جزء من قسم إنشاء ألعاب حقيقية في رحلة Unity على Coddy. الدرس 17 من 60.
تنقسم لعبة Unity إلى مشاهد: قائمة، وكل مستوى، وشاشة شكر. كل مشهد ملف مستقل له كائناته الخاصة، ويبدّل البرنامج النصي إلى مشهد آخر باستخدام SceneManager.LoadScene، من مساحة الأسماء UnityEngine.SceneManagement. يفتح زر «العب» في هذه القائمة، الموصول عبر نافذة Inspector، مستوى الغابة:
using UnityEngine;
using UnityEngine.SceneManagement;
public class MainMenu : MonoBehaviour
{
public void Play()
{
SceneManager.LoadScene("Forest");
}
}لا يستطيع Unity تحميل سوى المشاهد الموجودة في قائمة مشاهد الإصدار: في Unity 6، تجدها ضمن File > Build Profiles، تحت Scene List (تُسمى النافذة Build Settings في الإصدارات الأقدم). يجب أن يطابق الاسم اسم ملف المشهد تمامًا. إذا كان المشهد غير موجود في القائمة، أو كُتب اسمه خطأً مثل "Forrest"، فلن يُحمَّل شيء، وستعرض وحدة التحكم خطأً يبدأ بـ Scene 'Forrest' couldn't be loaded ويذكر أن المشهد لم يُضَف إلى الإصدار، وستبقى اللعبة في القائمة.
التبديل ليس فوريًا. يُنفَّذ بقية الإطار الحالي أولًا، لذا تستمر الأسطر التي تأتي بعد LoadScene في التنفيذ؛ وفي بداية الإطار التالي، يحذف Unity كل كائنات المشهد القديم وينشئ المشهد الجديد، وتبدأ برامجه النصية من جديد باستخدام Awake وStart.
التحدي
سهلاجعل كل بوابة تحمّل المشهد الذي يسمّيه sceneName.
- أضف
using UnityEngine.SceneManagement;في أعلىPortal.cs. - اكتب
void OnTriggerEnter(Collider other): عندما يتحققother.CompareTag("Player")، استدعِSceneManager.LoadScene(sceneName);.
اضغط «العب» وامشِ إلى كل بوابة: يتم تحميل Desert ثم Hub ثم Glacier. بعد ذلك اضغط «تحقق».
جرّب بنفسك
using UnityEngine;
public class Portal : MonoBehaviour
{
public string sceneName;
// عندما يدخل اللاعب، حمّل المشهد المسمّى sceneName
}
جميع دروس إنشاء ألعاب حقيقية
4المشاهد والمستويات
تحميل مشهدإعادة تشغيل المستوىالمستوى التاليالاحتفاظ بالبيانات بين المشاهدمراجعة: اختيار المستوى10مشروع: لعبة منصات ثلاثية الأبعاد
المسارمنصات متحركة2الأزرار والشاشات
الأزرار وonClickالتعبيرات Lambdaالربط في Inspectorتشغيل اللوحات وإيقافهاأشرطة الصحةمراجعة: متجر الترقيات5الحفظ باستخدام PlayerPrefs
حفظ رقمالتحميل بقيمة افتراضيةأعلى نتيجةحفظ الإعداداتمراجعة: العملات في البنك6مشروع: عدّاء لا نهاية له
ثلاثة مساراتعقبات أمامكتدرّب بنفسك: Playground لـ Unity