Rendering grafis di Media SDV

SDV Media menyediakan EGL dan OpenGL ES API untuk merender grafis dalam mode tanpa permukaan. Tidak ada integrasi sistem jendela. Sebagai gantinya, aplikasi mengalokasikan dan mengelola buffer grafis itu sendiri, serta menyiapkan konteks rendering berdasarkan buffer tersebut.

Lihat Mengelola Tampilan untuk ringkasan alur penyiapan konteks rendering OpenGL yang diharapkan.

Vulkan

Implementasi referensi SDV Media menyediakan dukungan eksperimental untuk Vulkan yang divirtualisasikan. Untuk mengaktifkan Vulkan, mulai target sdv_media_cf dengan argumen command line --gpu_mode=gfxstream_guest_angle tambahan:

cvd start --gpu_mode=gfxstream_guest_angle

Hal ini membuat SDV Media memberikan dukungan untuk Vulkan yang divirtualisasi, dan menerjemahkan panggilan EGL dan OpenGL ES ke Vulkan menggunakan library ANGLE.

Batasan umum

Perilaku pada target rujukan SDV bervariasi bergantung pada GPU host.

  • Kartu grafis NVIDIA (termasuk mesin Google Cloud) tidak didukung.

  • Kartu grafis Intel memerlukan aplikasi untuk mengalokasikan buffer GPU-nya dengan flag GBM_BO_USE_LINEAR untuk menghindari rendering yang salah. Saat menggunakan sdv_multi_display_sample_rust, tetapkan variabel lingkungan GBM_USE_LINEAR untuk memaksa contoh menggunakan flag ini:

    GBM_USE_LINEAR=1 sdv_multi_display_sample_rust
    
  • Kartu grafis AMD tidak didukung karena adanya bug kernel yang belum diselesaikan.