كيفية إظهار عداد FPS في ألعاب Linux

How Show Fps Counter Linux Games



حصلت ألعاب Linux على دفعة كبيرة عندما أعلن الصمام دعم Linux لعميل Steam وألعابه في عام 2012. منذ ذلك الحين ، شقت العديد من ألعاب AAA والألعاب المستقلة طريقها إلى Linux وزاد عدد المستخدمين الذين يلعبون على Linux بشكل كبير.

مع نمو ألعاب Linux ، بدأ العديد من المستخدمين في البحث عن طرق مناسبة لعرض عداد الإطارات في الثانية (FPS) كتراكب على تشغيل ألعاب Linux. يساعد عداد FPS في تعديل أداء تشغيل الألعاب وكذلك في قياس القدرة الإجمالية للكمبيوتر الشخصي على ممارسة الألعاب بدقة مختلفة.







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



ملاحظات التوافق:



  • يعمل مع ألعاب OpenGL و Vulkan.
  • يعمل مع الألعاب المحلية و بروتون Proton هي طبقة توافق مضمنة في Steam لتشغيل ألعاب Windows في Linux. تعتمد على خمر و DXVK و D9VK مشاريع مفتوحة المصدر مع تصحيحات إضافية وميزات جديدة أضافها مطورو Valve / Wine.
  • يعمل مع الألعاب المشتراة على Steam أو ألعاب الطرف الثالث المضافة إلى Steam بواسطة المستخدم.
  • تم اختبار العمل باستخدام بطاقات رسومات Intel و AMD المدمجة.
  • لم يتم اختبارها باستخدام بطاقات NVIDIA لأنني لا أمتلك بطاقة NVIDIA. ولكن وفقًا لمنتديات مجتمع Steam ، يعمل عداد fps المدمج بشكل جيد على بطاقات NVIDIA.

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







يسمح لك Steam بإضافة ألعاب لم يتم شراؤها من Steam إلى مكتبة الألعاب ويعمل عداد FPS المدمج في هذه الألعاب أيضًا. لإضافة لعبة غير بخارية ، انقر فوق الألعاب ثم انقر فوق إضافة لعبة غير Steam إلى مكتبتي ، كما هو موضح في لقطة الشاشة أدناه:

تصفح إلى موقع ملفات اللعبة الخاصة بك ثم قم بتبديل خيار All Files في الأسفل.

حدد اللعبة القابلة للتنفيذ ثم انقر فوق إضافة برامج مختارة كما هو موضح في لقطة الشاشة أدناه:

إذا كنت ترغب في تشغيل لعبة Windows فقط في طبقة التوافق Proton الخاصة بـ Steam ، فسيتعين عليك تمكين خيار إضافي في خصائص اللعبة.

لقد أضفت SuperTuxKart القابل للتنفيذ في مكتبة Steam ، ويعمل عداد FPS بشكل جيد هنا أيضًا. لاحظ أن أي ألعاب تابعة لجهات خارجية تمت إضافتها إلى مكتبة Steam يجب ألا تحتوي على أي مسافات في مسار موقع الملف الخاص بها.

الطريقة الثانية (LibGL)

ملاحظات التوافق:

  • يعمل مع ألعاب OpenGL فقط.
  • يعمل مع الألعاب المحلية وألعاب النبيذ.
  • تم اختبار العمل باستخدام بطاقات رسومات Intel و AMD المدمجة مع برامج تشغيل مفتوحة المصدر.
  • لم يتم اختبارها باستخدام بطاقات NVIDIA لأنني لا أمتلك بطاقة NVIDIA. ومع ذلك ، يجب أن تعمل مع NVIDIA GPUs مع برامج تشغيل مفتوحة المصدر.

LibGL هي مكتبة Mesa تعرض OpenGL APIs للتطبيقات والألعاب ويتم تضمينها في جميع توزيعات Linux تقريبًا افتراضيًا. باستخدام هذه المكتبة وحزمة أخرى تنشئ HUD على شاشة مرئية ، سنعرض عداد FPS في ألعاب Linux. قم بتشغيل الأمر التالي لتثبيت الحزمة المطلوبة:

سودوملائمتثبيتxosd بن

لإظهار عداد FPS في ألعاب Linux الأصلية ، استخدم الأمر أدناه بعد استبدال المسار / إلى / القابل للتنفيذ بمسار لعبتك القابل للتنفيذ. يمكنك معرفة المزيد عن جميع خيارات osd-cat من هنا .

