Pregunta

No he encontrado una explicación clara de cómo funciona el sistema de gráficos para Android, específicamente, ¿utiliza un servidor de pantalla, está basado en que DirectFB o X11, etc.

Por lo que he logrado descifrar, Android depende del marco Linux búfer . No he encontrado mucho sobre qué tipo de servidor de pantalla o ventana del administrador de Android usos de acceso múltiple que permita el uso de este dispositivo, sin embargo, por lo que cualquier punteros sería muy apreciada!

Por último, por lo que entiendo el conjunto de instrucciones ARM proporciona instrucciones para acelerar OpenGL, pero cómo esto se integra con el servidor de pantalla no está clara, es decir. hacen aplicaciones cliente negocian un búfer de memoria compartida en la que el cliente escribe directamente?

¿Son las librerías OpenGL para acelerador de la plataforma de código abierto? He encontrado algunas referencias que sugieren que están binarios de código cerrado. Una vez más, sería apreciada cualquier punteros.

¿Fue útil?

Solución

Hay dos piezas centrales a los gráficos Android: SurfaceFlinger y Skia. SurfaceFlinger es compositor de Android, utilizado por el gestor de ventanas para crear y ventanas de exhibición (en realidad llamada superficies.) SurfaceFlinger se implementa en la parte superior de OpenGL ES 1.x actualmente y también pueden utilizar otras técnicas de aceleración de hardware cuando esté disponible (MDP, un blitter 2D el T-Mobile G1, o hardware superposiciones en la Xoom.)

Cada aplicación hace que en sus ventanas (o superficies) utilizando principalmente Skia. Skia es biblioteca de gráficos 2D de Android. También puede utilizar OpenGL ES 2.0 y 1.x de producir en una superficie.

Android no usa DirectFB o X11 o cualquier otra solución existente de Linux.

Otros consejos

Hay una presentación breve introducción acerca de Android Gráficos: http: //www.slideshare.net/jserv/design-and-concepts-of-android-graphics

Romain individuo estaba bien, sin duda. Pero algo ha cambiado desde Android 3.0. Skia no es tan importante ya, la mayoría de dibujo 2D se aceleran usando OpenGL, a.k.a componente HWUI.

Toda la información sobre los gráficos androide se puede encontrar aquí:

https://source.android.com/devices/graphics/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top