المعلوماتية > برمجة الألعاب
كيف تتم صناعة الألعاب؟ (الجزء الثاني)
تناولَ مقالنا السابق مرحلتي صناعة الألعاب الأولى والثانية، (يمكنكم قراءة مقال الجزء الأول من هنا)، وفي مقالنا هذا نستكمل الحديث عن المرحلة الثالثة والرابعة حتى تكتمل الصورة.
٣- مرحلة الإنتاج:
بعد الانتهاء من مرحلة تصميم مفهوم اللعبة وشخصياتها وصياغة القصة وإنشاء اللوح القصصي ووثيقة التصميم، يتمُّ الانتقال إلى المرحلة التالية وهي مرحلة الإنتاج التي يتوسّع فيها الفريق ليشمل المزيد من المصممين والمبرمجين والرسامين. وهنا يعمل المنتج مع كلٍّ منهم لإنشاء جداول زمنية يجب اتباعها من قِبل المهندسين والفنانين، ومتابعة سير العمل.
خلال مرحلة الإنتاج، يعملُ المصممون والرسامون على إنشاء الرسوم المتحركة الخاصة باللعبة باستخدامِ برامجَ مثل Maya و3D studio Max لنمذجة كل ما يمكن أن تحتويه اللعبة من بيئات وشخصيات وعناصر وقوائم.
وخلال هذه المرحلة أيضاً يبدأ العمل البرمجي. في مجال صناعة ألعاب الفيديو، هناك العديدُ من التخصصات المختلفة ضمن فئة البرمجة، حيث يكون كلُّ مبرمجٍ مسؤولاً عن جوانبَ محددة من تطوير اللعبة، وفي الوقت نفسه يعدُّ كل واحدٍ منهم مبرمجَ ألعاب. نذكر من هذه الاختصاصات:
- مبرمج محرك اللعبة:
على مدى السنوات العديدة الماضية ازدادت تكلفة صناعة الألعاب، ممَّا دفع بعض الشركات، والتي تُعرف بمزودي البرمجيات الوسيطة، إلى التخصّص في صناعة محركات ألعاب متكاملة أو بعض مكونات هذه المحركات بدلاً من صناعة الألعاب. ويكون المبرمج في هذا المجال مسؤولاً عن إنشاء المحرك الخاص باللعبة، ولكن ما هو محرّك الألعاب؟
هو عبارة عن بيئة عمل برمجية تُستخدم لصناعة اللعبة وتحتوي على التعليمات البرمجية المصدريّة والمكتبات اللازمة لتأدية مهام معينة تستخدم عند كتابة برنامج اللعبة مثل عرض الصور داخل اللعبة، والقوائم، وتحديد العوامل الفيزيائية كالجاذبية مثلاً، فضلاً عن النمذجة ثلاثية الأبعاد، وترتيب الأشياء وتنظيم الأبعاد، وتحديد شروط اللعب، كالحياة والموت للاعب، أو مسار السيارة في ألعاب السباقات والعديد من المهام البرمجية الأخرى، وهو الذي يقوم بملياراتِ العمليات الحسابية الفورية التي تجعل الشخصية تطير مثلاً أو تجري أو تستخدمُ سلاحاً. ويقومُ المحرك أيضاً بالاتصال بأجهزة كومبيوتر أخرى لإبقاء بيئة اللعبة في وضع التشغيل بالإضافة إلى التأثيرات الصوتية والموسيقا التصويرية.
على الرغم من اختلاف محركات الألعاب إلا أنها تشترك في مكوناتٍ أساسية يُشترطُ وجودها حتى يكون البرنامج محركاً متكاملاً. هذه المكونات هي:
١- Renderer ثلاثي الأبعاد: وهو المكوّن الأساسي لأي محرك ألعاب خاصّ بالألعاب ثلاثية الأبعاد، ويستخدم مكتبات OpenGL و/أو Direct3D لرسم الرسوميات على الشاشة.
٢- نظام الصوت لإضافة التأثيرات الصوتية والموسيقا التصويرية داخل اللعبة.
٣- وظائف الذكاء الصنعي: المُستخدمة للتحكم بالشخصيات التي لا يتحكم بها اللاعب.
٤- نظام للتعرّف على أدوات الإدخال التي يستخدمها اللاعب مثل الضغط على المفاتيح وعصا التحكم ونقرات الفأرة.
٥- نظام تسجيل لمراقبة جميع المكونات الأخرى وتسجيل حالاتها وإخراجها على شكل ملف نصي.
٦- نظام إدارة الذاكرة.
٧- الربط الشبكي.
٨- البرمجة النصية وهي أهم جزء في المحرّك. تستخدم محركات الألعاب المعروفة إما لغات مخصّصة أو لغات برمجية جيدة مثل Python وLua.
٩- مكتبات تحتوي على عناصر واجهة المستخدم مثل القوائم والإعدادات.
- مبرمج المحرك الفيزيائي:
هو المسؤول عن تحديد الخصائص الفيزيائية التي سيتمُّ استخدامها في اللعبة، وعادة ما يتمُّ تطبيق عددٍ قليل من الخصائص الفيزيائية في اللعبة الواحدة. على سبيل المثال، في ألعاب الفضاء، تتمُّ محاكاة عنصر الجاذبية. كما يكونُ بعض مبرمجي المحرك الفيزيائي مسؤولين عن تطوير تقنية «الحركة المجردة» المعقدة وذلك لإعطاء الشخصيات صفاتٍ واقعية عن طريق استخدام تقنيات التقاط الحركة.
- المبرمج المختص بالذكاء الصنعي:
وظيفة هذا المبرمجِ تصميمُ وتطوير تقنيات داخل نظام اللعبة لمحاكاة شخصيات البشر وسلوكياتهم.على سبيل المثال، يقوم مبرمجو الذكاء الصنعي بتطوير نظمٍ استراتيجية واستطلاعية وتكتيكات العدو في الألعاب، وهي من أصعب مهام البرمجة. حالياً، يتجه الكثير من المبرمجين إلى التخصص في هذا النوع من البرمجة، في حين سابقاً كان باستطاعة أي مبرمج من أي فئة أن يقوم بهذه المهمة.
وفي مرحلة الإنتاج أيضاً، يعملُ الفريق على كلِّ ما يتعلقُ بأمور الترخيص المستخدَمة لإنتاج اللعبة، وفي حال كانت شركة ما هي التي تقوم بتطوير اللعبة، يجب التأكيد على أن قسم التسويق على علمٍ بكلّ ما يحتاج إلى معرفته عن اللعبة وعنوانها.
بمجرّد أن يتم تطبيق كل العناصر الأساسية من قِبل المبرمجين والمصمّمين، يقومُ فريق الإنتاج (في حال كانت شركة هي المنتجة للعبة) بتجربة جميع جوانب اللعبة على الجهاز الذي يجري تطوير اللعبة عليه.
ما هي البرمجيات المستخدمة في عملية صناعة الألعاب؟
توجدُ العديد من البرمجيات المتاحة للمبتدئين وللخبراء لصناعة الألعاب، والتي تسمح لهم بتطبيق إبداعاتهم دون الحاجة لكثير من العمل البرمجي، حيث توفر حزم البرامج الكثير من المهام بشكلٍ تلقائي باستخدام العديد من الإجراءات الشائعة مثل السحب والإفلات أو الإبراز أو النقر المزدوج.
تُصنَّفُ حِزم برمجيات صناعة الألعاب إلى ثلاثة أقسام رئيسية وهي: الألعاب ثنائية الأبعاد، والألعاب ثلاثية الأبعاد وهي أكثر قوة من سابقتها، وألعاب تقمّص/تبادل الأدوار وهي نوع مختلف عن النوعين السابقين.
من أشهر برامج صناعة الألعاب ثلاثية الأبعاد برنامج (DarkBASIC) الذي يلبّي احتياجات صانعي الألعاب الهواة، وله نسخةٌ أخرى (DarkBASIC Pro) تتضمنُ المزيد من الخيارات لصانعي الألعاب ذوي الخبرة. وللنسختين من هذا البرنامج مجتمعات قوية من المستخدمين يمثّلون مرشداً لصانع اللعبة.
برنامج (Game Maker) هو خيارٌ آخر لصناعة الألعاب ثلاثية الأبعاد يسمحُ لمستخدميه بتعلّم وظائفَ برمجية أكثر تقدماً، وذلك بإظهار الكود البرمجي الذي تمّ إنشاؤه عن طريق عملياتٍ بسيطة مثل السحب والإفلات. يمكنُ اعتبار هذا البرنامج بمثابة بداية لصانع الألعاب نحو المزيد من الألعاب الأكثر تخصيصاً ومرونة.
أما بالنسبة لبرامج صناعة الألعاب ثنائية الأبعاد، يعد برنامج (Game Editor) من أهم البرامج المعروفة بسهولة استخدامها لصانعي الألعاب المبتدئين، ويُستخدم لصناعة ألعابٍ لكل من الكومبيوتر والموبايل. بالإضافة إلى برنامج Mugen المشهور بصناعة ألعاب القتال ثنائية الأبعاد، وهو برنامج قائمٌ على التفاعل ويوفّرُ إمكانية صناعة شخصيات خاصة، أو تحميل شخصيات من صانعي ألعاب آخرين.
تتوفّر معظم هذه البرامج بشكل مجانيّ على مواقع الإنترنت، وتعمل عن طريق إدخال أوتوماتيكيٍّ للأكواد كاستجابةٍ للأوامر البسيطة. حيث يمكنُك بامتلاكِ خبرةٍ في استخدام أجهزة الكومبيوتر وبعض المهارات التنظيمية، أن تستخدمَ تلك البرامج. ولسهولة استخدام هذه البرامج وقوّتها النسبية وإمكانية التخصيص فيها فُتح مجال تطوير ألعاب الفيديو أمام شريحة واسعة من الناس.
لصناعةِ ألعابٍ أكثر تخصّصاً وتعقيداً، على صانع الألعاب أن يمتلك معرفةً وخبرة برمجية، فكلّما كانت الخيارات في اللعبة أكثر والرسوميات أكثر تقدّماً، كلما كان الكود البرمجي المطلوب أكثر تعقيداً.على سبيل المثال، لنفترض أن صانعَ ألعاب يقوم بتصميم لعبة قتالية باستخدام أحد البرامج السابقة، في هذه الحالة، سيحصلُ على أسلحة معينة وألوان محدودة لاستخدامها في لعبته، أما في حال قام بكتابة الألعاب بشكل برمجي مخصص، فإنه سيحصل على أسلحة جديدة وألوان مخصصة، وهنا يحتاجُ صانع الألعاب إلى كتابة الكود البرمجي من نقطة الصفر.
٤- مرحلة ما بعد الإنتاج:
المرحلة الأخيرة هي ما بعد الإنتاج عندما تصبح اللعبة كاملة الميزات وبعد أن يتمّ الانتهاء من كتابة جميع الأكواد. وعندها يتم إصدار نسخة الألفا من اللعبة (وهي المرحلة الأولى التي يتمّ فيها اختبار البرمجيات) وإرسالها إلى قسم اختبار اللعبة لإيجاد الأخطاء والعيوب الرئيسية في اللعبة التي يجب تغييرها من قِبل المبرمجين أو المصمّمين.
بعد أن يتم تحديد جميع عيوب اللعبة وإصلاحها يتمّ إصدار نسخة البيتا من اللعبة (المرحلة التي تكتمل فيها ميزات البرنامج أو اللعبة وتلي مرحلة الألفا) وإرسالها مجدداً إلى قسم اختبار اللعبة، وهنا يتمّ إجراء اختبار صارم جداً لاختبار كل جزءٍ فيها ومحاولة إصلاح كل خللٍ بغضّ النظر عن مدى كبرِ هذا الخلل أو صغَره.
بعد أن يتمَّ إصلاح جميع العيوب وتحديد معايير اللعبة، يتمُّ إصدار النسخة النهائية من البرنامج، وفي حال كانت اللعبة مخصّصة لمنصة ألعاب مثل الـPlayStation أو الـXbox، تُرسل تلك النسخة النهائية إلى الشركة المصنِّعة لوحدة التحكم لاختبارها والمواقفة عليها وإصدارها.
بعد مرور اللعبة بكل هذه الخطوات والاختبارات والموافقة عليها في حال كانت شركةٌ ما هي المصنعة، أو انتهائها فقط في حال قام بتطويرها أحد المبرمجين مثلاً بشكل فردي، كل ما يتبقى هو تصنيع اللعبة وتوزيعها على المتاجر لتصبحَ متاحةً للشراء.
هل يستهويكَ مجال صناعة الألعاب؟ أو هل ترغب بتعلّمه وممارسته كهاوٍ؟ أو هل قد ترغب بدراسته واحترافه؟ شاركنا أفكارك.
المصادر: