إذا أردت أن تتعلّم Unity من الصفر في 2026، فإن أسرع طريقة للحفاظ على حماسك هي أن تبني شيئًا قابلًا للّعب في أسبوعك الأول، لا أن تحفظ المحرّر بالكامل. هذه الخارطة تأخذك من تثبيت Unity Hub حتى تصدير أول لعبة لك بصيغة WebGL تشاركها برابط واحد.
ثبّت Unity واقرأ المحرّر كأنه خريطة
لا تنزّل المحرّر مباشرة. نزّل Unity Hub أولًا، فهو يدير إصدارات المحرّك والتراخيص وكل مشروع تنشئه.
- من داخل الـHub ثبّت أحدث إصدار LTS (الدعم طويل الأمد)، لا النسخة التجريبية الأحدث. إصدار LTS يقايض المزايا الجديدة بالاستقرار، وهذا بالضبط ما يحتاجه المبتدئ.
- أثناء التثبيت فعّل وحدة WebGL Build Support، فستحتاجها لاحقًا للنشر في المتصفح، وإضافتها بعد ذلك مزعجة.
- أنشئ مشروع 2D لأول بناء لك، لأنه يزيل طبقة كاملة من التعقيد (الكاميرات، الإضاءة، فيزياء 3D) ويترك تركيزك على المنطق.
ثم تعلّم خمس نوافذ وتجاهل الباقي مؤقتًا: Scene (حيث ترتّب العناصر)، وGame (ما يراه اللاعب)، وHierarchy (قائمة كل ما في المشهد)، وInspector (خصائص العنصر المحدّد)، وProject (ملفاتك وأصولك). تسعون بالمئة من عملك المبكر يجري داخل هذه الخمس.
أساسيات C# التي تحتاجها فعلًا أولًا
تستخدم Unity لغة C#، لكنك لا تحتاج اللغة كاملة لتُخرج لعبة صغيرة. ركّز على هذا الأساس:
- المتغيّرات وأنواعها (
intوfloatوboolوstringوVector3). - الدوال، وجملة
if/else، وحلقاتforوwhile. - الأصناف (Classes)، وتحديدًا MonoBehaviour، الصنف الأساس الذي يرتبط به كل سكربت مع كائن (GameObject).
- دالتا دورة الحياة:
Start()تعمل مرة واحدة عند ظهور الكائن، وUpdate()تعمل في كل إطار. Time.deltaTimeكي تكون الحركة سلسة بغضّ النظر عن معدّل الإطارات.[SerializeField]التي تُظهر متغيّرًا خاصًا داخل الـInspector لتضبطه دون تعديل الكود.
أول سكربت حقيقي لا يتجاوز عشرة أسطر:
```csharp public class PlayerMove : MonoBehaviour { [SerializeField] private float speed = 5f;
void Update() { float x = Input.GetAxis("Horizontal"); float y = Input.GetAxis("Vertical"); transform.Translate(new Vector3(x, y, 0) * speed * Time.deltaTime); } } ```
اربطه بشخصية (Sprite) وستحصل فورًا على شخصية تتحرّك بتحكّمك. هذا الفوز الصغير أهمّ من أي نظرية.
ابنِ أول حلقة لعب
اللعبة حلقة: اللاعب يتصرّف، والعالم يستجيب، والنتيجة تتغيّر، وفي النهاية تفوز أو تخسر. ابنِ أصغر نسخة ممكنة، لعبة جمع من منظور علوي:
- أنشئ كائن Player من Sprite واربط به سكربت الحركة السابق.
- أضف
Rigidbody2D(اجعل قيمة الجاذبية 0 للمنظور العلوي) وCollider2D. - أنشئ Pickup له
Collider2Dمع تفعيل خيار Is Trigger. - على اللاعب، عالج
OnTriggerEnter2Dلاكتشاف القطعة، وزد النتيجة، ثم احذفها. - اعرض النتيجة عبر عنصر Text في الواجهة تُحدّثه من الكود.
- أضف شرط فوز (جمع كل القطع) وإعادة تشغيل عبر
SceneManager.LoadScene.
هذه لعبة كاملة وقابلة للإنهاء. أنجزها قبل أن تلمس أي شيء أعقد.
أخطاء المبتدئين التي تقتل المشاريع بصمت
- جحيم الدروس: مشاهدة فيديوهات بلا نهاية دون بناء. اتبع درسًا واحدًا ثم أعد بناءه من ذاكرتك، فهناك يحدث التعلّم.
- تضخّم النطاق: مشروعك الأول ليس لعبة عالم مفتوح، بل حلقة مدّتها 60 ثانية.
- غياب إدارة الإصدارات: ثبّت Git من اليوم الأول. مشهدٌ معطوب لا يمكن التراجع عنه أنهى مشاريع مبتدئين أكثر من أي خطأ برمجي.
- مصارعة الفيزياء: لا تضبط
transform.positionكل إطار على كائن يملك Rigidbody، بل استخدم القوى أوRigidbody2D.MovePosition. - تجاهل الـPrefabs: حوّل أي عنصر تكرّره إلى Prefab كي يحدّث تعديلٌ واحد كل نسخه.
صدّرها وانشرها كلعبة متصفح WebGL
هذه الخطوة التي تتخطّاها أغلب الدروس، وهي التي تحوّل الهواية إلى معرض أعمال. اذهب إلى File > Build Settings، اختر WebGL، ثم اضغط Build. البناء الأول بطيء لأن Unity تُصرّف لعبتك لتعمل في المتصفح بلا إضافات وبلا تنزيل.
بعد اكتمال البناء، انشرها في مكان يستطيع الناس النقر واللعب فيه فعلًا. على The Gaming Nest ترفع بناء WebGL فيصبح لعبة متصفح فورية برابط قابل للمشاركة، بلا متجر وبلا تثبيت. راجع دليل التصدير خطوة بخطوة لمعرفة الإعدادات التي تُبقي زمن التحميل منخفضًا.
خطة واقعية من 6 أسابيع
- الأسبوعان 1–2: المحرّر، وأساسيات C#، وتحريك Sprite.
- الأسبوعان 3–4: حلقة الجمع أعلاه، والواجهة، وإعادة التشغيل.
- الأسبوع 5: الصقل — صوت، شاشة عنوان، عدوّ بسيط.
- الأسبوع 6: بناء WebGL، والنشر، والحصول على ملاحظات من لاعبين حقيقيين.
وإن كنت لا تزال تقرّر إن كانت Unity هي المحرّك المناسب لك أصلًا، فقارن بصدق في Unity مقابل Godot للمبتدئين، واطّلع على وجهة هذه المهارات في دليل مسار مطوّر الألعاب.
جاهز لتُرى؟ أنهِ تلك الحلقة الأولى، صدّرها إلى WebGL، وانشرها على The Gaming Nest ليلعبها لاعبون في كل العالم العربي بنقرة واحدة، ثم ادخل تحدّي صناعة ألعاب (Game Jam) لتبني لعبتك التالية تحت ضغط الوقت.