Рендеринг графики на SDV Media

SDV Media предоставляет API EGL и OpenGL ES для рендеринга графики в режиме без поверхности. Интеграция с оконной системой отсутствует. Вместо этого приложение самостоятельно выделяет и управляет графическими буферами и на их основе устанавливает контекст рендеринга.

В разделе «Управление дисплеями» представлен обзор ожидаемого процесса настройки контекста рендеринга OpenGL.

Вулкан

Эталонная реализация SDV Media обеспечивает экспериментальную поддержку виртуализированного Vulkan. Чтобы включить Vulkan, запустите целевой объект sdv_media_cf с дополнительным аргументом командной строки --gpu_mode=gfxstream_guest_angle :

cvd start --gpu_mode=gfxstream_guest_angle

Благодаря этому SDV Media обеспечивает поддержку виртуализированного Vulkan и преобразует вызовы EGL и OpenGL ES в Vulkan с помощью библиотеки ANGLE.

Известные ограничения

Поведение эталонного устройства SDV зависит от используемого графического процессора.

  • Видеокарты NVIDIA (включая карты Google Cloud) не поддерживаются.

  • Для корректной отрисовки видеокарт Intel требуется, чтобы приложения выделяли буферы графического процессора с флагом GBM_BO_USE_LINEAR . При использовании sdv_multi_display_sample_rust установите переменную среды GBM_USE_LINEAR , чтобы принудительно использовать этот флаг в примере:

    GBM_USE_LINEAR=1 sdv_multi_display_sample_rust
    
  • Видеокарты AMD не поддерживаются из-за открытой ошибки в ядре .