🎮 كورس احتراف Unity من الصفر 📌 الدرس 5: تحريك اللاعب باستخدام الكيبورد داخل Unity
🎮 كورس احتراف Unity من الصفر 📌 الدرس 5: تحريك اللاعب باستخدام الكيبورد داخل Unity.

في الدرس السابق تعلمنا كيف نجعل العنصر يتحرك تلقائيًا باستخدام كود بسيط بلغة C#. كانت تلك أول خطوة حقيقية لفهم كيف تعمل الألعاب من الداخل، لكن ما زال هناك شيء مهم ناقص…
اللاعب لا يستطيع التحكم في العنصر بنفسه.
وهنا تبدأ الألعاب في التحول من مجرد تجربة بسيطة إلى شيء تفاعلي حقيقي.
في هذا الدرس سنتعلم كيف نجعل اللاعب يتحكم في العنصر باستخدام الكيبورد، مثل معظم الألعاب التي نلعبها يوميًا.
🎮 فكرة الحركة داخل الألعاب
أي لعبة تقريبًا تعتمد على فكرة أساسية جدًا:
- اللاعب يضغط زر
- اللعبة تستقبل الأمر
- الشخصية تتحرك أو تنفذ حركة معينة
هذه العملية تحدث في أجزاء صغيرة جدًا من الثانية، لكنها أساس أي نظام تحكم داخل الألعاب.
داخل Unity نستطيع قراءة ضغطات الكيبورد باستخدام أوامر جاهزة توفرها لنا لغة C#.
🚀 تعديل الكود
سنقوم بتعديل السكريبت الذي أنشأناه في الدرس السابق، واستبداله بالكود التالي:
using UnityEngine;
public class PlayerMovement : MonoBehaviour
{
public float speed = 5f;
void Update()
{
float moveX = Input.GetAxis("Horizontal");
float moveZ = Input.GetAxis("Vertical");
Vector3 movement = new Vector3(moveX, 0, moveZ);
transform.Translate(movement * speed * Time.deltaTime);
}
}
💡 ماذا يفعل هذا الكود؟
هذا الكود يجعل العنصر يتحرك عند الضغط على أزرار:
- W و S
- أو الأسهم للأمام والخلف
وكذلك:
- A و D
- أو الأسهم يمين ويسار
دعنا نفهم أهم الأجزاء:
Input.GetAxis
تستخدم لقراءة ضغطات الكيبورد.
Horizontal
مسؤولة عن الحركة يمين ويسار.
Vertical
مسؤولة عن الحركة للأمام والخلف.
speed
تحدد سرعة اللاعب ويمكن تعديلها بسهولة من داخل Unity.
🔥 تجربة الحركة لأول مرة
بعد حفظ الكود وربطه بالعنصر، اضغط زر التشغيل ▶️ ثم جرّب استخدام الكيبورد.
في هذه اللحظة ستلاحظ فرقًا ضخمًا جدًا مقارنة بالدروس السابقة…
لأن العنصر لم يعد مجرد شكل ثابت أو جسم يتحرك تلقائيًا، بل أصبح “شخصية” تستجيب لتحكم اللاعب.
وهذه تعتبر من أهم اللحظات في رحلة تعلم تطوير الألعاب، لأنك تبدأ لأول مرة في الشعور أنك تبني لعبة فعلية.
🎯 لماذا هذه الخطوة مهمة جدًا؟
لأن أي لعبة في العالم تقريبًا تعتمد على نظام تحكم:
- ألعاب السيارات
- ألعاب التصويب
- ألعاب المنصات
- وحتى ألعاب الرعب
كلها تبدأ من فكرة بسيطة:
👉 استقبال أوامر اللاعب وتحويلها إلى حركة داخل اللعبة.
ولهذا يعتبر نظام الحركة من أهم الأساسيات التي يجب على أي مطور ألعاب فهمها جيدًا.
🚀 ماذا بعد؟
الآن أصبحت لدينا شخصية تتحرك داخل المشهد، لكن الحركة ما زالت “جامدة” قليلًا، لأن العنصر يتحرك بدون جاذبية أو تصادمات حقيقية.
فماذا لو أردنا أن يسقط اللاعب على الأرض بشكل طبيعي؟
أو نصنع تصادمات تمنعه من المرور داخل الجدران؟
🔥 في الدرس القادم سنتعلم كيف تعمل الفيزياء داخل Unity، وسنضيف الجاذبية والتصادمات لنبدأ في جعل اللعبة تبدو أكثر واقعية.
💬 سؤال للقارئ:
لو كنت تصنع لعبتك الآن، هل ستجعل الحركة سريعة وخفيفة أم بطيئة وواقعية؟ 👀