السلام عليكم ورحمة الله وبركاته.
أول سؤال قد يخطر على ذهنك بعد اختيار فكرة معينة للعبتك، هو كيف سأختار محرك ألعاب مناسبًا لها؟ حيث هناك العديد من محركات الألعاب المختلفة، ويصعب التفرقة بينها أحيانا، لذا سنتكلم هنا عن نقاط لتنتبه لها عند اختيار محرك ألعاب.
جدول المحتويات:
1: لا يوجد “أفضل محرك ألعاب” !
2: عوامل يجب أخذها بعين الاعتبار عند اختيار محرك ألعاب:
2.2 الخبرة التقنية
2.4 المنصات المطلوبة
2.5 التكلفة
2.6 العمل الجماعي
2.7 تحديد الأولويات
2.8 الهدف طويل المدى
3: لمحة عن أشهر محركات الألعاب المتوفرة:
للألعاب ثلاثية أو ثنائية الأبعاد:
3.1 Unity
Unreal 3.2
Cry Engine 3.3
3.4 Lumberyard
3.5 Godot3
للألعاب ثنائية الأبعاد فقط
GameMaker2 3.6
لا يوجد أفضل محرك ألعاب:
كل محرك ألعاب له مميزات وخواص تفضله على المحركات الأخرى، وهذا يعني أن لكل محرك خصائص معينة يتفوق فيها، حتى لو كانت هذه الخصائص بسيطة. لذلك لا يمكنك التفضيل بين محركين بشكل مطلق.
فبعض المحركات تتميز برسوميات وأنظمة برمجية قوية، لتصبح ملائمة للألعاب الكبيرة، وبعضها متخصصة في الألعاب ثنائية الأبعاد.
و قد يكون المحرك مخصص للمبتدئين ليستطيعوا التعلم بسرعة، أو قد يكون المحرك مفتوح المصدر، لتستطيع التعديل على ملفاته البرمجية إن كانت لديك الخبرة.
لذلك، اختيار محرك ألعاب يعتمد أولا على اللعبة التي تريد صناعتها، ثم على عوامل أخرى مذكورة في الأسفل.
ملاحظة:
أعني بلعبة معقدة أنها تحتوي على الكثير من المراحل والشخصيات، و فيها أنماط لعب معقدة مثل Online Multiplayer (مثل لعبة مبارزة)
عوامل تساعد في تحديد محرك ألعاب ملائم
نوع ومستوى اللعبة:
إن كانت اللعبة بسيطة، فمعظم محركات الألعاب قد تكون مناسبة لها، أما إن كانت معقدة، فيجب استخدام محرك مستقر وله دعم مستمر.
لكي لا تتفاجأ بمشاكل المحركات الجديدة، ولكي تجد حلولا لأي مشكلة تجدها مستقبلًا.
وكذلك الأمر ينطبق على نمط اللعبة، فهل تريد أن تكون للعبتك رسوميات واقعية وبتفاصيل دقيقة؟ أو أن تكون كرتونية وبسيطة؟ وهل اللعبة ثنائية أم ثلاثية الأبعاد أم ما بين الاثنين (2.5D) ؟
تذكر هذه الأسئلة، لتجد الإجابة في آخر قسم من المقال، حيث يجب علينا مقارنة مميزات كل محرك وتحديد أي منهم يتفوق في نمط لعبتك.
الخبرة التقنية المتوفرة:
أحيانا يجد البعض محرك معين أصعب في الاستخدام من محرك آخر، كالفرق بين المحركات التي تستخدم لغات برمجة مثل ++C، والمحركات التي تعتمد أسلوب سحب الأوامر والقواعد لبرمجة اللعبة،
فقد يكون أنسبٌ لك إن لم تمتلك وقتًا كافيًا، وليست لديك خبرة سابقة في البرمجة، أن تستخدم المحركات الأخيرة، مثل Construct، فهي توفر الكثير من الوقت.
وهذا لا يعني أن لا تستخدم محركات أكثر تعقيدا أبدا، وأن لا تتعلم لغات البرمجة هذه، فهذا يعتمد على هدفك كما سأذكر لاحقا
توفر المصادر التعليمية:
ترتبط هذه مع النقطة السابقة، فمن الأجدى أن تبدأ باستخدام محرك له محتوى تعليمي جيد، كالفيديوهات والمقالات والمستندات الخاصة به،
وأيضا المنتديات تساعد في حل مشاكل المطورين والإجابة عن أسئلتهم، وهو ما يسمى بمجتمع المحرك، فقد يظهر لك خطأ في المحرك ولا تجد حل له في الموقع الرسمي، لذا تأكد من وجود منتدى للمحرك.
المنصات المطلوبة:
إن كانت لعبتك موجهة لمنصات Android و IOS، يكون من الأفضل استخدام محرك يدعم إمكانيات هذه المنصات، كمحرك فيزياء بسيط، وبرنامج عرض خفيف مخصص لها.
أما إن كانت موجهة للحاسب والأجهزة المنزلية، فمن الأفضل عدم استخدام محرك حُدِّث البارحة ليدعم هذه المنصات، بسبب احتمالية ظهور مشاكل عديدة!
التكلفة:
بما أن بعض المحركات تفرض تكاليف على استعمالها، فقد تحتاج لاستخدام محرك دون غيره بسبب رخصه أو عدم طلبه للتكاليف.
معظم المحركات تعطيك نسخة مجانية للتجربة والتعلم، وهذا أمر جيد كبداية، ولكن إن كنت تنوي أن تقوم بالنشر والربح من الألعاب مستقبلا، فيُستًحسن أن تبدأ بمحرك تستطيع سداد تكلفته لاحقا.
وهذا لأنك إذا تدربت على استخدام محرك معين، ثم أردت صناعة ونشر لعبة، فقد لا تستطيع دفع التكلفة المطلوبة منك. (مثل محرك Construct 3)
العمل الجماعي:
إذا كان لديك فريق، غالبًا سوف تسخدمون نظام يدير الإصدارات مثل Git، لذلك يجب اختيار محرك سلس في العمل مع هذه الأنظمة أو يحتوي على نظام خاص لإدارة الإصدارات
وأيضا يجب أن يكون المحرك سهل في التعامل وواجهاته واضحة لغير المبرمجين والمهندسين..
ليستطيع الفنانون، مثلا، إضافة المجسمات إلى اللعبة، أو ترتيب المراحل داخل المشهد.
تحديد الأولويات:
إن كان لديك زملاء مبدعون ومحترفون، ولديكم وقت كافي لصناعة لعبتكم، ولكن الميزانية محدودة، بإمكانكم التخلي عن النسخ المدفوعة و الموارد الجاهزة مثل Unity Plus- Pro
لأنكم تمتلكون الخبرة والوقت لصناعة هذه الموارد بأنفسكم، وهكذا فقد تهتمون أكثر بمحرك مفتوح المصدر لتستطيعوا التعديل عليه وتضيفوا الميزات كما تحتاجون.
وعلى العكس، إن كنت تملك بعض المال، وتريد توفير الوقت، فلا ضرر من استخدام محركات مدفوعة تحتوي على مزايا مساعدة في صناعتك للعبة.
الهدف طويل المدى:
ربما أنت تطمح أن تصبح مطور ألعاب محترف، لتعمل مع شركات عالمية. أو تريد الربح من صناعة الألعاب..
وهذا هدف رائع، ولكن لتحقيقه، فأنت تحتاج إلى تعلم استخدام محركات عالية المستوى كبداية (Unity , Unreal, Cry Engine)..
والتعلم على التقنيات التي يستخدمونها، مثل الحركات الفيزيائية الواقعية والرسوميات اللحظية وأنظمة الخوادم والشبكات، ومن ضمن ذلك يدخل تعلم لغات برمجة مثل ++C أو #C،.
ولذلك إن استثمرت وقتك الآن في استخدام هذه المحركات وتعلمت هذه اللغات شيئًا فشيئًا، تكون استفدت وأصبحت أقرب فأقرب إلى هدفك.
وهذا أفضل من البدء في المحركات البسيطة، لأنها قد لا توفر لك القدرة على التعرف على هذه التقنيات وكيفية عملها. ولن تستطيع التقدم كثيرًا في استخدامها.
أشهر محركات الألعاب المتوفرة:
للألعاب ثلاثية أو ثنائية الأبعاد:
Unity
- من أكثر المحركات شهرة، لذلك هو يتميز بكثرة المصادر التعليمية له على الانترنت، فهناك العديد من المواقع والقنوات التي تقوم بشروحات عنه.
- اللغة المعتمدة في برمجته هي #C، ومن جديد تمت إضافة Visual Scripting لتستطيع البرمجة من دون كتابة أكواد.
- بإمكانك صناعة ألعاب ثلاثية أو ثنائية الأبعاد عليه، و يدعم معظم منصات الألعاب، ويدعم ال VR :MR و AR.
- يحتوي على متجر مضمن في المحرك لتشتري منه كل ما تحتاج من مجسمات وصور إلى أنظمة برمجية جاهزة، لتساعد في عملية التجريب
- في الآونة الأخيرة، بدأت الشركة تهتم أكثر في جانب الرسوميات والعرض، حيث قامت بتحسينه وإضافة العديد من الخواص والمزايا، وهكذا أصبح بمتسوى محركات أخرى في هذا المجال.
- له نسخة مجانية، تحتوي على جميع المكونات الأساسية، ولكن إذا كانت أرباحك السنوية أكثر من $100k، فعليك شراء النسخة المدفوعة.
يدعم عرض اللغة العربية ولكن عن طريق أحد الإضافات المجانية المتوفرة في المتجر
Unreal
- هناك العديد من الألعاب الشهيرة المبنية علىه، مثل Rocket League و Fortnite، فهو مناسب للألعاب الكبيرة AAA.
- بإمكانك البرمجة فيه بلغة ال ++C لذلك بإمكانك برمجة ألعاب بأنظمة معقدة وبأداء ممتاز، بسبب سرعة لغة ال ++C.
- لديه ميزة ال Blueprint، وهي عبارة عن Visual Scripting لتستطيع البرمجة من دون أكواد.
- يدعم معظم المنصات مثل محرك Unity، ومؤخرا ازداد اهتمام الشركة في منصات الهواتف مثل Android و IOS، لينافس محرك Unity. وهو أيضا يدعم منصات ال VR.
- المحرك مفتوح المصدر، بإمكانك التعديل على مصدره البرمجي كما تشاء، وهذا يساعد الفرق والشركات على تغيير بعض الخواص مثل الفيزياء أو محرك الأصوات.
- المحرك مجاني تماما، وعند وصول أرباحك من الألعاب لنسبة معينة، فعليك مشاركة الشركة بجزء منها.
يدعم عرض اللغة العربية.
5 Cry Engine
كان أساس سلسلة FarCry، معروف لمعالج العرض المميز ومحرر المراحل المرن.
- المحرك مفتوح المصدر، وبإمكانك استخدام لغة ++C أو #C للبرمجة.
- يدعم معظم المنصات: الحاسب والأجهزة المنزلية والهواتف، وألعاب لمنصة VR أيضا.
- ليس هناك الكثير من الدروس له على الانترنت، والموقع الرسمي لا يكفي، لذلك قد يصعب تعلمه.
لا يدعم عرض اللغة العربية حاليا.
Lumberyard
قامت شركة Amazon بشراء نسخة من CryEngine وإعادة تصنيعها لإنتاج محرك Lumbeyard
- يتميز بخدمات الشبكات ونمط تعدد اللاعبين المرتبط ب AWS، وهي أداة من Amazon، تساعدك على الاتصال بالخادم وجمع اللاعبين مع بعضهم.
- الفرق بينه وبين CryEngine أنه مدعوم أكثر ويوفر خدمات أفضل.
Godot
محرك مفتوح المصدر، اشتهرت آخر نسخة منه لمزاياها المتعددة:
- برنامج عرض 3D بمستوى عالي يسعى لمنافسة المحركات الأخرى. ( يستخدم تقنيات مثل: Physically Based Rendering و Global illumination )
- سهولة صناعة ألعاب ثنائية الأبعاد، لوجود محررات للخرائط وإضاءة خاصة
- له لغة برمجة خاصة GDScript تشبه لغة Python، ويدعم أيضا: #Python , Nim , Dim C++ , Mono C ، وبإمكانك استخدام محرر مرئي Visual Scripting
- يدعم النشر لمعظم أنظمة الحاسب والهواتف النقالة، لكنه لا يدعم الأجهزة المنزلية و لا يدعم VR حاليا
- البرنامج خفيف والموقع يحتوي على عدد من الدروس.
لا يعرض اللغة العربية حاليًا
مخصصة للألعاب ثنائية الأبعاد:
Construct 2 و Construct 3
إصدارين من محرك مخصص للألعاب ثنائية الأبعاد، يتميز بسهولة الاستخدام للمبرمجين والفنانين.
- يعتمد في البرمجة على نظام السحب والإفلات للأوامر والقواعد التي تحتاجها، مما يجعل عملية التطوير أسرع بكثير
- بإمكانك نشر لعبتك للحاسب ومنصات الهواتف
يتفوق Construct 3 بمزايا منها:
- يعمل على المتصفح دون الحاجة لتنزيل أي برنامج، أي تستطيع التطوير على الهواتف أيضا!
- محرر ومنسق للمراحل سلس ومتطور أكثر
- Contruct 3 يدعم عرض اللغة العربية، أما Construct 2 يدعمها ولكن يحتاج لبعض التعديلات.
الإصدارين لهما نسخة مجانية بمزايا محدودة، ,ولكن لا يمكنك النشر والربح من ألعابك باستخدامها.
Game Maker Studio 2
محرك للألعاب ثنائية الأبعاد
- سلس وسهل التعلم، وله الكثير من المصادر التعليمية كالمقالات والفيديوهات، وهناك منتديات خاصة به.
- له لغة برمجة خاصة GML، مبنية على لغة C، وبإمكانك استخدام أسلوب سحب وإفلات الأوامر والقواعد للألعاب البسيطة.
- نظام لعب عبر الشبكة مدمج، يساعد في إنشاء نمط تعدد اللاعبين.
- له نسخة مجانية للتجربة والتعلم، وإذا أردت نشر لعبتك والربح منها فعليك شراء نسخة مدفوعة
يدعم عرض اللغة العربية باستخدام إضافات خارجية
لماذا هذه المحركات فقط؟
ليس عليك أن تحدد نطاقك بهذه المحركات فقط، ولكنني اخترت أشهر المحركات وأفضلهم سمعة لعدة أسباب:
- أن المبتدئ قد لا يستطيع التفرقة بين محرك جيد ومستقر أو جديد وكثير الأخطاء، لذلك أردت تحديد المحركات له لكي لا يختار محرك غير مضمون أو ليس له دعم مستمر
- لكي لا يحتار المطور في الاختيار، ولا يضيع بمتاهات على الانترنت لا نهاية لها، حيث يرمي الناس بآرائهم هنا وهناك، فتضييق النطاق يساعد في تحديد محرك واحد.
- أن المحركات المشهورة يكون لها مصادر تعليمية أكثر من غيرها، وقد تكون المصادر عربية، وهو أهم عامل لنا.
بإمكانك إلقاء النظرة هنا للتعرف على محركات أخرى، أقترح أن تجرب Corona SDK و 2 Cocos Creator
ملاحظة:
ليس الهدف من هذا القسم إشعال نار الحرب على المحركات، وإنما مساعدة الجدد في هذا المجال على تضييق وتحديد نظرهم إلى محركات معينة، يختاروا منها ما يناسبهم.
إذاًً، كيف أختار من بينهم الأفضل لي؟
للألعاب ثلاثية الأبعاد
هناك خمس محركات ذكرتها تدعم الألعاب ثلاثية الأبعاد: Unity, Unreal, CryEngine, Lumberyard, Godot 3
(محرك GameMaker Studio 2 له خصائص لثلاثية الأبعاد ولكن مشاكلها كثيرة وغير مدعومة جيدًا)
الأفضل الاختيار بين محركي Unity و Unreal، لأسباب:
- أنهما الأكثر شهرة، لذا المصادر التعليمية متوفرة بكثرة، والمواقع مليئة بالدروس والفيديوهات، وهناك العديد من المنتديات والمجموعات لكي تسأل عليها.
- وأيضا هما، منذ مدة طويلة، في منافسة قوية، مما يعني أن التحديثات مستمرة والنسخ مستقرة والمميزات الجديدة لا تنتهي.
- العديد من الخدمات والإضافات الخارجية متوفرة لهما دون باقي المحركات، ومتجرهما للموارد يساعد في تجريب الأفكار بسرعة.
كيف أختار واحد منهما؟
يعتمد الجواب على تفاصيل دقيقة عن لعبتك، لأن المحركين متشابهين في مجال ال 3D، وخاصة أن Unity قامت بتحسين برنامج العرض في آخر نسخ.
في السابق، اتفق الجميع أن Unreal أفضل في الرسوميات، وأدائه أفضل، و Unity أسرع للتجريب وأفضل للألعاب الصغيرة (حجم Counter Strike مثلا).
ولكن اختلف الوضع بتطور المحركين، ثم ظهور العديد من الخدمات الخارجية، كبرنامج خارجي لنمط اللعب عبر الشبكة، حيث يعمل على المحركين بنفس الأداء.
بالنسبة للفرق في لغات البرمجة:
ذكرت سابقا أن Unreal يستخدم لغة ++C، وهي أسرع نسبيًا من لغة #C في Unity للألعاب الكبيرة..
ولكن في التحديثات الأخيرة، قدمت Unity نظاما يسمى Job System، و ECS بإمكانك استخدامه لتوزيع العمليات على عدة أنوية وإدارة الذاكرة بسلاسة وسرعة، مما ضيق الفارق في السرعة بين المحركين.
لذا، إذا كنت مبتدئًا، أقترح عليك فكرتين:
الأولى: أن تجرب المحركين
حاول صنع لعبة صغيرة، ربما Pong (تابع فيديوهات على الانترنت)، أو ربما نسخة مصغرة من لعبتك، إن كنت تملك الوقت: مثلا للعبة سباق سيارات، تابع فيديوهات عن تحريك سيارة فيزيائيًأ.
ابدأ بأي من المحركين..
إن أعجبك أسلوب العمل عليه ووجدته مناسبًا لك وللعبتك، فامض إليه.
أما إن لم تكن متأكّدًا، فاصنع اللعبة نفسها على المحرك الآخر, ولكن انتبه هنا أن خبرتك قد ازدادت قليلا، لذا قد تجد، مثلا، جزء البرمجة أسهل..
إن وجدته أفضل ببعض النقاط، فامض إليه.
الثانية: أن تختار أي منهما عشوائيًا
حقًا، فبما أنها لعبتك الأولى، ومن المفترض أن لا تكون لعبة كبيرة، فالمحركين سوف يُؤَدِّيان نفس المهمة بفروق بسيطة لن تهمك في البداية.
بإمكانك الاختيار حسب المحرك الذي تعجبك واجهاته المرئية مثلا.
لا تريد أن تجرب ولا أن تختار منهم عشوائيًا وتريد نصيحتي؟
ابدأ ب Unity، فمؤخرًا حظى بتطورات كبيرة، وهو يتفوق على Unreal في مجال ال 2D، لذلك إن أتقنت استعماله ستستطيع العمل على أي نوع من الألعاب.
أما إذا كانت لديك خبرة سابقة في أحدهما:
فأقترح البقاء عليه، لكي لا تأخذ وقتًا في التعرف على محرك جديد، فهما يختلفان من ناحية الواجهات وتجربة المستخدم.
ماذا عن المحركات الأخرى؟
CryEngine 5
إن كنت جديد في المجال:
أنصحك بعدم البدء به لقلة مصادره التعليمية.
أما إن كانت لديك بعض الخبرة..
ولديك معرفة جيدة بلغة ++C أو #C، وهناك ميزة معينة في المحرك تحتاجها وتتفوق على محركات أخرى..
فامض إليه، فهو ينافس جميع المحركات ثلاثية الأبعاد، وعيبه الوحيد هو قلة المستخدمين الفاعلين على منتدياته، وقلة المصادر التعليمية.
لكن توقع أن تصبح وحيدا في مراحل متقدمة أثناء صناعة لعبتك.
Lumberyard
المحرك جديد نسبيا، وهو قوي ويتغلب على المحركات الأخرى في بعض النقاط، وأشجعك على التعرف عليه.
ولكن لا أعتقد أنه مناسب لاعتماده محرك للعبة كاملة حاليا
لأن المحتوى التعليمي قليل، وقد تواجه مشاكل لا تستطيع حلها ولن تجد من يساعدك فيها، بما أن المنتديات والمجموعات له ما زالت قليلة.
وخاصة إن كنت جديد هنا، فقد تمل بسرعة وتترك المجال كله.
وأقترح الانتظار، فالمحرك يبدو مشرقًا، وما زال في ال Beta (مرحلة قبل النسخة الكاملة)،
لكن لا يمكنني منعك من التجربة، فالموقع مليئ بالفيديوهات والمستندات لكي تبدأ به.
Godot 3
هذه النسخة جديدة، لذا ما ذكرت في حق Lumberyard قد ينطبق هنا..
ولكن الفرق أن مجتمع المحرك كبير ومتعاون، لأنه قديم وهذه ليست أول نسخة، بإمكانك سؤالهم عن أي مشكلة تواجهك أثناء استخدامه.
مع ذلك، لا أعتقد أنه من الجيد اعتماده كمحرك لمشروع لعبة 3D للمبتدئين.
لأنك قد تواجه مشاكل بالذاكرة وتحتاج للتحكم بها برمجيًا عند صناعة ألعاب معقدة، مثل التي بها نمط Online Multiplayer،
وأيضا نظام العرض ما زال جديدًا، وليس بجودة أنظمة عرض المحركات الأخرى.
والتحديثات قد لا تكون مستقرة تمامًا لأنه مفتوح المصدر.
ولكن أتوقع أن يصبح من المحركات الرائدة قريبا، وأنصحك بتجربته إن كنت تملك الوقت.
للألعاب ثنائية الأبعاد ( 2D أو 2.5D )
هناك خمس محركات ذكرتها تدعم الألعاب ثنائية الأبعاد: Unity, Unreal, Construct , Game Maker Studio 2, Godot 3
لاحظ هنا أنني أقصد المحركات التي تمتلك أدوات تساعد في تصميم وبرمجة ألعاب 2D، وليس فقط القدرة على عرض الصور أو وضع الكاميرا بزاوية Orthographic.
( لأنه، نظريا، أي محرك 3D يمكن أن يعرض لعبة 2D عن طريق تحديد البعد الثالث z بالقيمة 0 )
Construct – 2 & 3 و Game Maker Studio 2
أنصحك بأحدهم كبداية، لأنهم مخصصين للألعاب ثنائية الأبعاد..
ولديهم العديد من الأدوات لتصميم المراحل وترتيبها وبرمجتها بطريقة يسهل على الصغار تعلمها أيضا، حيث يستخدمون نظام السحب والإفلات لبرمجة اللعبة.
Game Maker Studio 2 يتميز بالقدرة على برمجة اللعبة بلغة خاصة به GML، وأنصحك باستخدامها،
لأنها تعطيك خيارات أفضل بكثير من نظام السحب والإفلات ويوسع دائرة الألعاب التي تستطيع صناعتها. وهي سهلة التعلم أيضا.
ولكن إن لم تكن تنوي استخدام البرمجة بدل نظام السحب والإفلات،.
فالأفضل لك استخدام Construct لأن نظامه أكثر مرونة.
ماذا إن لم أكن قادرًا على دفع تكاليفهم؟
أنصحك بالبدء بالنسخ المجانية والتعلم عليهم، وصنع بعض الألعاب البسيطة ليصبح لديك فكرة عامة عن كيفية صنع الألعاب. وبعدها بإمكانك إما الانتقال إلى محركات أخرى أو شراء النسخة المدفوعة.
بمقارنة أسعار النسخ، نجد أن Construct أنسب:
Construct 2، تدفع 159 يورو مرة واحدة. للنسخة الشخصية
Construct 3 تدفع 99$ سنويا. للنسخة الشخصية
أما Game Maker Studio 2 يطلب اشتراك لكل منصة تريد تصدير لعبتك عليها..
النسخة التي تسمح بالتصدير للحاسب ( Windows و Mac و Linux) سعرها مع التخفيض 79$..
ولكن لتصدير لعبتك إلى أجهزة الهاتف، مثلا، عليك دفع 199$ دولار إضافية (مع التخفيض الحالي)
الخلاصة:
استخدم Game Maker Studio 2:
إن كنت ستستخدم لغة البرمجة فيه GML، ولعبتك معقدة قليلا.
عدا ذلك، استخدم Construct
واختر بين Construct 2 و 3 Construct، وبما أن النسخة السابقة قد توقف دعمها، فالأفضل أن تبدأ ب Construct 3
إذا كنت تخطط لصناعة ألعاب 3D لاحقا، وتريد البدء بمحركات أكثر تقدمًا، فأنصحك بالاختيار بين:
Unity و Godot 3
Godot في النسخ السابقة كان يعرف لمزاياه في ألعاب ال 2D، فهو يمتلك كل ما قد تحتاجه للألعاب 2D، و Unity في الآونة الأخيرة تطور كثيرا في مجال ال 2D أيضا.
لاحظ أنه من الأفضل أن تتعلم البرمجة قبل البدء بأي من المحركين، لكنه ليس لزامًا.
نقاط يتفوق فيها Godot:
1) في المشهد ثنائي الأبعاد، يعتمد المحرك على نظام ال pixels، وال pixel هي وحدة الشاشات، فمثلا لتحريك مجسم إلى اليمين 50 pixel ، كل ما عليك فعله هو الأمر بتحريكه بمقدار 50..
أما في Unity، فعليك القيام بعمليات لتحويل الوحدة المستخدمة إلى pixel..
وهذه النقطة قد لا تهمك الآن، ولكنها تسهل الأمور في الألعاب 2D Pixel Games
2) بإمكانك استخدام العديد من لغات البرمجة فيه. ولغته GDScript تشبه ال Python التي قد تكون أسهل من #C (تستخدمها ب Unity)
نقاط سلبية عليه:
1) المحرك غير مستقر تماما وقد تواجه بعض الأخطاء في النسخة الجديدة.
2) ليس هناك عدد كافي من الدروس والفيديوهات للنسخة الجديدة، لذلك تعلمه قد يأخذ وقتًا.
3) لا يدعم عرض النصوص باللغة العربية حاليًا
بالنسبة ل Unity، فالمميزات كما ذكرنا سابقًا، تنطبق على ال 2D أيضا.
الخلاصة:
لذلك، إذا كانت لعبتك بسيطة، ,ولديك الوقت لتتعلم، فأقترح البدء ب Godot وتجربته، وبخاصة إن كنت تريد بناء لعبة Pixel / Retro Perfect، بإمكانك البدء من هنا.
أما إن كانت اللعبة معقدة قليلًا، فالأفضل البدء ب Unity
ماذا عن Unreal ؟
المحرك يحتوي على مميزات كثيرة للألعاب ثنائية الأبعاد مثل المحركات الأخرى، ونظامها يسمى Paper2D
لكنها ليست مدعومة من الشركة بشكل جيد، ولم تعد تبني مميزات جديدة لها، لذا عليك الاعتماد على إضافات خارجية للعديد من الخصائص، إن توفرت
وأيضا قد تواجه مشاكل يصعب حلها إن لم تكن لديك خبرة في المحرك ومعرفة بلغة ++C.
وإن كانت لديك خبرة سابقة في المحرك، فحل هذه المشاكل يأخذ وقتًا.
فتصبح مسألة موازنة بين الوقت المطلوب لتعلم محرك جديد، أو لإصلاح هذه المشاكل.
الأفضل أن تجرب وتحكم بنفسك:
ما كتبته في آخر قسم هو وجهة نظري، معتمدًا على التجارب والبحث والسؤال و تجارب الآخرين.
وإن كنت ستقوم بالتجربة والبحث والسؤال، ربما ستحصل على نتائج أخرى. وخاصة في موضوع المحركات، ومع تقدمها أصبحت لا تختلف كثيرًا في ما بينها، إلا في ميزات محددة.
لذلك، لم أكن أمزح عندما قلت أن تختر ما يعجبك بين محركين، فقد لا يكون هناك فرقًا إلا في تجربة المستخدم.
هل تخالفني في الرأي؟ شاركنا برأيك في التعليقات
أتمنى لكم تجربة موفقة بإذن الله.
Icons made by Freepik from www.flaticon.com is licensed by CC 3.0 By
Icons made by Smashicons from www.flaticon.com is licensed by CC 3.0 By