Renderización de gráficos en SDV Media

SDV Media proporciona APIs de EGL y OpenGL ES para renderizar gráficos en un modo sin superficie. No hay integración del sistema de ventanas. En cambio, la aplicación asigna y administra los búferes de gráficos por sí misma, y configura el contexto de renderización en función de ellos.

Consulta Administración de pantallas para obtener una descripción general del flujo de configuración esperado del contexto de renderización de OpenGL.

Vulkan

La implementación de referencia de SDV Media proporciona compatibilidad experimental con Vulkan virtualizado. Para habilitar Vulkan, inicia el destino sdv_media_cf con un argumento de línea de comandos --gpu_mode=gfxstream_guest_angle adicional:

cvd start --gpu_mode=gfxstream_guest_angle

Esto hace que SDV Media proporcione compatibilidad con Vulkan virtualizado y traduzca las llamadas a EGL y OpenGL ES a Vulkan con la biblioteca de ANGLE.

Limitaciones conocidas

El comportamiento en el objetivo de referencia del SDV varía según la GPU del host.

  • No se admiten las tarjetas gráficas de NVIDIA (incluidas las máquinas de Google Cloud).

  • Las tarjetas gráficas Intel requieren que las aplicaciones asignen sus búferes de GPU con la marca GBM_BO_USE_LINEAR para evitar una renderización incorrecta. Cuando uses sdv_multi_display_sample_rust, configura la variable de entorno GBM_USE_LINEAR para forzar la muestra a usar esta marca:

    GBM_USE_LINEAR=1 sdv_multi_display_sample_rust
    
  • No se admiten las tarjetas gráficas AMD debido a un error del kernel abierto.