LIBGL_SHOW_FPS = 1 / مسار / إلى / قابل للتنفيذ 2> & 1 |
نقطة الإنطلاق / ديف / ستدير | sed -u -n -e '/ ^ libGL: FPS = /{s/.* ([^] * ) = / 1 /؛ p}' |
osd_cat --lines = 1 - اللون = أصفر - مخطط تفصيلي = 1 --pos = أعلى - محاذاة = يسار

لإظهار عداد FPS في ألعاب Windows التي تعمل على Linux من خلال Wine ، استخدم الأمر أدناه بعد استبدال / path / to / قابل للتنفيذ بمسار لعبتك القابل للتنفيذ.

WINEDEBUG = النبيذ fps / المسار / إلى / القابل للتنفيذ 2> & 1 | نقطة الإنطلاق / ديف / ستدير |
sed -u -n -e '/ trace / s /.* تقريبًا // p' | osd_cat - الخطوط = 1 - اللون = أصفر
- مخطط تفصيلي = 1 - موضع = أعلى - محاذاة = مركز

إذا كنت تستخدم بادئة Wine ، فسيكون الأمر (replace / path / to / wine / prefix و / path / to / قابل للتنفيذ):

WINEDEBUG = إطارات في الثانية WINEPREFIX = / path / to / wine / prefix wine
/ المسار / إلى / القابل للتنفيذ 2> & 1 | نقطة الإنطلاق / ديف / ستدير | sed -u -n -e '/ تتبع / s /
. * تقريبًا // p '| osd_cat --lines = 1 - اللون = أصفر - مخطط تفصيلي = 1 --pos = أعلى
- محاذاة = مركز

هذه الطريقة لها قيود صغيرة. بينما يمكنك تخصيص شاشة عرض osd-cat ، فإنها تظل في موضع ثابت في منطقة العرض دون مراعاة هندسة نافذة اللعبة. في لقطة الشاشة أعلاه ، يظهر عداد FPS أعلى نافذة اللعبة ، وليس بداخلها. لا تتأثر الألعاب التي تعمل في وضع ملء الشاشة بهذا.

