Vulkan הוא ממשק API מודרני לגרפיקת 3D בפלטפורמות שונות, שנועד לצמצם את רמת ההפשטה בין חומרת הגרפיקה של המכשיר לבין המשחק. Vulkan הוא ממשק ה-API הראשי של גרפיקה ברמה נמוכה ב-Android, שמחליף את OpenGL ES. עדיין יש תמיכה ב-OpenGL ES ב-Android, אבל כבר לא מתבצעת פיתוח תכונות פעיל. ל-Vulkan יש את היתרונות הבאים על פני OpenGL ES:
- ארכיטקטורה יעילה יותר עם פחות עומס על המעבד במנהל הגרפיקה
- אסטרטגיות אופטימיזציה חדשות לשיפור ביצועי המעבד
- תכונות גרפיות חדשות שלא זמינות ב-OpenGL ES, כמו ממשקי API ללא קישור (bindless) ומעקב קרניים (ray tracing)
Vulkan זמין ב-Android מגרסה Android 7 (רמת API 24). כל מכשירי Android עם מעבד 64 ביט מגרסה Android 10 (רמת API 29) ואילך תומכים ב-Vulkan 1.1. 85% מהמכשירים הפעילים עם Android תומכים ב-Vulkan. פרופיל Android Baseline מגדיר קבוצת תכונות מינימלית למכשירים שתומכים ב-Vulkan.
Vulkan עוזר לכם ליצור משחקים עם מראה טוב יותר וביצועים טובים יותר. Vulkan מאפשר לכם לממש את מלוא הפוטנציאל של חומרת הגרפיקה המודרנית. Vulkan משמש את מסגרת הרינדור של ממשק המשתמש של Android במכשירים תואמים. בגרסאות הנוכחיות של מנועי המשחקים Unity ו-Unreal, Vulkan נבחר כמפעיל התצוגה כברירת מחדל במכשירי Android תואמים. הפרויקט ANGLE מטמיע הטמעה תואמת של OpenGL ES API מעל Vulkan.
שנתחיל?
C/C++
במאמר תחילת העבודה עם Vulkan ב-Android מוסבר איך משתמשים ב-Vulkan במנוע המשחקים ב-C/C++ ב-Android.
בנוסף, בתיעוד של Native Development Kit (NDK) יש קטע כללי של Vulkan למפתחים שלא מתמקדים במשחקים, שכולל את הנושאים הבאים:
- מַעְרְכּי שַדְר (shader) לשיפור הביצועים
- שכבות אימות לניפוי באגים בקוד Vulkan
- תוספים של Vulkan לפונקציונליות מותאמת אישית
- פרופיל Baseline ל-Android למידע על דרישות המכשיר
מנועי משחקים
מידע על ANGLE
Vulkan הוא ממשק Android המועדף ל-GPU. Android 15 ואילך כוללים את ANGLE כשכבה אופציונלית להרצת OpenGL ES מעל Vulkan. המעבר ל-ANGLE סטנדרטיז את ההטמעה של OpenGL ב-Android כדי לשפר את התאימות, ובמקרים מסוימים גם את הביצועים.
כדי לבדוק את היציבות והביצועים של אפליקציות OpenGL ES באמצעות ANGLE במגוון רחב של מכשירי Android מגרסה 15 ואילך, מפעילים את ANGLE בחבילה באמצעות שתי פקודות adb הבאות. מחליפים את 'package-name' בשם החבילה לבדיקה.
adb shell settings put global angle_gl_driver_selection_pkgs package-name
adb shell settings put global angle_gl_driver_selection_values angle
ההגדרות האלה נשארות גם אחרי הפעלה מחדש של המכשיר. כדי להשבית את ANGLE, משתמשים בפקודות הבאות:
adb shell settings delete global angle_gl_driver_selection_pkgs
adb shell settings delete global angle_gl_driver_selection_values
מפת הדרכים של Android ANGLE ב-Vulkan
דיווח על בעיה ב-ANGLE
אם נתקלתם בבעיה ב-ANGLE, תוכלו לדווח עליה במערכת למעקב אחר בעיות.