
Mir 2: Return of the King هي لعبة متوافقة مع الأجهزة الجوّالة عالية الجودة من IP Legend مرخّصة من Actoz Soft وطوّرتها شركة HK ZHILI YAOAN LIMITED باستخدام محرّك ألعاب Unity.
لا تعيد هذه اللعبة فقط بشكلٍ مثالي شعور Mir 2، وهو أحد نماذج ألعاب تقمّص الأدوار المتعدّدة اللاعبين على الإنترنت في كوريا، بل تقدّم أيضًا العديد من محتويات اللعبة الأكثر رواجًا، مثل جمع المعدّات والهجوم بالرمل على نطاق واسع وغيرها من ميزات أسلوب اللعب الأساسية.
استخدمت اللعبة مكتبة Frame Pacing (Swappy) من Android لتحسين ثبات عدد اللقطات في الثانية وتحقيق عرض سلس وتحسين "مؤشرات Android الحيوية" بشكل كبير (مقياس الجلسات البطيئة).
إطلاق ميزة "الجلسات البطيئة" في "مؤشرات Android الحيوية"
الجلسات البطيئة هي مقياس من مقاييس "مؤشرات Android الحيوية" في وحدة تحكّم Google Play. الجلسة البطيئة هي جلسة تضمّ أكثر من% 25 من اللقطات البطيئة. وتكون اللقطة بطيئة في الحالات التالية:
عند 20 لقطة في الثانية، لا يتم عرض الإطار خلال 50 ملي ثانية بعد الإطار السابق.
عند 30 لقطة في الثانية، لا يتم عرض الإطار خلال 34 ملي ثانية بعد الإطار السابق.
وفي الوقت المناسب، سيبدأ Play بإبعاد المستخدمين عن الألعاب التي لا يمكنها تحقيق معدّل 20 لقطة في الثانية على هواتفهم.
هناك العديد من الأسباب التي قد تؤدي إلى عرض اللقطة أو عرضها على الشاشة لفترة أطول مما هو مطلوب في وقت عرض اللقطة المستهدَف الذي حدّده المطوّر. قد تكون اللعبة مرتبطة بوحدة المعالجة المركزية أو وحدة معالجة الرسومات، أو قد ترتفع درجة حرارتها (ما يؤدي إلى تقييد الأداء بسبب الحرارة)، أو قد يكون هناك عدم تطابق بين معدل معالجة الصور في اللعبة ومعدل تحديث شاشة الجهاز.
ما هي مكتبة تنظيم سرعة عرض اللقطات؟
مكتبة "معدّل عرض اللقطات" في Android، والمعروفة أيضًا باسم Swappy، هي جزء من مكتبات AGDK. يساعد Swappy ألعاب OpenGL وVulkan في تحقيق عرض سلس و معدّل عرض لقطات صحيح على Android.
تتعامل المكتبة مع معدّلات تكرار عرض متعددة إذا كان الجهاز متوافقًا معها، ما يمنح اللعبة مرونة أكبر في عرض اللقطة. على سبيل المثال، بالنسبة إلى الجهاز المتوافق مع معدّل تحديث 60 هرتز و90 هرتز، يمكن أن تنخفض معدّل اللقطات في الثانية للعبة التي لا يمكنها توليد 60 لقطة في الثانية إلى 45 لقطة في الثانية بدلاً من 30 لقطة في الثانية للحفاظ على fluidity. ترصد المكتبة عدد اللقطات في الثانية المتوقّع في اللعبة وتضبط أوقات عرض اللقطات تلقائيًا وفقًا لذلك.
تعمل مكتبة "معدّل عرض اللقطات" أيضًا على إطالة عمر البطارية لأنّها تتجنّب إجراء تعديلات غير ضرورية على الشاشة. على سبيل المثال، إذا كانت سرعة عرض اللقطات في لعبة فيديو تبلغ 60 لقطة في الثانية، ولكن يتم تعديل الشاشة بمعدّل 120 هرتز، يتم تعديل الشاشة مرّتين لكل لقطة. تتجنّب مكتبة "معدّل عرض اللقطات" حدوث ذلك من خلال ضبط معدّل التحديث على القيمة المتوافقة مع الجهاز الأقرب إلى معدّل اللقطات المستهدَف في الثانية.
كيفية تحسين Mir 2 لأداء العرض باستخدام مكتبة Frame Pacing
كان تطبيق Mir 2 (미르2: 왕의 귀환) يواجه مشكلة في ثبات أداء العرض، حيث كانت جلسات العرض البطيئة تبلغ نسبتها% 40 عند رصد معدل عرض تصاعدي يبلغ 20 لقطة في الثانية، وهو أعلى بكثير من الحدّ المسموح به في Google Play والذي يبلغ% 20.

