הפלאגין ADPF Unreal Engine

הפלאגין Android Dynamic Performance Framework) (ADPF) ל-Unreal Engine מספק ביצועים יציבים ומונע ויסות תרמי.

אפשר להוריד את הפלאגין מ-GitHub.

איך משתמשים בתוסף ADPF Unreal Engine

  1. הורדת הפלאגין

  2. מעתיקים את הפלאגין לתיקיית הפלאגינים של הפרויקט.

  3. הפעלת התוסף ADPF Unreal Engine בעורך Unreal

  4. הפעלה מחדש של Unreal Editor

  5. בנייה ובישול של המשחק

מפעילים את הפלאגין ADPF Unreal Engine.
איור 1. מפעילים את הפלאגין ADPF Unreal Engine.

הגדרת מסוף הפלאגין

לתוסף יש את משתני המסוף של Unreal Engine הבאים, שמאפשרים לשנות את אפשרויות התוסף בזמן הריצה:

CVar

ערכים תקינים

ערך ברירת מחדל

תיאור

r.AndroidPerformanceEnabled

‫0, 1

1

הפעלה או השבתה של הפלאגין Android Performance. התוסף משתמש ב-Android adaptability API כדי להתאים את הגדרות המשחק בהתאם למצב התרמי של המכשיר, ויבצע התאמות ב-CPU לפי הצורך.

‫0: מושבת

‫1: מופעל

r.AndroidPerformanceHintEnabled

‫0, 1

1

הפעלה או השבתה של הכלי לניהול רמזים לשיפור הביצועים. כדי לשפר את הביצועים של פרוטוקול Thread במכשירי Android נתמכים, מומלץ להפעיל את ההגדרה הזו.

‫0: מושבת

‫1: מופעל

r.AndroidPerformanceChangeQualities

0, 1, 2

1

בוחרים איך הסטטוס התרמי ישפיע על רמת הדיוק של המשחק.

‫0: המערכת לא משנה אף הגדרה

‫1: ההגדרות מותאמות בהתאם למרווח התרמי

‫2: ההגדרות משתנות בהתאם לנתוני החיישן התרמי

איך פועל הפלאגין ADPF Unreal Engine

התוסף קורא לפונקציה Monitor() בכל פריים ובודק את הזמן שחלף מאז הבדיקה התרמית הקודמת. אם עברה לפחות שנייה אחת, התוסף קורא את הטמפרטורה הנוכחית וקובע אם יש צורך בשינוי באיכות הגרפיקה (לדוגמה, אם המשחק מוגבל מבחינת ביצועים בגלל חום או קרוב לסף של הגבלת ביצועים בגלל חום), ומשנה את ההגדרות בהתאם.

התוסף גם מדווח על משך הפריימים בפועל ועל משך הפריימים שהוגדר כיעד ל-API של הפעלת רמזים לשיפור הביצועים, ומשפר את תדירות המעבד או מתאים את תזמון המעבד לפי הצורך.

תרשים זרימה של הפלאגין ADPF Unreal Engine.
איור 2. תרשים זרימה של הפלאגין ADPF Unreal Engine.

איך משנים את איכות הגרפיקה בהתאם למצב התרמי

התוסף משנה את איכות הגרפיקה באמצעות Unreal Engine Scalability על סמך המשוב שמתקבל מ-Thermal APIs. ל-Unreal Engine Scalability יש ארבע רמות, מ-3 (האיכות הכי גבוהה) עד 0 (האיכות הכי נמוכה). כל רמה ממופה לסולם רזולוציה, למרחק הצפייה, להחלקת קצוות, לעיבוד שלאחר הצילום ולתכונות אחרות.

מדרגיות של Unreal Engine.
איור 3. מדרגיות של Unreal Engine.

ל-ADPF יש שתי דרכים לקבוע את המצב התרמי של המכשיר: מרווח תרמי וסטטוס תרמי. הערך של מרווח הביטחון התרמי מדויק יותר, ולכן הפלאגין משתמש בו כברירת מחדל ומשבית את Thermal Status API.

השינויים ב-Unreal Engine Scalability מבוססים על ערכי הטמפרטורה הבאים:

מרווח תרמי

  • < 0.75: רמת איכות 3
  • 0.75 עד 0.85: רמת איכות 2
  • 0.85 עד 0.95: רמת איכות 1
  • > 0.95: רמת איכות 0

סטטוס תרמי

  • ללא: רמת איכות 3
  • תאורה: רמת איכות 2
  • בינונית: רמת איכות 1
  • חמורה וקריטית: רמת איכות 0

מידע נוסף זמין במאמר בנושא Thermal API.

ממשקי API להצגת רמזים לשיפור הביצועים

לתוסף יש שני סוגים של הפעלות של רמזים לשיפור הביצועים – אחת לשרשור של המשחק ואחת לשרשורים של הרינדור (שרשורים של רינדור ו-RHI). שני הסוגים האלה של רמזים לשיפור הביצועים משמשים לדיווח על משך הזמן בפועל ועל משך הזמן הרצוי של כל פריים. המערכת משנה את תדירות המעבד ומבצעת בחירות טובות יותר בתזמון, אם משך הזמן בפועל שונה ממשך הזמן שהוגדר כיעד.

פרטים נוספים זמינים במאמר בנושא Performance Hint API.

שיטות מומלצות

הפלאגין מונע ויסות תרמי ומספק יעד FPS קבוע עם ההטמעה הבסיסית שלו. כדי להשיג תוצאות מיידיות, צריך להחיל את ADPF עם רמות ברירת המחדל של מדרגיות Unreal Engine.

עם זאת, כל משחק שונה, ולכן צריך לכוונן את רמות ההתאמה לכל פרמטר, כמו קנה מידה של רזולוציה, מרחק צפייה, החלקת קצוות, עיבוד פוסט, צללים, טקסטורות ואפקטים, כדי ש-ADPF יוכל לספק ביצועים דינמיים מלאים למשחק.

אלה שלושת השלבים העיקריים להשגת התוצאות הטובות ביותר באמצעות התוסף ADPF Unreal:

  • קובעים נקודת התחלה: לפני שמשתמשים ב-ADPF, חשוב ליצור פרופיל מפורט של הביצועים של המשחק. הנתונים האלה ישמשו כנקודת השוואה חשובה אחרי שתטמיעו את הפלאגין.
    שיטות מומלצות לשימוש ב-ADPF ב-Unreal Engine.
    איור 4. קובעים סקר ראשוני.
  • ניצול יכולת ההתאמה של Unreal: כדאי להתנסות ב-Unreal Scalability, גם אם היא מציעה שיפורים קלים בלבד בביצועים. כך תוכלו ליהנות משיפורים בביצועים בלי להתאמץ יותר מדי.
    שיטות מומלצות לשימוש ב-ADPF ב-Unreal Engine.
    איור 5. מנצלים את יכולת ההתאמה של Unreal.
  • קביעת עדיפות להגדרות הגרפיקה במשחק: כדאי לבצע אופטימיזציה של רמות איכות הגרפיקה במשחק. ההגדרות האלה מותאמות במיוחד לתוכן של המשחק, כדי להבטיח קצב פריימים חלק יותר וניהול תרמי טוב יותר.
    שיטות מומלצות לשימוש ב-ADPF ב-Unreal Engine.
    איור 6. קובעים עדיפות להגדרות הגרפיקה במשחק.