Question

Je n'ai pas trouvé une explication claire sur la façon dont le système fonctionne graphique Android, en particulier, n'utilise un serveur d'affichage, est-il basé sur DirectFB ou X11, etc.

D'après ce que j'ai réussi à rassembler, Android dépend de la frame buffer Linux . Je ne l'ai pas trouvé beaucoup sur quel type de serveur d'affichage ou gestionnaire de fenêtres utilise Android à accès multiple au framebuffer, donc tous les pointeurs serait très apprécié!

Enfin, d'après ce que je comprends le jeu d'instructions ARM fournit des instructions pour accélérer OpenGL, mais comment intègre avec le serveur d'affichage n'est pas clair, à savoir. faire des applications clientes négocient un tampon de mémoire partagée dans laquelle le client écrit directement?

Les bibliothèques OpenGL pour la plate-forme accélérateur open source? J'ai trouvé quelques références suggérant qu'ils sont binaires source fermés. Encore une fois, les pointeurs seraient appréciés.

Était-ce utile?

La solution

Il y a deux pièces essentielles à graphiques Android: SurfaceFlinger et Skia. SurfaceFlinger est le typographe Android, utilisé par le gestionnaire de fenêtres pour créer et fenêtres d'affichage (effectivement appelé surfaces.) SurfaceFlinger est mis en œuvre sur le dessus de OpenGL ES 1.x utilisent actuellement et peuvent également d'autres techniques d'accélération matérielle lorsqu'il est disponible (MDP, un blitter 2D sur le G1 de T-mobile, ou des superpositions matériel sur le Xoom.)

Chaque application rend dans ses fenêtres (ou surfaces) en utilisant principalement Skia. Skia est la bibliothèque graphique 2D Android. Vous pouvez également utiliser OpenGL ES 1.x et 2.0 pour rendre dans une surface.

Android n'utilise pas DirectFB ou X11 ou toute autre solution Linux existante.

Autres conseils

Il y a une brève présentation d'introduction sur Android Graphics: http: //www.slideshare.net/jserv/design-and-concepts-of-android-graphics

Romain Guy était certainement raison. Mais chose a changé depuis Android 3.0. Skia n'est pas plus importante, la plupart des dessins 2D sont accélérés en utilisant openGL, a.k.a composant Hwui.

Toutes les informations sur Android graphiques peuvent être trouvés ici:

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top