ما محرك اللعبة الذي يجب أن تختاره؟

جدول المحتويات:

ما محرك اللعبة الذي يجب أن تختاره؟
ما محرك اللعبة الذي يجب أن تختاره؟
Anonim

بصفتك مطور ألعاب طموحًا ، هذا هو أكبر سؤال يجب عليك الإجابة عليه قبل بدء مشروعك. يؤثر محرك لعبتك على كيفية بناء لعبتك ، وما أنواع المشكلات التي قد تواجهها ، وحتى مقدار الأموال التي تجنيها.

الوحدة

صورة
صورة

الوحدة هي الأولى في هذه القائمة لعدد من الأسباب. إنه المحرك الأكثر شهرة إلى حد بعيد - ستجد أن أي عنوان مستقل عشوائي يعمل على الأرجح على Unity. إنه مدعوم بالكثير من دعم المجتمع ، وربما يكون من أسهل الطرق للتعلم.هذا يمنحها سمعة طيبة لكونها المحرك للألعاب ثنائية الأبعاد منخفضة الميزانية ، لكن هذا ليس صحيحًا تمامًا. يمكن الوصول إلى الوحدة بسهولة ، لذلك يتم استخدامها لصنع ألعاب جيدة وألعاب غير جيدة. الأمر متروك للمطور لجعل اللعبة جيدة ، وليس المحرك.

تتخذ الوحدة نهجًا شديدًا لعدم التدخل في تصميم المحرك. تستخدم لغة C، وهي لغة مكتوبة بقوة يسهل فهمها أكثر من C ++ (لمعظم الناس). يتعامل المحرك مع الأشياء التي يجب أن تُنزل إلى المحرك ، ويبتعد عن فرض المخطط عليك. يتم التعامل مع التصادم والعرض وإدارة دورة حياة الكائن. معظم الأشياء الأخرى متروكة لك لتبنيها.

ستحتاج بالتأكيد إلى تعلم Cلاستخدام Unity. على الرغم من وجود بعض ملحقات البرمجة النصية المرئية في متجر الأصول ، إلا أنها ليست مدمجة بشكل جيد مثل مخططات UE4. الشيء الوحيد الذي يتم التعامل معه مع الرسم البياني هو ميزة الرسم البياني Shader الجديدة ، والتي تمكنك من كتابة وظائف تظليل دون لمس الرمز.

صورة
صورة

علاوة على ذلك ، يعد متجر أصول Unity رائعًا وأكبر بكثير من أي محرك ألعاب آخر. هناك الكثير من الأصول المجانية التي يمكنك استخدامها ، بالإضافة إلى الأصول المدفوعة التي يمكنك شراؤها. هذا مفيد بشكل خاص إذا لم تكن فنانًا كثيرًا وتريد أن تدفع لشخص آخر ليصمم أشياء لك. من المحتمل أن تجد شيئًا مناسبًا في متجر الأصول.

وبالمثل ، فإن دعم المجتمع للوحدة ممتاز. إنه أحد أكبر المحركات ، خاصة بين المطورين المستقلين. ستجد العديد من البرامج التعليمية لبناء أنواع مختلفة من الألعاب ، بالإضافة إلى أمثلة مسبقة الصنع في متجر الأصول.

الشيء الوحيد الذي لا يتم التعامل معه بشكل جيد من قبل Unity هو تعدد اللاعبين. مكتبة UNet الخاصة بهم معقدة وسيتم إهمالها قريبًا. إنهم يعملون حاليًا على حل ، ولكن كما هو الحال ، فإن وضع اللاعبين المتعددين المدمج فوضوي إلى حد ما.

مهما كانت حالة الاستخدام الخاصة بك ، فمن المحتمل ألا تخطئ في اختيار Unity للعبتك. إنه مجاني إذا كنت تربح أقل من 100 ألف سنويًا ، مما يجعله رائعًا لمطوّري البرامج المستقلين. إذا ربحت أكثر من ذلك ، فستكون 420 دولارًا في السنة ، و 1500 دولار إذا ربحت أكثر من 200 ألف.

غير واقعي

صورة
صورة

Unreal هو المحرك الذي يقوم بتشغيل لعبة Fortnite في Epic Game. في تناقض صارخ مع نهج عدم التدخل في Unity لتصميم المحرك ، تحاول Unreal أن تفعل كل ما في وسعها للمساعدة في تسهيل عملك. إنه يمنحها بعض السمعة لكونها عديمة الجدوى ويصعب تعلمها ، لكن هذا ليس صحيحًا تمامًا.

على سبيل المثال ، يحتوي Unreal على عدد من الفئات للمساعدة في المهام الشائعة ، وسيكون لديك وقت أسهل بكثير إذا حاولت التكيف مع مخططهم. أحد هذه الفئات هو "PlayerController" ، والذي يتعامل مع إجراءات اللاعب ويستخدم على نطاق واسع. ستكون هذه الفئة على وجه الخصوص مفيدة لأي لعبة تقريبًا ، لكن الفئات الأخرى مثل "الشخصية" قد تسبب إحباطًا لبعض الأشخاص.

تم تصميم فئة الشخصيات حول ألعاب إطلاق النار ثلاثية الأبعاد من منظور الشخص الأول ، وتتطلب منك استخدام مكون تصادم الكبسولة ونظام حركة الشخصيات المدمج في Unreal ، والذي بالتأكيد لن يناسب كل شيء ومزعج للتوسع.لكن هذا فقط هنا للأشخاص الذين سيكونون راضين تمامًا عن الحركة الأساسية. إذا لم تكن كذلك ، فإن Character هو طفل من فئة "Pawn" (المستخدمة في كائن اللاعب نفسه) ، لذلك يمكنك استخدام هذه الفئة بدلاً من ذلك والتعامل مع الحركة بالطريقة التي تريدها.

