עדכון הגדרות ה-build

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

ספרייה סטטית

כדי לקשר את הפרויקט לספרייה הסטטית:

  1. מוסיפים את gamesdk/include לנתיבי ההכללה של הקומפיילר.
  2. הכללת swappy/swappyVk.h לשילוב עם Vulkan. ברוב המקרים, קובץ הכותרת מכיל את כל הפונקציות שדרושות כדי לשלב את הספרייה במנוע.
  3. מוסיפים נתיב מהצורה הבאה לנתיבי הספרייה של ה-linker:

    gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release
    

    לדוגמה: gamesdk/libs/arm64-v8a_API24_NDK17_cpp_static_Release

  4. מוסיפים את -lswappy_static לפקודת ה-linker.

ספרייה משותפת

השלבים שלמעלה מבצעים קישור סטטי לגרסה של ספריית Frame Pacing שעברה קומפילציה לשילוב הנתון של ABI, רמת API, ‏ NDK ו-STL. אם השילוב לא זמין בהגדרות שלכם, אפשר לקשר במקום זאת לספרייה המשותפת:

  1. פועלים לפי שלבים 1 ו-2 מהקטע הקודם כדי לעדכן את נתיבי ההכללה של הקומפיילר ולהשתמש בקובץ הכותרת המתאים.
  2. מוסיפים נתיב מהצורה הבאה לנתיבי הספרייה של ה-linker:

    gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release/lib/swappy
    
  3. מוסיפים את -lswappy לפקודת ה-linker.

קישור סטטי ייתן לכם טביעת רגל קטנה בהרבה של קוד, כי לא תצטרכו לאגד את הספרייה המשותפת libswappy.so.

שימוש ב-CMake (ספרייה סטטית בלבד)

אם אתם משתמשים ב-CMake, תוכלו לראות דוגמה להגדרת CMake בקובץ gamesdk/samples/bouncyball/app/CMakeLists.txt בספרייה שהורדתם (downloaded library). הוא כולל קובץ כלי עזר, gamesdk/samples/gamesdk.cmake, שמבצע בדיקות סופיות, מוסיף את נתיבי ההכללה המתאימים של הקומפיילר ומייצר יעד שאפשר להשתמש בו כדי לקשר את הספרייה.

כדי להשתמש בכלי הזה:

  1. כוללים את הקובץ הזה ב-CMakeLists.txt: include("path/to/gamesdk/samples/gamesdk.cmake")
  2. קוראים לפונקציה add_gamesdk_target עם התיקייה שמכילה את Gamesdk: add_gamesdk_target(PACKAGE_DIR path/to/gamesdk)
  3. ב-target_link_libraries של הספרייה המקורית, מוסיפים את swappy כתלות: target_link_libraries(native-lib swappy ...)

לשימוש מתקדם ב-CMake, אפשר לעיין בקובץ המקור gamesdk.cmake.