ไลบรารีตัวควบคุมเกม   ส่วนหนึ่งของ Android Game Development Kit

ไลบรารีตัวควบคุมเกม หรือที่เรียกว่า Paddleboat จะช่วยให้คุณรองรับตัวควบคุมเกมได้อย่างมีประสิทธิภาพ ไลบรารีมีฟีเจอร์ต่อไปนี้

  • การเรียกกลับสำหรับการตรวจหาการเชื่อมต่อและการยกเลิกการเชื่อมต่อของตัวควบคุม
  • ข้อมูลอุปกรณ์ควบคุม รวมถึงรูปแบบและเลย์เอาต์ปุ่ม
  • ข้อมูลอินพุตของคอนโทรลเลอร์ที่ได้มาตรฐานตามการออกแบบคอนโทรลเลอร์แบบ 2 อะนาล็อกสมัยใหม่
  • ฟีเจอร์เพิ่มเติมในคอนโทรลเลอร์ที่รองรับ ซึ่งรวมถึงการสั่น ไฟ ข้อมูลแกนการเคลื่อนไหว และสถานะแบตเตอรี่
  • ความสามารถในการอ่านอินพุตจากอุปกรณ์เมาส์เสมือนและจริง
  • ความสามารถในการระบุข้อมูลการแมปคอนโทรลเลอร์ที่กำหนดเองสำหรับอุปกรณ์บางอย่าง

ข้อกำหนดความเข้ากันได้

ไลบรารี Game Controller มีข้อกำหนดขั้นต่ำในการรองรับดังนี้

  • Android 4.4 (API ระดับ 19) ขึ้นไป
  • Android NDK เวอร์ชัน 21 ขึ้นไป

ผสานรวม

ไลบรารี Game Controller มีให้ใช้งานใน 2 รูปแบบ ได้แก่ เป็นไลบรารี Jetpack สำหรับเกมที่ใช้ระบบบิลด์ที่อิงตาม Gradle (รวมถึง Android Studio) และเป็นไฟล์แยกสำหรับเกมที่ใช้ระบบบิลด์ที่กำหนดเอง

ดูตัวอย่างที่ผสานรวมไลบรารี Game Controller ได้ที่ ที่เก็บ games-samples

ไลบรารี Jetpack

หน้า Jetpack Android Games มี วิธีการผสานรวมเพื่อเพิ่มการอ้างอิงไลบรารีของ Game Controller ลงในไฟล์ build.gradle ของเกม

การเปิดตัวไลบรารี Jetpack ของ Game Controller เป็นไลบรารีแบบคงที่ ที่สร้างขึ้นกับไลบรารีที่ใช้ร่วมกันของรันไทม์ C++

หลังจากอัปเดตไฟล์ build.gradle แล้ว คุณจะต้องเพิ่มบรรทัดต่อไปนี้ ลงในไฟล์ CMakeLists.txt หลักของเกม

find_package(games-controller REQUIRED CONFIG)

นอกจากนี้ คุณยังต้องเพิ่มรายการต่อไปนี้ลงในรายการไลบรารี ในคำสั่ง target_link_libraries ของไลบรารีที่ใช้ร่วมกันหลักของเกมด้วย

games-controller::paddleboat_static

ไฟล์แยก

การเผยแพร่ที่เก็บถาวรของ Android Game Development Kit มี ไฟล์ส่วนหัวและไลบรารีสำหรับไลบรารี Game Controller.zip คุณต้องรวมไฟล์ต่อไปนี้ ไว้ในโปรเจ็กต์เพื่อใช้ไลบรารี Game Controller

  • ไฟล์ classes.jar ที่มีส่วน Dalvik bytecode ของไลบรารี Game Controller ไฟล์นี้อยู่ที่ libs/classes.jar
  • ไฟล์ส่วนหัวของอินเทอร์เฟซ paddleboat.h ไฟล์นี้อยู่ที่ include/paddleboat/paddleboat.h
  • libpaddleboat.soไฟล์ไลบรารีที่ใช้ร่วมกันหรือlibpaddleboat-static.aไฟล์ไลบรารีแบบคงที่ ไฟล์เหล่านี้จะอยู่ใน ไดเรกทอรีย่อยของการกำหนดค่าบิลด์ภายใต้ไดเรกทอรี libs

ระบบจะจัดหมวดหมู่ไดเรกทอรีย่อยของการกำหนดค่าบิลด์ภายใต้ไดเรกทอรีรูท libs ตามเกณฑ์ต่อไปนี้

  • สถาปัตยกรรม ABI
  • ระดับ API ของ Android ขั้นต่ำ
  • เวอร์ชัน Android NDK
  • เวอร์ชันไลบรารีรันไทม์ C++
  • การกำหนดค่าบิลด์สำหรับรุ่นที่เผยแพร่หรือการแก้ไขข้อบกพร่อง

ตัวอย่างเช่น ไดเรกทอรีย่อย arm64-v8a_API16_NDK21_cpp_shared_Release มีไฟล์ไลบรารีสำหรับ

  • ABI ของ ARM 64 บิต
  • ระดับ API ขั้นต่ำ 16
  • สร้างขึ้นกับ NDK เวอร์ชัน 21
  • สร้างขึ้นเทียบกับรันไทม์ C++ เวอร์ชันไลบรารีที่ใช้ร่วมกัน
  • การกำหนดค่าบิลด์ที่เผยแพร่

ไฟล์ libpaddleboat_static.a จะอยู่ในไดเรกทอรีย่อยโดยตรง ไฟล์ libpaddleboat.so อยู่ที่ lib/paddleboat/ ภายในไดเรกทอรีย่อย

ขั้นตอนถัดไป

ดูคำแนะนำต่อไปนี้เพื่อผสานรวมไลบรารี Game Controller เข้ากับเกมต่อไป