Vulkan

Android hỗ trợ Vulkan , một API đa nền tảng, chi phí thấp dành cho đồ họa 3D hiệu suất cao. Giống như OpenGL ES (GLES) , Vulkan cung cấp các công cụ để tạo đồ họa thời gian thực, chất lượng cao trong ứng dụng. Ưu điểm của việc sử dụng Vulkan bao gồm giảm chi phí CPU và hỗ trợ ngôn ngữ trung gian nhị phân SPIR-V .

Hệ thống trên các nhà cung cấp chip (SoC) như nhà cung cấp phần cứng độc lập GPU (IHV) có thể viết trình điều khiển Vulkan cho Android. Các OEM cần tích hợp các trình điều khiển này cho các thiết bị cụ thể. Để biết chi tiết về cách trình điều khiển Vulkan tương tác với hệ thống, cách cài đặt các công cụ dành riêng cho GPU và các yêu cầu dành riêng cho Android, hãy xem Triển khai Vulkan.

Các nhà phát triển ứng dụng sử dụng Vulkan để tạo các ứng dụng thực thi lệnh trên GPU với chi phí hoạt động giảm đáng kể. Vulkan cũng cung cấp khả năng ánh xạ trực tiếp hơn tới các khả năng có trong phần cứng đồ họa hiện tại so với EGL và GLES, giảm thiểu khả năng xảy ra lỗi trình điều khiển và giảm thời gian thử nghiệm của nhà phát triển.

Để biết thông tin chung về Vulkan, hãy tham khảo Tổng quan về Vulkan hoặc xem danh sách Tài nguyên .

Thành phần Vulkan

Hỗ trợ Vulkan bao gồm các thành phần sau.

Thành phần Vulkan

Hình 1. Các thành phần Vulkan

Tên thành phần Các nhà cung cấp Sự miêu tả
Lớp xác thực Vulkan Android (trong NDK) Các thư viện được sử dụng trong quá trình phát triển ứng dụng Vulkan để tìm lỗi trong việc sử dụng API Vulkan của ứng dụng. Sau khi tìm thấy lỗi sử dụng API, các thư viện này sẽ bị xóa.
Thời gian chạy Vulkan Android Thư viện gốc libvulkan.so cung cấp API Vulkan gốc.

Hầu hết chức năng của Vulkan Runtime được triển khai bởi trình điều khiển do nhà cung cấp GPU cung cấp. Vulkan Runtime bao bọc trình điều khiển, cung cấp khả năng chặn API (để gỡ lỗi và các công cụ dành cho nhà phát triển khác), đồng thời quản lý sự tương tác giữa trình điều khiển và các phần phụ thuộc nền tảng.
Trình điều khiển Vulkan SoC Ánh xạ API Vulkan vào các lệnh và tương tác GPU dành riêng cho phần cứng với trình điều khiển đồ họa kernel.

Thành phần được sửa đổi

BufferQueue và Gralloc hỗ trợ Vulkan:

  • BufferQueue. Các giá trị và phương thức enum bổ sung trong BufferQueue và giao diện ANativeWindow cho phép Vulkan Runtime kết nối với BufferQueue thông qua ANativeWindow .
  • Gralloc. Giao diện tùy chọn cho phép Gralloc khám phá xem liệu một định dạng nhất định có thể được sử dụng cho một tổ hợp nhà sản xuất/người tiêu dùng cụ thể mà không cần phân bổ bộ đệm hay không.

Để biết chi tiết về các thành phần này, hãy xem BufferQueue và gralloc . Để biết chi tiết về ANativeWindow , hãy xem EGLSurfaces và OpenGL ES ).

Tài nguyên

Sử dụng các tài nguyên sau để tìm hiểu thêm về Vulkan:

  • Trình tải Vulkan ( libvulkan.so ) tại platform/frameworks/native/vulkan . Chứa trình tải Vulkan của Android cũng như một số công cụ liên quan đến Vulkan hữu ích cho các nhà phát triển nền tảng.
  • Triển khai Vulkan . Dành cho GPU IHV viết trình điều khiển Vulkan cho Android và OEM tích hợp các trình điều khiển đó cho các thiết bị cụ thể. Nó mô tả cách trình điều khiển Vulkan tương tác với hệ thống, cách cài đặt các công cụ dành riêng cho GPU và các yêu cầu triển khai dành riêng cho Android.
  • Hướng dẫn API đồ họa Vulkan . Bao gồm thông tin về cách bắt đầu sử dụng Vulkan trong ứng dụng Android, nền tảng hướng dẫn thiết kế Vulkan của Android, sử dụng trình biên dịch đổ bóng của Vulkan và sử dụng các lớp xác thực để giúp đảm bảo tính ổn định trong ứng dụng sử dụng Vulkan.
  • Tin tức Vulkan . Bao gồm các sự kiện, bản vá, hướng dẫn và nhiều bài báo tin tức liên quan đến Vulkan.