120fps في تطوير التطبيقات المحمولة — ما هو، ميزات ProMotion والتحسين

المؤلف: IT Sectr نُشر: 2026-04-01 وقت القراءة: 8 دق

120fps — معدل 120 إطارًا في الثانية متاح على شاشات بمعدل تحديث 120 هيرتز، حيث يستغرق كل إطار 8.3 مللي ثانية. وفقًا لـ Apple WWDC 2023 Session، يقوم ProMotion بتبديل التردد تلقائيًا من 24 إلى 120 هيرتز للموازنة بين السلوسة واستهلاك الطاقة. 8.3 مس هو نصف الميزانية القياسية، مما يتطلب تحسينًا جديًا للعرض.

النقاط الرئيسية

  • 120fps — معدل 120 إطارًا في الثانية بميزانية عرض 8.3 مس لكل إطار
  • ProMotion — تقنية Apple بتردد ديناميكي من 24 إلى 120 هيرتز
  • شاشات LTPO — ألواح بأكسيد متعدد البلورات منخفض الحرارة تدعم 1–120 هيرتز
  • Frame pacing — انتظام إخراج الإطارات، أمر حاسم عند 120fps
  • التحسين لـ 120fps يتطلب برمجية تفوق كفاءة برمجية 60fps بمضعفين

ما هو 120fps

120fps هو ضعف معدل الإطارات القياسي، حيث تقوم الشاشة بتحديث الصورة 120 مرة في الثانية. لكل إطار ميزانية زمنية قدرها 8.33 مس — نصف ميزانية 60fps. هذا يعني أن وحدة معالجة الرسومات (GPU) ووحدة المعالجة المركزية (CPU) تجب أن تعالج الرسوميات بسرعة مضاعفة، وجميع الخوارزميات التي تعمل خلال 16.7 مس عند 60fps لا تناسب عند 120fps إلا إذا كانت ضعف الكفاءة.

كان أول جهاز محمول بشاشة 120 هيرتز هو Razer Phone (2017) بلوحة IGZO من Sharp. قدمت Apple تقنية 120 هيرتز في iPad Pro (2017) تحت اسم ProMotion، وفي iPhones فقط عام 2021 مع iPhone 13 Pro. على Android، أصبحت 120 هيرتز سائدة منذ عام 2020: Samsung Galaxy S20، OnePlus 8 Pro، Xiaomi Mi 10. اليوم، 90–120 هيرتز هو المعيار للأجهزة الرائدة، وتقنية LTPO تمكّن من التبديل الديناميكي للتردد.

يختلف إدراك المستخدم لـ 120fps عن 60fps ليس بعدم التقطيع، ولكن بـ الشعور بالاستجابة الفورية — المؤشر، التمرير، والرسوم المتحركة تتبع الإصبع بأقل زمن استجابة. يتم وصف هذا الشعور عادة بأنه شاشة «سائلة» أو «زيتية». بعد استخدام 120 هيرتز، العودة إلى 60 هيرتز تبدو ذاتيًا كأنها بطيئة، حتى لو لم يكن هناك انخفاضات موضوعية في الإطارات.

كيف تعمل شاشات 120 هيرتز

تقوم شاشة 120 هيرتز فيزيائيًا بتحديث البكسلات 120 مرة في الثانية، مرسلة إشارة عبر ناقل MIPI DSI/DPI بتردد مضاعف. يتلقى كل بكسل قيمة سطوع جديدة كل 8.3 مس. بالنسبة للألواح OLED، هذا يعني أن وقت الانبعاث لكل بكسل فرعي ينخفض، ما يتطلب إضاءة خلفية أكثر سطوعًا للحفاظ على نفس سطوع الصورة.

تقنية LTPO

LTPO (أكسيد متعدد البلورات منخفض الحرارة) هي تقنية تصنيع شاشات OLED تجمع بين LTPS (سرعة تبديل عالية) وIGZO (استهلاك طاقة منخفض في الحالة الساكنة). تسمح LTPO للشاشة بتغيير معدل التحديث ديناميكيًا من 1 إلى 120 هيرتز دون تكلفة طاقة إضافية. في وضع Always-On Display، ينخفض التردد إلى 1 هيرتز؛ أثناء التمرير، يرتفع إلى 120 هيرتز. يوفر هذا توفيرًا في الطاقة بنسبة تصل إلى 30% مقارنة بالشاشات التي تعمل بشكل مستمر على 120 هيرتز.

Frame Pacing عند 120fps

Frame pacing — انتظام الفواصل بين الإطارات، هو أهم معلم عند 120fps. بينما عند 60fps يكون فرق 2–3 مس بين الإطارات غير ملحوظ، فإن نفس الفرق المطلق عند 120fps يشكل 25% من مدة الإطار ويُرى كتقطيع. للحصول على 120fps سلس، يجب أن ينتهي كل إطار خلال 8.3 مس ±1 مس. تظهر أدوات مثل FrameRate في Xcode Instruments ليس فقط متوسط FPS ولكن أيضًا مخططًا بيانيًا للفواصل لتقييم frame pacing.