صورة
صورة

مع هذا بعيدًا ، فلنتحدث عن أفضل ميزة لـ Unreal: Blueprints. Blueprints هي لغة برمجة نصية مرئية رائعة تمكنك من إنشاء ألعاب دون لمس الرمز. يتم تشغيل Unreal على C ++ ، ومن المؤكد أنه يُسمح لك باستخدام كليهما ، ولكن Blueprints أصبحت ناضجة بدرجة كافية الآن بحيث لن يضطر معظم المطورين إلى لمس محرر نصوص إلا إذا كانوا يريدون ذلك حقًا.

هذا هو الشكل الذي تبدو عليه:

صورة
صورة

على الرغم من وجود قدر ضئيل من الأداء العام مقارنة بـ C ++ الأصلي ، إلا أنه ليس صارمًا ، وستلاحظه فقط عندما تفعل شيئًا لا يجب عليك فعله على أي حال (مثل تشغيل وظائف ضخمة في كل علامة أو تفرخ مليار ممثل).

لن تكون المخططات متاحة للجميع ، لكنها رائعة للأشخاص الذين يرغبون في إنشاء ألعاب بدون معرفة كبيرة بالبرمجة. لا يزال الترميز ، وستظل بحاجة إلى أن تكون على دراية بمفاهيم البرمجة الأساسية للاستفادة منها بشكل جيد ، لكنها أكثر قابلية للفهم - خاصة بالنظر إلى أن C ++ هي البديل الأساسي.

إذا كنت تعمل في C ++ ، فإن شفرة المصدر الكاملة للمحرك متاحة مجانًا ، ولك مطلق الحرية في تمديد المحرك كما تراه مناسبًا.

متعدد اللاعبين يتم التعامل معه بشكل جيد ويتم وضعه في المحرك من البداية. يمكن تعيين المتغيرات لتكرارها عبر العملاء ، وأي شيء يرث الفاعل سوف يكرر الحركة عبر العملاء. يمكن ضبط الوظائف للتشغيل على الخادم ، أو البث المتعدد للجميع ، أو نسخها إلى العميل المالك في حالة الممثلين الموجودين على الخادم والعميل.

هذه الميزة أكثر تخصصًا ، لكنها رائعة بما يكفي لدرجة أننا اضطررنا إلى ذكرها. يتميز المحرر نفسه بدعم VR الكامل ، حتى تتمكن من بناء المستويات بيديك في مساحة ثلاثية الأبعاد ، بشرط أن يكون لديك سماعة رأس VR.

تمكنك سماعة الرأس VR من بناء المستويات بيديك في مساحة ثلاثية الأبعاد
تمكنك سماعة الرأس VR من بناء المستويات بيديك في مساحة ثلاثية الأبعاد

فيما يتعلق بالتسعير ، Unreal مجاني للاستخدام ، ولكن لديه رسوم ملكية بنسبة 5 ٪ لكل عملية بيع بعد 3000 دولار لكل ربع سنة. إذا كنت تقوم بالإفراج في Epic Games Store ، فسيتم التنازل عن رسوم الامتياز هذه.

جودو

صورة
صورة

Godot هو محرك ألعاب مجاني ومفتوح المصدر. تم تصميمه للألعاب ثنائية وثلاثية الأبعاد على حد سواء ، وهو بديل مناسب عن Unity و Unreal (أكبر محركين).

يدعم Godot عددًا غير قليل من اللغات. هناك لغة برمجة نصية مرئية ، ودعم C ++ ، ودعم C، وخيار GodotScript ، وهي لغتهم الخاصة التي لها بنية مشابهة لبايثون.

يعمل دعم Godot ثنائي الأبعاد في إحداثيات بكسل ، على عكس Unity و Unreal التي تستخدم عوامات لتمثيل المواضع. كلاهما لهما امتيازات ، لكن إحداثيات البكسل المطلقة ستكون أفضل لمعظم ألعاب فن البكسل. الخرائط والإضاءة العادية مدمجة في النظام ثنائي الأبعاد.

يستخدم العرض ثلاثي الأبعاد إعداد عرض قائم على أساس مادي ، لذلك لا ينقصه الكثير خلف Unreal و Unity HDRP ، ولا يزال من الممكن استخدامه لصنع ألعاب ثلاثية الأبعاد جيدة المظهر. تستند لغة التظليل إلى GLSL ، لذا يجب أن يكون من السهل التعامل معها.

Godot متعدد المنصات بالكامل ، مثل Unity و Unreal ، مع دعم لأنظمة iOS ، و Android ، و Windows ، و macOS ، و Linux ، بالإضافة إلى دعم الويب باستخدام HTML5 و WebAssembly.

محركات أخرى

هناك الكثير من المحركات الأخرى ، خاصة المحركات ثنائية الأبعاد. بعضها مجرد مكتبات تقدم عرضًا ، مثل LOVE و PyGame. إذا كنت تريد حقًا طريقة لرسم الأشياء على الشاشة ولا تهتم بأي شيء آخر ، يمكن أن تكون هذه الأنواع من المحركات مفيدة.

GameMaker Studio و Cocos2D كلاهما محرك ثنائي الأبعاد بمحررين كاملين. ومع ذلك ، لا نوصي باستخدامها في المشروعات الأكثر تعقيدًا ، خاصةً عندما تتمتع المحركات الأخرى بدعم ودعم أكبر من المجتمع. سيكون Godot بديلاً جيدًا للألعاب ثنائية الأبعاد.

المحرك ثلاثي الأبعاد الكبير الوحيد المتاح للاستخدام العام هو CryEngine ، والذي يتم الاحتفاظ به حاليًا باعتباره AWS Lumberyard.

موضوع شعبي