لعبة Mir 2 (미르2: 왕의 귀환) هي لعبة ذات رسومات عالية الدقة، وتواجه بعض الأجهزة تحديات في الحفاظ على عدد ثابت من اللقطات في الثانية. يُظهر توزيع عدد اللقطات في الثانية أنّ الكثير من الجلسات يتم تشغيلها عند عدد لقطات في الثانية أقل من 20 لقطة في الثانية.

يمثّل كلّ مجموعة النسبة المئوية للجلسات التي كانت فيها 75% من اللقطات أسرع من تصنيف المجموعة.
عندما يستغرق عبء العمل المعروض وقتًا أطول من عبء العمل في التطبيق، تتم إضافة رسومات إضافية إلى قائمة الانتظار. يؤدي ذلك مرة أخرى إلى حدوث تقطُّع في الفيديو، وقد يؤدي أيضًا إلى تأخير إضافي في عرض اللقطات بسبب ميزة "ملء مساحة التخزين المؤقت".

تحل مكتبة "معدّل عرض اللقطات" هذه المشكلة باستخدام حدود المزامنة
(EGL_KHR_fence_sync
وVkFence
) لمحاولة تقليل وقت الانتظار في التطبيق، وبالتالي السماح لمسار العرض باللحاق بالعرض، بدلاً من السماح بزيادة الضغط الخلفي. لا يزال الإطار (أ) يعرض إطارًا إضافيًا
، ولكن الإطار (ب) يعرض الآن بشكل صحيح.

دمج فريق Mir 2 مكتبة "معدّل عرض اللقطات" بسهولة من خلال الاستفادة من ميزة معدّل عرض اللقطات المحسّن المضمّنة في Unity. أدّى الإجراء إلى تحسُّن ملحوظ في أداء العرض، وانخفاض قيمة مقياس الجلسات البطيئة من %40 إلى %10 على وجه التحديد.

انخفض عدد الجلسات البطيئة بشكل كبير في Mir2 بعد دمج المكتبة.

يمثّل كلّ مجموعة النسبة المئوية للجلسات التي كانت فيها 75% من اللقطات أسرع من تصنيف المجموعة.
بدء استخدام مكتبة "معدّل عرض اللقطات"
كيفية استخدام مكتبة Frame Pacing في محرّكات الألعاب الأصلية
اطّلِع على الأدلة التالية لدمج مكتبة Android Frame Pacing في لعبتك:
- دمج ميزة "معدّل عرض اللقطات" في Android مع أداة عرض Vulkan
- دمج ميزة "معدّل عرض اللقطات" في Android مع أداة عرض OpenGL
كيفية استخدام مكتبة Frame Pacing في محرّك ألعاب Unity
دمج فريق Unity مكتبة Android Frame Pacing في المحرّك. لتفعيل هذه الميزة في Unity، ضَع علامة في مربّع الاختيار معدل عرض اللقطات المحسَّن ضمن إعدادات المشروع > المشغّل > إعدادات Android > الدقة وعرض الفيديو:

بدلاً من ذلك، يمكنك تفعيل خيار "معدّل عرض اللقطات المحسّن" برمجيًا في رمز المنطق للسماح لـ Unity بتوزيع اللقطات بالتساوي لتقليل التباين في معدّل عرض اللقطات، ما يؤدي إلى تحسين تجربة اللعب.
كيفية استخدام مكتبة "معدّل عرض اللقطات" في محرّك ألعاب Unreal
يدمج الإصدار 4.25 من Unreal Engine والإصدارات الأحدث مكتبة Frame Pacing في Android، وهي جزء من مجموعة تطوير ألعاب Android. توضّح مقالة تنظيم سرعة عرض اللقطات في الأجهزة الجوّالة كيفية تفعيل مكتبة Android لتنظيم سرعة عرض اللقطات وكيفية التحكّم في هذه السرعة من خلال رمز C++.