swift
// iOS — اكتشاف شاشة 120 هيرتز عبر CADisplayLink
func checkDisplayRefreshRate() {
    let link = CADisplayLink(target: self,
                                  selector: #selector(step))
    if let preferredRate = link?.preferredFrameRateRange {
        print("التردد الأقصى: \(preferredRate.maximum) هرتز")
    }
}

ProMotion في iOS

ProMotion هو علامة Apple التجارية للشاشات ذات معدلات تحديث متكيفة تصل إلى 120 هيرتز. طرحت أولًا في iPad Pro 10.5 (2017)، ثم ظهرت في iPhone 13 Pro (2021) وMacBook Pro (2021). ProMotion ليس مجرد 120 هيرتز — إنه إدارة ذكية للتردد: يحلل النظام نوع المحتوى ويبدل التردد للحصول على التوازن الأمثل بين الأداء واستهلاك الطاقة.

أوضاع تشغيل ProMotion

ProMotion يدعم أربعة أوضاع: 24 هيرتز للمحتوى الثابت وفيديو 24fps، 30 هيرتز لفيديو 30fps، 60 هيرتز لتصفح واجهة المستخدم، و120 هيرتز للتمرير والألعاب. يحدث التبديل بين الأوضاع خلال إطار واحد (8.3 مس) ويكون غير محسوس للمستخدم. يمكن للمطورين التأثير على اختيار التردد عبر preferredFrameRateRange في CADisplayLink، ولكن القرار النهائي يتخذه النظام بناءً على تحليل المحتوى.

API للمطورين

توفر Apple واجهات برمجة للعمل مع ProMotion ابتداءً من iOS 15. يسمح CADisplayLink.preferredFrameRateRange بتحديد نطاق تردد مفضل. UIScene.ActivationConditions يمكن أن يؤثر على التردد عند الانتقال بين المشاهد. لتصدير Metal، يجب أن يكون CAMetalLayer.displaySyncEnabled true للمزامنة مع ProMotion. إذا لم يكن التطبيق محسنًا لـ 120fps، يقوم iOS تلقائيًا بتحويله إلى 60 هيرتز، وهذا ظاهر في Xcode تحت قسم GPU Report.

swift
// iOS — طلب 120fps لوضع اللعب
let displayLink = CADisplayLink(
    target: self,
    selector: #selector(gameLoop)
)
if #available(iOS 15.0, *) {
    displayLink?.preferredFrameRateRange =
        CAFrameRateRange(minimum: 80,
                          maximum: 120,
                          preferred: 120)
}
displayLink?.add(to: .current,
                    forMode: .default)

التحسين لـ 120fps

التحسين لـ 120fps ليس مجرد مضاعفة سرعة البرمجية، ولكن إعادة تفكير هندسة العرض. العمليات التي كانت تنتهي خلال 16.7 مس عند 60fps يجب الآن أن تكتمل خلال 8.3 مس. هذا يؤثر على جميع مراحل خط التجهيز: تحضير CPU، عرض GPU، واستدعاءات النظام.

تقليل draw calls لـ 120fps

عند 120fps، يجب أن يكون عدد draw calls لكل إطار نصف ذلك عند 60fps للحفاظ على نفس حمل GPU. إذا كان 400 draw call مقبولة عند 60fps، فلا يسمح بأكثر من 200 عند 120fps. استخدم أتلسات النسيج، دمج الشبكات، والإنستانسينغ على GPU لتقليل استدعاءات الرسم. على Metal، استخدم Indirect Command Buffers؛ على Vulkan، استخدم Secondary Command Buffers للتسجيل المتوازي للأوامر.

Shaders — عامل حاسم آخر. يمكن للشيدرات المعقدة للبكسل بعمليات أخذ عينات نسيج متعددة وعمليات رياضية أن تتجاوز ميزانية 8.3 مس بسهولة. استخدم شيدرات منخفضة الدقة (half بدلًا من float)، قلّل عدد التعليمات وعينات النسيج. على معالجات GPU المحمولة (Apple A17، Snapdragon 8 Gen 3)، كل أخذ عينة نسيج يستغرق 2–4 دورات، وعند 120fps يمكن أن يصبح هذا عنق زجاجة.

CPU والخيط الرئيسي

عند 120fps، يجب على الخيط الرئيسي تحضير إطار خلال 4–5 مس لترك وقت لعرض GPU. أي عملية متزامنة على الخيط الرئيسي — قراءة من قاعدة البيانات، تحليل JSON، تحميل الصور — تخلق تقطيعًا. انقل جميع العمليات الثقيلة إلى خيوط خلفية، استخدم واجهات برمجة غير متزامنة ومجموعات خيوط. في iOS، يجب حجز DispatchQueue مع qualityOfService .userInteractive فقط للبرمجية الحرجة للعرض.

المكوّنميزانية 120fpsميزانية 60fps
CPU (الخيط الرئيسي)4 مس8 مس
عرض GPU4 مس8 مس
التركيب0.3 مس0.7 مس
انتظار VSync0–2 مس0–5 مس

