Veuillez garder à l'esprit qu'il s'agit d'options de développeur et qu'elles peuvent être inutiles ou avoir un impact négatif sur les performances de votre appareil.
Forcer le rendu GPU
Le GPU est l'Unité de Traitement Graphique. Il est très similaire au CPU, mais au lieu de traiter des chiffres et de s'occuper des tâches du système d'exploitation et du matériel, le GPU rend les informations graphiques et les affiche à l'écran pour vous.
Le CPU peut traiter des instructions graphiques correctement, mais cela prend du temps loin des autres calculs, et peut entraîner des ralentissements pendant le traitement des instructions graphiques.
Dans Ice Cream Sandwich et au-delà, les développeurs (ou les utilisateurs avancés) ont la possibilité de forcer les applications à utiliser le rendu GPU, que ce paramètre soit activé ou non dans le manifeste de l'application. Cela ne rend pas nécessairement l'application plus rapide et peut entraîner des problèmes.
Désactiver les opérations de découpe non rectangulaires
C'est trop technique pour moi d'expliquer en détail. Fondamentalement, un "canvas" est utilisé pour le dessin. Le code source d'Android contient ceci :
/**
* Activer pour **déboguer les opérations de découpe non rectangulaires**.
*
* Valeurs possibles:
* "hide", pour désactiver ce mode de débogage
* "highlight", met en évidence les commandes de dessin testées contre une découpe non rectangulaire
* "stencil", dessine la région de découpe à l'écran lorsqu'elle est définie
*
* @hide
*/
public static final String DEBUG_SHOW_NON_RECTANGULAR_CLIP_PROPERTY =
"debug.hwui.show_non_rect_clip";
Vous pouvez le désactiver pour créer des zones de canevas inhabituelles (non rectangulaires). Voir ici pour plus de détails à ce sujet
Comme le souligne @IanNi-Lewis dans son commentaire :
Il vaut probablement la peine de noter que "régions de découpe non rectangulaires" est un peu trompeur. Il devrait s'agir de "régions de découpe qui ne sont pas des rectangles alignés sur l'écran". Si vous avez une région de découpe rectangulaire qui est tournée par un multiple quelconque de 90 degrés, elle passe par le même chemin lent qu'une région de découpe en forme de donut ou autre. (Le chemin lent utilise le tampon de stencil, et n'a probablement pas besoin d'être aussi lent qu'il l'est ; c'est un bon domaine pour une optimisation future).
Forcer le MSAA 4X
Forcer le MSAA 4X ne nécessite pas de dispositif rooté. Cette option fait la même chose que tout filtre Anti Aliasing dans les jeux PC - lisse toutes les pixelisations et offre un meilleur rendu, ce qui signifie de meilleurs graphismes. Les utilisateurs doivent savoir que cette fonction n'est recommandée que pour les appareils ayant un GPU capable de supporter nativement le MSAA.
De Wikipedia :
En traitement de signal et disciplines connexes, l'aliasing est un effet qui fait que différents signaux deviennent indiscernables (ou des alias les uns des autres) lorsqu'ils sont échantillonnés. Il se réfère également à la distorsion ou l'artefact qui en résulte lorsque le signal reconstruit à partir d'échantillons est différent du signal continu original.
Désactiver les superpositions matérielles
Sans une superposition matérielle, chaque application affichant des éléments à l'écran partagera la mémoire vidéo et devra vérifier constamment les collisions et les recouvrements pour afficher une image correcte, ce qui peut coûter beaucoup de puissance de traitement. Avec une superposition matérielle, chaque application a sa propre portion de mémoire vidéo, ce qui élimine le besoin de vérifier les collisions et les recouvrements.
Comme l'a dit @DanHulme : Les fenêtres dans Android sont toujours composées plutôt que rendues dans une mémoire vidéo partagée. Normalement, SurfaceFlinger
utilise le GPU pour la composition, mais il utilisera une superposition matérielle quand c'est possible, ce qui est plus rapide et consomme moins de batterie. Désactiver les superpositions signifie qu'il utilisera toujours le rendu GPU. Cela n'est utile que pour le débogage de l'intégration système ou du décodage vidéo HW : même les développeurs d'applications n'ont pas besoin d'activer cette option.