วัลแคน

Android รองรับ Vulkan ซึ่งเป็น API ข้ามแพลตฟอร์มที่มีค่าใช้จ่ายต่ำสำหรับกราฟิก 3 มิติประสิทธิภาพสูง เช่นเดียวกับ OpenGL ES (GLES) Vulkan มีเครื่องมือสำหรับสร้างกราฟิกคุณภาพสูงแบบเรียลไทม์ในแอป ข้อดีของการใช้ Vulkan รวมถึงการลดค่าใช้จ่ายของ CPU และการสนับสนุนภาษา SPIR-V Binary Intermediate

ระบบผู้จำหน่ายชิป (SoC) เช่นผู้จำหน่ายฮาร์ดแวร์อิสระ GPU (IHV) สามารถเขียนไดรเวอร์ Vulkan สำหรับ Android ได้ OEM จำเป็นต้องรวมไดรเวอร์เหล่านี้สำหรับอุปกรณ์เฉพาะ สำหรับรายละเอียดเกี่ยวกับวิธีที่ไดรเวอร์ Vulkan โต้ตอบกับระบบควรติดตั้งเครื่องมือเฉพาะ GPU อย่างไรและข้อกำหนดเฉพาะของ Android โปรดดู การใช้งาน Vulkan

นักพัฒนาแอพพลิเคชั่นใช้ Vulkan เพื่อสร้างแอพที่รันคำสั่งบน GPU โดยลดค่าใช้จ่ายลงอย่างมาก Vulkan ยังให้การแมปโดยตรงกับความสามารถที่พบในฮาร์ดแวร์กราฟิกปัจจุบันเมื่อเทียบกับ EGL และ GLES ช่วยลดโอกาสในการเกิดบั๊กของไดรเวอร์และลดเวลาในการทดสอบของนักพัฒนา

สำหรับข้อมูลทั่วไปเกี่ยวกับ Vulkan โปรดดู ภาพรวมของ Vulkan หรือดูรายการ ทรัพยากร

ส่วนประกอบ Vulkan

การสนับสนุน Vulkan ประกอบด้วยส่วนประกอบต่อไปนี้

ส่วนประกอบ Vulkan

รูปที่ 1. ส่วนประกอบของ Vulkan

ชื่อส่วนประกอบ ผู้ให้บริการ คำอธิบาย
เลเยอร์การตรวจสอบ Vulkan Android (ใน NDK) ไลบรารีที่ใช้ระหว่างการพัฒนาแอป Vulkan เพื่อค้นหาข้อผิดพลาดในการใช้ Vulkan API ของแอป หลังจากพบข้อผิดพลาดในการใช้งาน API ควรลบไลบรารีเหล่านี้ออก
Vulkan Runtime Android ไลบรารีเน libvulkan.so ที่จัดเตรียม Vulkan API ดั้งเดิม

ฟังก์ชันการทำงานส่วนใหญ่ของ Vulkan Runtime ใช้งานโดยไดรเวอร์ที่ผู้จำหน่าย GPU จัดหาให้ Vulkan Runtime ห่อหุ้มไดรเวอร์ให้ความสามารถในการสกัดกั้น API (สำหรับการดีบักและเครื่องมือสำหรับนักพัฒนาอื่น ๆ ) และจัดการการโต้ตอบระหว่างไดรเวอร์และการอ้างอิงแพลตฟอร์ม
Vulkan ไดร์เวอร์ SoC แมป Vulkan API เข้ากับคำสั่ง GPU เฉพาะฮาร์ดแวร์และการโต้ตอบกับไดรเวอร์กราฟิกเคอร์เนล

ส่วนประกอบที่ดัดแปลง

BufferQueue และ Gralloc รองรับ Vulkan:

  • บัฟเฟอร์คิว ค่า enum เพิ่มเติมและวิธีการใน BufferQueue และอินเทอร์เฟซ ANativeWindow เปิดใช้งาน Vulkan Runtime เพื่อเชื่อมต่อกับ BufferQueue ผ่าน ANativeWindow
  • Gralloc อินเทอร์เฟซเสริมช่วยให้ Gralloc ค้นพบว่ารูปแบบที่กำหนดสามารถใช้สำหรับชุดค่าผสมของผู้ผลิต / ผู้บริโภคโดยไม่ต้องจัดสรรบัฟเฟอร์

สำหรับรายละเอียดเกี่ยวกับส่วนประกอบเหล่านี้โปรดดูที่ BufferQueue และ gralloc สำหรับรายละเอียดเกี่ยวกับ ANativeWindow โปรดดูที่ EGLSurfaces และ OpenGL ES )

ทรัพยากร

ใช้แหล่งข้อมูลต่อไปนี้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับ Vulkan:

  • Vulkan Loader ( libvulkan.so ) ที่ platform/frameworks/native/vulkan มีตัวโหลด Vulkan ของ Android รวมถึงเครื่องมือที่เกี่ยวข้องกับ Vulkan ที่เป็นประโยชน์สำหรับนักพัฒนาแพลตฟอร์ม
  • การนำวัลแคน ไปใช้ มีไว้สำหรับ GPU IHV ที่เขียนไดรเวอร์ Vulkan สำหรับ Android และ OEM ที่รวมไดรเวอร์เหล่านั้นสำหรับอุปกรณ์เฉพาะ อธิบายถึงวิธีที่ไดรเวอร์ Vulkan โต้ตอบกับระบบวิธีการติดตั้งเครื่องมือเฉพาะ GPU และข้อกำหนดการใช้งานเฉพาะ Android
  • คู่มือ Vulkan Graphics API รวมข้อมูลเกี่ยวกับการเริ่มต้นใช้งาน Vulkan ในแอป Android แพลตฟอร์มแนวทางการออกแบบ Vulkan ของ Android การใช้คอมไพเลอร์ shader ของ Vulkan และการใช้เลเยอร์การตรวจสอบความถูกต้องเพื่อช่วยให้แอปมีเสถียรภาพโดยใช้ Vulkan
  • วัลกาญจน์นิวส์ . ครอบคลุมกิจกรรมแพตช์บทช่วยสอนและบทความข่าวที่เกี่ยวข้องกับวัลแคนอื่น ๆ