"AGDE הוא פשוט מדהים!" לפיתוח ל-Android באמצעות Unreal Engine

Unreal Engine הוא מנוע משחקים שפותח על ידי Epic Games, ומאפשר ליוצרים מתחומים שונים ליהנות מחופש ושליטה כדי ליצור תכנים פופולריים, חזותיים ומרתקים, ועולמות וירטואליים מרתקים. חלק מהמשחקים הגדולים ל-Android נוצרו באמצעות Unreal Engine.

צילום מסך של דוגמה של Unreal Engine Suntemple שפועלת ב-Pixel 4 איור 1. צילום מסך של דוגמה ל-Suntemple ב-Unreal Engine שפועלת ב-Pixel 4

ב-Epic ובחברות אחרות שמפתחות משחקים משתמשים ב-Android Studio לניפוי באגים בשפות התכנות C++‎, Kotlin או Java, אבל למפתחים רבים של משחקים יש תהליכי פיתוח לפלטפורמות אחרות שמתמקדים ב-Visual Studio. צוות Unreal Engine לנייד מתמקדת בפיתוח תכונות ובאופטימיזציה של Unreal Engine לפלטפורמות לנייד. הצוות השתמש ב-Android Game Development Extension‏ (AGDE) גם לפיתוח של Unreal Engine ל-Android וגם לניפוי באגים ואופטימיזציה של Fortnite ל-Android.

איך הם משתמשים בה

לפני שהתחלנו להשתמש ב-Android Game Development Extension‏ (AGDE), כדי לנפות באגים ולבנות אפליקציות ל-Android היה צריך לפתוח את פרויקט Gradle שנוצר ב-Android Studio, ואז לעבור בין שתי סביבות הפיתוח לצורך הידור או ניפוי באגים, לכל אחת מהן יש קבוצות משלה של קישורי מפתחות. המצב הזה היה מטריד למפתחים וגזל זמן רב, במיוחד בפיתוח איטרטיבי. עכשיו, בעזרת AGDE, כל מחזור העבודה של פיתוח משחקים ל-Android מתבצע ב-Visual Studio! מפתחים שעברו לתהליך הפיתוח החדש יגלו שהוא מהיר ונוח יותר לפיתוח ב-Unreal Engine.

אחרי שתתקינו את AGDE, בכל פעם שתיצרו את קובצי הפרויקט ב-Visual Studio עבור Unreal Engine‏ (UE) 4.26.2 ואילך, Unreal Build Tool ייצור גם יעדי build ל-Android לשימוש עם AGDE. לאחר מכן, תהליך הפיתוח והניפוי באגים של Unreal Engine מתוך Visual Studio יהיה זהה ל-Android, למחשב ולפלטפורמות אחרות. הקשה על F5 ב-Visual Studio מפעילה את AGDE, שמפעיל את ה-build של Android ב-C++‎ ויוצר או מעדכן את חבילת האפליקציה ל-Android‏ (APK). לאחר מכן, AGDE מפעיל סשן ניפוי באגים ב-C++‎ במכשיר, ומאפשר להשתמש בתכונות ניפוי באגים מוכרות של Visual Studio, כמו נקודות עצירה, משגיחים (watches) וגם עיון בניתוח ורגיסטרים. גרסאות build של Android שתומכות ב-AGDE נהנות גם מהשילוב של Unreal Build Tool עם Incredibuild, כדי לספק גרסאות build מבוזרות במחשבים שונים לקוד C++ ב-Android.

צילום מסך של AGDE עם Unreal Engine איור 2. צילום מסך של AGDE עם Unreal Engine

תוצאות

"מכיוון שסביבת הפיתוח שלנו מתמקדת ב-Visual Studio, שמחנו מאוד לשלב את AGDE בתהליכי העבודה שלנו. אנחנו בהחלט מתייחסים לשימוש שלנו ב-AGDE כהצלחה, כי מהנדסי Fortnite ו-Unreal Engine Mobile משתמשים ב-AGDE מדי יום בעבודה שלהם", אמר ג'ק פורטר (Jack Porter), מנהל צוות Unreal Engine Mobile. "AGDE אפשר ל-Epic לנפות באגים מהר יותר ובנוחות רבה יותר, והעבודה ב-Visual Studio שיפרה משמעותית את תהליך העבודה הקודם שלהם. השימוש ב-AGDE בהחלט חסך לנו זמן רב ועזר לנו למצוא באגים שלא היינו יכולים למצוא אחרת".

"אנחנו מצפים להמשיך להשתמש ב-AGDE ב-Epic, ואנחנו מתכננים להמליץ בתיעוד שלנו על AGDE כתהליך העבודה המורשה למפתחים של Unreal Engine ל-Android לכל בעלי הרישיונות של Unreal Engine", אמר פורטר. דמיטרי ווק (Dmytro Vovk), מפתח מצוות Unreal Engine Mobile, משתמש ב-AGDE כחלק מהעבודה היומית שלו ב-Unreal Engine וב-Fortnite Mobile, והוא אומר: "AGDE הוא פשוט נהדר! לבסוף, אפשר לנפות באגים ב-assembly ולראות את הרישומים מתעדכנים כשעוברים על הקוד. ניפוי באגים ב-Android מתוך Visual Studio מאפשר לי לבצע את העבודה היומיומית בקלות רבה יותר, בלי להפריע לתהליך הפיתוח שלי".

שנתחיל?

איך אפשר להשתמש ב-Android Game Development Extension כדי לטרגט ל-Android כשמפתחים משחקים לפלטפורמות שונות באמצעות C/C++ ב-Visual Studio?