120fps مقابل 60fps

مقارنة 120fps و60fps ليست مجرد مضاعفة السلوسة. يختلف الإدراك حسب نوع المحتوى. للتمرير ورسوم UI، يوفر 120fps واجهة أكثر «استجابة» ذاتيًا. للألعاب، يظهر تفوق 120fps في تقليل ضبابية الحركة وتتبع أكثر دقة للأجسام السريعة.

استهلاك الطاقة — المقايضة الرئيسية. يستهلك 120fps طاقة أكثر بنسبة 30–50% مقارنة بـ 60fps عند نفس سطوع الشاشة. هذا يعني أنه على بطارية 4000 ميلي أمبير، ساعة لعب عند 120fps تستنزف البطارية بسرعة أكبر بنسبة 25–30%. تحل شاشات LTPO المشكلة جزئيًا عن طريق خفض التردد في المشاهد الثابتة إلى 1 هيرتز، ولكن أثناء الاستخدام النشط (التمرير، الألعاب) يبقى التردد عند الحد الأقصى.

يعتمد اختيار 60fps أو 120fps على أولويات المطور. للشبكات الاجتماعية، تطبيقات التراسل، وتطبيقات الأخبار، لا يوفر 120fps ميزة كبيرة — التفاعل الرئيسي (القراءة، إدخال النص) لا يستفيد من السلوسة الفائقة. للألعاب، الخرائط، برامج التحرير الرسومي، والتطبيقات ذات الرسوم المتحركة المكثفة، يصبح 120fps ميزة تنافسية وعلامة جودة.

اختبار 120fps يتطلب نهجًا خاصًا: المقاييس القياسية لـ 60fps لا تكشف مشاكل frame pacing عند 120 هيرتز. استخدم كاميرا عالية السرعة (120+ fps) لتسجيل سلوك الشاشة الفعلي أو أدوات المنصة المضمنة — Xcode Metal Capture لـ iOS وAGI (Android GPU Inspector) لـ Android. تظهر هذه الأدوات الوقت المضبوط لكل إطار، بما في ذلك انتظار VSync، وتساعد في تحديد التقطيعات الدقيقة.

الأسئلة الشائعة

هل 120fps أفضل دائمًا من 60fps؟

ليس دائمًا. يتطلب 120fps ضعف الطاقة والموارد الحاسوبية. للمحتوى الثابت وواجهات المستخدم البسيطة، 60fps كافي. ميزة 120fps واضحة في المشاهد الديناميكية: التمرير، الألعاب، رسوم الانتقال.

كيف أتحقق من أن التطبيق يعمل بـ 120fps؟

استخدم Xcode Instruments (قالب Core Animation) أو Android Studio Profiler. في iOS، تحقق من CADisplayLink.timestamp — يجب أن يكون الفاصل بين الاستدعاءات حوالي 8.3 مس. في Android، قم بتفعيل Show refresh rate في Developer Options.

لماذا يستنزف 120fps البطارية بسرعة أكبر؟

تقوم الشاشة بتحديث البكسلات ضعف المرات، وتُنفّذ GPU ضعف عمليات العرض، وتعالج CPU ضعف الإطارات. كل عملية تستهلك طاقة. تخفض شاشات LTPO التردد في الحالة الساكنة، ولكن أثناء الاستخدام النشط، يزداد استهلاك الطاقة بنسبة تتناسب مع التردد.

هل يمكن للتطبيق العمل بـ 120fps على Android؟

نعم. ابتداءً من Android 11، يدعم النظام معدلات تحديث مختلفة. يمكن للمطورين طلب 120 هيرتز عبر WindowManager.setPreferredRefreshRate. ولكن ليس جميع الأجهزة تثبت 120fps بشكل مستقر — يلزم تحسين عرض GPU.

هل سيلاحظ المستخدم العادي الفرق بين 60 و120fps؟

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

الملخص

  • 120fps — معدل إطارات بميزانية 8.3 مس لرسوم متحركة فائقة السلوسة
  • ProMotion — تقنية Apple المتكيفة بمدى 24–120 هيرتز
  • شاشات LTPO تغير التردد ديناميكيًا من 1 إلى 120 هيرتز لتوفير الطاقة
  • Frame pacing حاسم عند 120fps — عدم انتظام 2–3 مس ملحوظ بفعل
  • Draw calls عند 120fps لا يجب أن تتجاوز 200 لكل إطار
  • استهلاك الطاقة عند 120fps أعلى بنسبة 30–50% من 60fps
  • اختيار 120fps مبرر لـ الألعاب، الخرائط، والتطبيقات ذات الرسوم المتحركة المكثفة

سنقوم بتطوير تطبيق جوال جاهز

تقدم IT Sectr تطبيقات iOS وAndroid للشركات الناشئة والشركات منذ عام 2017. سوف نقدم لك النصح ونقترح أفضل حل.

مناقشة المشروع

اقرأ أيضًا