نعود مع تحديث تطوير كبير آخر مع أكثر من 330 عملية دمج تم إجراؤها في الأسابيع القليلة الماضية! يواصل المساهمون العمل على أشياء جديدة مذهلة بينما نواصل دمج تراكمنا من الميزات المهمة التي فاتت موعد الإصدار 4.3. النتيجة المشتركة هي الكثير من الأشياء الرائعة المضغوطة في فترة زمنية قصيرة.
\ العديد من التغييرات في هذا الإصدار هي إصلاحات للأخطاء التي سيتم نقلها إلى Godot 4.3 وإصدارها في 4.3.1! لذا يرجى اختبار هذا الإصدار جيدًا حتى نتمكن من الثقة بالتغييرات وإصدار 4.3.1 معها في أقرب وقت ممكن.
\ ضع في اعتبارك أنه بينما نحاول التأكد من أن كل لقطة تطوير مستقرة بما يكفي للاختبار العام، فهذا بحكم التعريف قطعة برمجية ما قبل الإصدار. تأكد من إجراء نسخ احتياطية متكررة، أو استخدام نظام التحكم في الإصدار مثل Git، للحفاظ على مشاريعك في حالة تلف أو فقدان البيانات.
\ انتقل إلى قسم التنزيلات، وجربه الآن، أو تابع القراءة لمعرفة المزيد عن التحسينات في هذا الإصدار. يمكنك أيضًا تجربة محرر الويب، محرر XR، أو محرر Android لهذا الإصدار (انضم إلى مجموعة اختبار محرر Android للوصول إلى إصدارات ما قبل الإصدار).
الرسم التوضيحي الأصلي للغلاف من Fogpiercer، وهي لعبة بطاقات قتالية قائمة على الأدوار حيث تكون مجموعة بطاقاتك عبارة عن قطار! تم تطويرها في Godot 4.3 بواسطة Mad Cookies Studio. يمكنك إضافة اللعبة إلى قائمة الرغبات على Steam ومتابعة المطورين على Twitter.
في حالة فاتتك، راجع ملاحظات إصدار 4.4 dev 1 و dev 2 للحصول على نظرة عامة على بعض الميزات الرئيسية التي كانت موجودة بالفعل في تلك اللقطة، وبالتالي لا تزال متاحة للاختبار في dev 3.
\ فيما يلي بعض النقاط البارزة التي قد تجدها مثيرة بشكل خاص!
\
@export_tool_buttonكانت القدرة على إنشاء زر في المفتش من نصوص الأدوات ميزة مطلوبة للغاية، وقد تولى العديد من المساهمين مسؤولية تحقيق ذلك في GH-96290: المساهمون الجدد jordi-star و Macksaur، والمشرفون Ernest و Danil!
\ تتيح لك هذه الميزة الجديدة أن تكون أكثر تعبيرًا مع أدوات التطوير التي يمكنك إنشاؤها بسهولة باستخدام نصوص @tool.
\ دعنا نلقي نظرة على مثال:
@tool extends Sprite2D # With a callable (could also be a local function). @export_tool_button("Toot", "Callable") var print_action = print.bind("toot") # With a lambda. @export_tool_button("Randomize Color", "ColorRect") var color_action = func(): self_modulate = Color(randf(), randf(), randf())
\
لم يتباطأ العمل على تحسين تجربة بدء تشغيل المشهد، وذلك بفضل المساهمات المذهلة من Hilderin. تقدم لقطة التطوير هذه تحسينًا هائلاً في سرعة تحميل المحرر للمشاريع الكبيرة (GH-95678). يمكن للمشاريع الكبيرة أن تتوقع تحسينًا في السرعة يصل إلى 3 أضعاف عند تحميل المشروع وتسريعًا مماثلاً عند إجراء أي عمليات تقوم بمسح نظام الملفات.
يعيد إصدار التطوير هذا تقديم خيار تظليل الرؤوس الذي طال انتظاره للمواد (GH-83360)، وذلك بفضل المساهم ywmaa الذي قدم ميزته الرئيسية الثانية في Godot، بعد دعم التصدير لـ Blender Geometry Nodes. يستخدم تظليل الرؤوس بشكل أساسي لتحقيق نمط PSX المبكر وتحسين الأداء على الأجهزة القديمة والأقل قدرة.
\ يمكنك تمكين تظليل الرؤوس إما من داخل StandardMaterial3D موجود، أو ORMMaterial3D، أو ShaderMaterial، أو عن طريق فرض تمكينه على جميع المواد باستخدام إعداد المشروع rendering/shading/overrides/force_vertex_shading.
\
بعد معالجة الواجهة الخلفية للعرض Metal التي تم دمجها في لقطة سابقة، قام Stuart بمساهمة عرض أخرى مثيرة للإعجاب: المعالجة المجمعة ثنائية الأبعاد!
\ تم تنفيذ المعالجة المجمعة في عارض التوافق منذ إصدار 4.0. يجلب هذا الإصدار نفس فوائد الأداء إلى الواجهات الخلفية الأخرى من خلال تنفيذ المعالجة المجمعة عند استخدام الواجهات الخلفية Forward+ و Mobile (GH-92797). الآن أصبح أداء ثنائي الأبعاد قابلاً للمقارنة بين جميع الواجهات الخلفية.
\ المعالجة المجمعة هي تحسين للأداء يقلل بشكل كبير من عدد استدعاءات الرسم في مشهد. ستكون فوائد المعالجة المجمعة ملحوظة بشكل خاص في المشاهد التي تحتوي على الكثير من عرض النص أو الرسوم المتكررة التي تشترك في نسيج (على سبيل المثال، عند استخدام خرائط البلاط أو إنشاء جحيم الرصاص).
\ لدينا المزيد من التحسينات المخطط لها للمعالجة المجمعة على الواجهات الخلفية RD والتي يجب أن تسمح لها بأن تكون أسرع حتى من واجهة التوافق الخلفية. ترقبوا التحديثات في إصدارات التطوير اللاحقة!
يضيف مقيم التعبير علامة تبويب جديدة إلى اللوحة السفلية تتيح لك تقييم التعبيرات باستخدام الحالة المحلية لنصوصك البرمجية أثناء التوقف عند نقطة توقف. العديد من المستخدمين على دراية بسير العمل هذا من مصححات REPL الأخرى.
\ كانت هذه الميزة قيد التطوير لفترة وتم الانتهاء منها ودمجها مؤخرًا (GH-97647)، شكرًا لـ Oğuzhan و Erik و Tomek لإيصالها إلى خط النهاية.
شكوى شائعة من المستخدمين هي أنهم بحاجة إلى العودة إلى المحرر بمجرد بدء لعبتهم من أجل تمكين أداة التحليل. هذا جعل من الصعب قياس الأداء في الثواني القليلة الأولى من تحميل مشهد وكان إزعاجًا عامًا للمطورين.
\ قدم Hendrik مربع اختيار يتيح لك ضبط أداة التحليل لتبدأ تلقائيًا عند تشغيل المحرك والتقاط بيانات التحليل القيمة على الفور (GH-96759).
تتيح لك العلامات إنشاء مناطق فرعية من الرسوم المتحركة يمكن الانتقال إليها، أو تكرارها دون تشغيل الرسوم المتحركة بالكامل.
\ يتم دعم العلامات حتى داخل شجرة الرسوم المتحركة، حيث يمكنك بسهولة تحديد علامات الرسوم المتحركة للتكرار أو لبدء التشغيل.
\ لمزيد من التفاصيل، تحقق من طلب السحب GH-91765، والذي كان أحد أولى مساهمات ChocolaMint في Godot!
في السابق، كان Godot يدعم فقط الوصول إلى كاميرا الجهاز على أجهزة macOS و iOS. تم أخيرًا دمج طلب السحب الطويل الأمد لـ pkowal1982 GH-53666 ويضيف دعمًا لمنصة Linux، مما يسمح للمطورين بالوصول إلى الكاميرات المتصلة من داخل لعبتهم.
حاليًا عند محاولة تشغيل Godot مع الواجهة الخلفية Forward+ أو Mobile على جهاز لا يدعم Vulkan أو D3D12 أو Metal، سيوفر المحرك للمستخدم تنبيهًا من نظام التشغيل يخطره بأنه لا يوجد لديه دعم لواجهة برمجة الرسومات المطلوبة وأنه بحاجة إلى المحاولة مرة أخرى مع الواجهة الخلفية للتوافق. ثبت أن هذا التنبيه مربك للمستخدمين وتنتهي عملية فتح المشهد بأنها مرهقة.
\ الآن مع GH-97142، المساهمة الأولى من SheepYhangCN، سيعود المحرك تلقائيًا إلى استخدام OpenGL (الواجهة الخلفية للتوافق) عندما لا تكون الواجهات الخلفية الأخرى متاحة. يجب أن يوفر هذا أفضل تجربة ممكنة للمستخدمين على الأجهزة القديمة.
\ نظرًا لأن الواجهات الخلفية للتوافق يمكن أن تبدو مختلفة عن الواجهات الخلفية الأخرى، قد لا يرغب مطورو الألعاب في أن يعود Godot تلقائيًا. في تلك الحالة، يمكنهم تعطيل إعداد المشروع rendering/rendering_device/fallback_to_opengl3 لتجنب العودة، وسيتم إخطار المستخدمين الذين لديهم أجهزة تدعم OpenGL فقط بأن أجهزتهم غير مدعومة.
هناك الكثير من التغييرات المثيرة لسردها جميعًا هنا، ولكن إليك مجموعة مختارة:
قدم 136 مساهمًا 332 تحسينًا لهذه اللقطة الجديدة. راجع سجل التغييرات التفاعلي للحصول على القائمة الكاملة للتغييرات منذ لقطة 4.4-dev2 السابقة.
\ تم بناء هذا الإصدار من الالتزام f4af8201b.
تنزيل Godot 4.4 dev3
\ البناء القياسي يتضمن دعمًا لـ GDScript و GDExtension.
\ بناء .NET (المميز بـ mono) يتضمن دعمًا لـ C#، بالإضافة إلى GDScript و GDExtension.
\ بينما يبذل مشرفو المحرك قصارى جهدهم للتأكد من أن كل لقطة معاينة وإصدار مرشح مستقر، فهذا بحكم التعريف قطعة برمجية ما قبل الإصدار. تأكد من إجراء نسخ احتياطية متكررة، أو استخدام نظام التحكم في الإصدار مثل Git، للحفاظ على مشاريعك في حالة تلف أو فقدان البيانات.
\ مع كل إصدار نقبل أنه ستكون هناك مشكلات مختلفة، تم الإبلاغ عنها بالفعل ولكن لم يتم إصلاحها بعد. راجع متتبع مشكلات GitHub للحصول على قائمة كاملة بالأخطاء المعروفة.
كمختبر، نشجعك على فتح تقارير الأخطاء إذا واجهت مشكلات مع هذا الإصدار. يرجى التحقق من المشكلات الموجودة على GitHub أولاً، باستخدام وظيفة البحث بالكلمات الرئيسية ذات الصلة، للتأكد من أن الخطأ الذي تواجهه ليس معروفًا بالفعل.
\ على وجه الخصوص، من المهم جدًا الإبلاغ عن أي تغيير من شأنه أن يسبب تراجعًا في مشاريعك (على سبيل المثال، إذا كان شيء ما يعمل بشكل جيد في إصدارات 4.x السابقة، ولكنه لم يعد يعمل في هذه اللقطة).
Godot هو محرك ألعاب مفتوح المصدر وغير ربحي تم تطويره بواسطة مئات المساهمين في وقت فراغهم، بالإضافة إلى حفنة من المطورين بدوام جزئي أو كامل تم توظيفهم بفضل التبرعات السخية من مجتمع Godot. شكرًا جزيلاً لكل من ساهم بوقته أو دعمه المالي للمشروع!
\ إذا كنت ترغب في دعم المشروع ماليًا ومساعدتنا في تأمين توظيفنا المستقبلي، يمكنك القيام بذلك باستخدام منصة صندوق تطوير Godot التي تديرها مؤسسة Godot. هناك أيضًا العديد من الطرق البديلة للتبرع والتي قد تجدها أكثر ملاءمة.
Clay John
\ نُشر أيضًا هنا
\ صورة بواسطة Denys Nevozhai على Unsplash


نسخ الرابطX (تويتر)لينكد إنفيسبوكالبريد الإلكتروني
مجلس الشيوخ الأمريكي يتجه نحو التصويت الأخير على التأكيد