الطريقة الثالثة (Gallium3D)

  • يعمل مع ألعاب OpenGL فقط.
  • يعمل مع الألعاب المحلية وألعاب النبيذ.
  • تم اختبار العمل باستخدام بطاقات رسومات AMD مع برامج تشغيل مفتوحة المصدر.
  • لا يزال دعم Gallium3D لشركة Intel مستمرًا ، لذا لا يعمل بعد.
  • لم يتم اختبارها باستخدام بطاقات NVIDIA لأنني لا أمتلك بطاقة NVIDIA. نظرًا لأن برنامج تشغيل NVIDIA مفتوح المصدر تم تمكين Gallium3D ، يجب أن تعمل هذه الطريقة.
  • الجاليوم 3 د هي واجهة برمجة تطبيقات تسهل تطوير برامج تشغيل لبطاقات الرسومات من خلال توفير مجموعة من المكتبات والواجهات القياسية. برامج تشغيل AMD و NVIDIA مفتوحة المصدر مبنية على Gallium3D.

    لإظهار عداد FPS في ألعاب Linux الأصلية ، استخدم الأمر أدناه بعد استبدال المسار / إلى / القابل للتنفيذ بمسار لعبتك القابل للتنفيذ:

    GALLIUM_HUD='بسيط ، إطار في الثانية' /طريق/إلى/تنفيذ

    لإظهار عداد FPS في ألعاب Windows التي تعمل على Linux من خلال Wine ، استخدم الأمر أدناه بعد استبدال / path / to / قابل للتنفيذ بمسار لعبتك القابل للتنفيذ.

    GALLIUM_HUD='بسيط ، إطار في الثانية' خمر /طريق/إلى/تنفيذ

    إذا كنت تستخدم بادئة Wine ، فسيكون الأمر (replace / path / to / wine / prefix و / path / to / قابل للتنفيذ):

    GALLIUM_HUD = 'simple، fps' WINEPREFIX = / path / to / wine / prefix wine / path / to / قابل للتنفيذ

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

    سودوملائمتثبيتأدوات المائدة
    GALLIUM_HUD=يساعدغلكسجيرز

    للإشارة فقط ، إليك الأمر المخصص الذي استخدمته في لقطات الشاشة أعلاه:

    GALLIUM_HUD='simple ، fps؛ sensors_temp_cu-amdgpu-pci-1c00.temp1؛
    sensors_temp_cu-k10temp-pci-00c3.Tdie '
    /طريق/إلى/تنفيذ

    الطريقة الرابعة (جدول Vulkan Overlay)

    ملاحظات التوافق:

    • يعمل مع ألعاب Vulkan فقط.
    • يعمل مع Ubuntu 19.10+ فقط والتوزيعات الأخرى التي تحتوي على أحدث ميسا مع طبقة تراكب فولكان.
    • يعمل مع الألعاب الأصلية وألعاب Steam Proton التي تعمل بدعم DXVK / D9VK.
    • يعمل مع ألعاب Wine التي تعمل مع DXVK / D9VK libs.
    • حالة العمل غير معروفة لـ Wine Vkd3d . نظرًا لأن هذه طبقة Vulkan ، يجب أن تعمل مع أي شيء طالما تم إنشاء Mesa بدعم VK_LAYER_MESA_overlay.
    • تم اختبار العمل باستخدام بطاقات رسومات AMD وبطاقات Intel المدمجة مع برامج تشغيل مفتوحة المصدر.
    • لم يتم اختبارها باستخدام بطاقات NVIDIA لأنني لا أمتلك بطاقة NVIDIA. نظرًا لأن هذه طبقة Vulkan ، يجب أن تعمل مع أي شيء طالما تم إنشاء Mesa بدعم VK_LAYER_MESA_overlay.

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

    لإظهار عداد FPS في ألعاب Linux الأصلية ، استخدم الأمر أدناه بعد استبدال المسار / إلى / القابل للتنفيذ بمسار لعبتك القابل للتنفيذ:

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG = الموضع = أعلى اليسار / المسار / إلى / قابل للتنفيذ

    لإظهار عداد FPS في ألعاب Windows التي تعمل على Linux من خلال Wine و DXVK ، استخدم الأمر أدناه بعد استبدال / path / to / قابل للتنفيذ بمسار لعبتك القابل للتنفيذ:

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG = الموضع = النبيذ العلوي الأيسر / المسار / إلى / قابل للتنفيذ

    إذا كنت تستخدم بادئة Wine ، فسيكون الأمر (replace / path / to / wine / prefix و / path / to / قابل للتنفيذ):

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_overlay
    VK_LAYER_MESA_OVERLAY_CONFIG = الموضع = أعلى اليسار
    WINEPREFIX = / المسار / إلى / النبيذ / البادئة النبيذ / المسار / إلى / القابل للتنفيذ

    الطريقة الخامسة (DXVK HUD)

    ملاحظات التوافق:

    • يعمل فقط مع ألعاب Vulkan التي تعمل في Wine و Proton مع DXVK / D9VK libs.
    • تم اختبار العمل مع AMD وبطاقات رسومات Intel المدمجة مع برامج تشغيل مفتوحة المصدر.
    • لم يتم اختبارها باستخدام بطاقات NVIDIA لأنني لا أمتلك بطاقة NVIDIA. يحتوي كود المصدر على التزامات تذكر دعم NVIDIA لذا يجب أن تعمل هذه الطريقة.

    يوفر DXVK طبقة ترجمة تستند إلى Vulkan لـ D3D10 و D3D11 مما يسمح للمستخدمين بتشغيل ألعاب Direct3D 10/11 على نظام Linux. تستخدم D9VK الواجهة الخلفية DXVK لتوفير تنفيذ Direct3D9 إضافي يمكن استخدامه لتشغيل الألعاب المبنية على D3D9.

    لإظهار عداد FPS في ألعاب DXVK التي تعمل على Linux من خلال Wine ، استخدم الأمر أدناه بعد استبدال / path / to / قابل للتنفيذ بمسار لعبتك القابل للتنفيذ:

    DXVK_HUD= إطارا في الثانيةخمر /طريق/إلى/تنفيذ

    إذا كنت تستخدم بادئة Wine ، فسيكون الأمر (replace / path / to / wine / prefix و / path / to / قابل للتنفيذ):

    DXVK_HUD= إطارا في الثانيةWINEPREFIX=/طريق/إلى/خمر/اختصارخمر /طريق/إلى/تنفيذ

    هذا يمثل نهاية هذا المنشور. في الختام ، أود أن أذكر أحد التفاصيل الصغيرة التي تم حذفها من الأعلى. ستعمل جميع الطرق غير البخارية الموضحة أعلاه مع ألعاب Steam أيضًا. يجب عليك استبدال / path / to / قابل للتنفيذ أو wine / path / to / قابل للتنفيذ أو WINEPREFIX = / path / to / wine / prefix wine / path / to / القابل للتنفيذ باستخدام٪ command٪ في نفس الأوامر المستخدمة أعلاه. ما عليك سوى إضافة الأمر الكامل لتشغيل الخيارات في خصائص اللعبة داخل تطبيق Steam ، كما هو موضح في لقطة الشاشة أدناه: