8 أضافات لمحرك Godot لتسهيل تطوير لعبتك

Godot

عندما تفتح محرك الألعاب غودو، تجد في أعلاه 4 تبويبات اساسية، وهي 2D و3D وتلك لتحرير مشاهدك ثنائية وثلاثية الأبعاد، وهناك script، وتلك لكتابة شيفرتك الخاصة، واخيرا يوجد AssetLib وتعني “مكتبة الأصول”.

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

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

تشغيل الاضافات

قبل الانتقال إلى أهم الإضافات، وجب التنبيه وتوضيح كيفية تثبيت أي إضافة في المحرك.

فاولا هي لا تضاف للمحرك ككل، بل فقط تُضاف إلى المشروع الذي اضفته اليها، أي لو اضفت اي اضافة في مشروع ما وتحتاجها في مشروع آخر، فيجب عليك إعادة تثبيتها في ذلك المشروع.

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

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

لتشغيل الاضافات انتقل إلى إعدادات المشروع Project settings، ثم تبويب الاضافات Plugins، والذي فيه تجد جميع الاضافات التي ثبتها عندك، ولكن يجب عليك وضع علامة ✔ عليها حتى تعمل.

8 اضافات رائعة

تحسين حركة لاعب المنصات

تحدث إلياس من قبل في مقال آخر بعنوان “اهم 3 تقنيات لتحسين وتعزيز تحكم حركة اللاعب” عن تقنية تسمى jump buffer، اي القفزة المختزنة.

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

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

وذلك كثير جدا، لذا توجد اضافة “Godot input buffer” والتي تضيف هذه التقنية بطريقة مُدمجة في المحرك، فبدلا من استعمال الأمر Input.is_action_just_pressed، يكفيك استعمال الأمر  InputBuffer.is_action_press_buffered.

وهكذا لن تحتاج إلى مُتغيرات ومؤقتات وغيرها.

رابط الاضافة : Godot input buffer

فيزياء ثلاثية الابعاد أفضل

Godot Jolt هي اضافة لمحرك غودو تستهدف فيزيائه ثلاثية الابعاد او بالاصح تستهد العقد المتعلقة بالفيزياء، مثل RigidBody3D وCharacterBody3D، 

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

 هناك أيضًا عقد بديلة (اختيارية تمامًا) متاحة لعقد المفاصل، والتي تتوافق بشكل أفضل مع الواجهة التي تقدمها الاضافة jolt مقارنة بما تفعله المفاصل الافتراضية من المحرك.

رابط الاضافة : Godot Jolt

ورغم أن الإضافة متعلقة بالفيزياء عموما، الا انها خاصة فقط بالفيزياء ثلاثية الابعاد في المحرك، اما ثنائية الابعاد، فيمكنك النظر في العنوان التالي:

فيزياء ثنائية أبعاد افضل

بعد عدد ما من الأجسام الجاسئة ثنائية الأبعاد RigidBody2D في المشهد، تبدأ فيزياء المحرك بالانهيار مع أداء سيئ للغاية، فتحصل الكثير من المشاكل هنا وهناك، وذلك طبعا غير مرغوب.

اما مع اضافة Godot Rapier، فيمكن للمحرك تحمل الكثير والكثير من تلك الأجسام، مع الاحتفاظ بالاداء، وايضا واقعية أكثر في مُحاكاة الاصطدامات وغيرها.

ويوجد قسم خاص للتعامل ايضا مع الموائع، أي يمكنك بناء مشاهد بها مياه فيزيائية بسهولة. وكل ذلك اصبح اسهل لان في الاصل Rapier هو محرك فيزيائي متخصص، بالتالي يمكن استبدال الخاص بالمحرك بهذا.

رابط الاضافة : Godot Rapier

إنشاء العوالم العشوائي

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

صناعة العوالم لا تنحصر فقط على العاب المنظور العلوي Top-down، بل ايضا العاب المنصات Platformer مثل لعبة terraria، وغيرها الكثير. وليس فقط لعوالم ثنائية الابعاد، بل ايضا في العوالم ثلاثية الابعاد بسهولة.

تأتي الإضافة مع عقد جديدة للمحرك، وهما GaeaRenderers وهي عُقد مسؤولة عن عملية إظهار وتصيير العوالم، وايضا عقدة ChunkLoader التي يمكن استعمالها في إظهار الاجزاء القريبة من اللاعب فقط.

رابط الاضافة : Gaea

كاميرا تفاعلية

phantom camera، او الكاميرا الوهمية، هي اضافة بها عقدتين جديدتين، تعملان على اضافة المزيد من التقنيات والمزايا بدلا من الكاميرا الافتراضية للمحرك. عقدة خاصة بالمشاهد ثنائية الأبعاد، واخرى خاصة بالمشاهد ثلاثية الابعاد.

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

كما تستطيع استخدامها لجعل الكاميرا دائما تُظهر كائنين مهما ابتعدا عن بعضهما، وذلك مفيد كثيرا في الألعاب متعددة اللاعبين.

ايضا يوجد تقنية الوسيط Tween مدمجة بداخل تلك العُقد، بالتالي تقدر على انشاء تحركات رائعة للكاميرا دون الحاجة لاستخدام تقنية الوسيط الخاصة بالمحرك نفسه.

رابط الاضافة : Phantom Camera

مدير الصوتيات

وجود صوتيات خاصة بالبيئة ووجود اصوات في الخلفية ووجود أصوات تفاعلية لما يفعله اللاعب ووجود أصوات للواجهات والكثير الكثير من الاصوات الاخرى التي تتواجد في لعبتك تحتاج إلى تنظيم.

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

بين دوال للحصول على أصوات شيئ ما او التعديل على قيمة الصوت او استعمال أصوات عشوائية لحدث ما، والكثير من الدوال الاخرى المفيدة. وبما انها تعمل على الدوال اكثر من اي شيئ اخر، فيوجد ايضا دعم للغة c#.

رابط الاضافة : Godot Sound Manager

حوارات داخل اللعبة

الحق أن هذه هي الاضافة التي الهمتني في كتابة هذا المقال، نظرا لقوتها وحُب المجتمع لها، بل انها واحدة من الإضافات التي يُضرب بها المثل في إمكانية عمل اضافات رائعة للمحرك.

الاضافة Dialogic او “حواري” تضيف لوحة جديدة تماما داخل المحرك فوق بجانب AssetsLib، وفي تلك اللوحة يمكنك اضافة الشخصيات وما تقوله تلك الشخصيات بسهولة. او اضافة خط زمني لتسلسل الاحدث، فتظهر حوارات محددة عندما بعد حدوث أحداث مُحددة..

وبداخل لعبتك، يمكنك استعمال مجموعة من الدوال الجاهزة للحصول على تلك الحوارات واظهارات بسهولة.

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

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

ملحوظة مهمة : لن تجد هذه الاضافة في مكتبة الأصول الخاصة بالمحرك، ويجب عليك تنزيلها يدويا

رابط الاضافة : Dialogic

إعدادات جاهزة الاستخدام

GGS هي اختصار لـGodot Game Settings، اي اعدادات العاب غودو وهذه الإضافة موجهة للمشاريع الصغيرة والمتوسطة، ففيها توجد تقنيات تساعدك في إنشاء إعدادات جاهزة للعبتك.

إعدادات مثل التحكم في الصوت ونافذة اللعبة والاهتزاز وتعديل مفاتيح الإدخال (ازرار التحكم) وغيرهم الكثير.

كما توجد تقنيات لحفظ تلك الإعدادات، بالتالي لا حاجة لك لان تحفظها بنفسك بداخل ملفات json، بل أن الاضافة ستفعل ذلك بدلا منك.

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

رابط الاضافة : GGS

ختاما

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

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

فلما لا تجرب اضافة من تلك الإضافات وتخبرنا بها رايك، فهل استعملت واحدة منها؟ وما هي الاضافة التي تود أن تكون موجودة بداخل المحرك، او ما هي تلك التي ترى أنه يجب أن تكون افتراضية داخل المحرك.

مصدر 1، مصدر 2، مصدر 3

0 0 votes
Article Rating
Subscribe
نبّهني عن
guest

0 تعليقات
Inline Feedbacks
View all comments