L'extension composite et Xgl ont exactement le même but : améliorer la gestion de la "composition" de fenêtres, c'est a dire le mode de rendu.
Le rendu classique de X est de demander aux applications de ce dessiner directement sur l'écran, en gros X demande a Qt et Gtk de dessiner une portion de la fenêtre si elle n'est pas visible en entier. Comme certaines parties ne sont pas dessinées, il n'est pas possible de faire de la transparence et celle ci serait dépendante de l'ordre de rafraichissement. De plus, c'est un système orienté "sans accélération matérielle" ou la méthode la plus rapide est de demander le moins de travail aux applications (donc redessiner le moins de surface possible)
Avec un "compositeur" on demande à toutes les fenêtres de se dessiner, non pas directement dans le tampon mémoire principal - celui qui est affiché à l'écran -, mais dans un bout de mémoire à part. Après le "compositeur" pourra choisir quel tampon aller afficher, et comment l'afficher (transparence, redimensionnement).
Pour en revenir à nos moutons, l'extension composite a pour but d'accélérer la composition en manipulant directement l'accélération matérielle - c'est à dire les routines dédiées de la carte video - moyennant une petite couche d'abstraction j'imagine.
Sous Xgl on passe par l'OpenGL, ou a partir des tampon mémoires ou sont dessinées les fenêtres on génère des polygones texturés - d'où l'importance de GLX_EXT_texture_from_pixmap.
Donc plutôt que d'avoir à manipuler les routines de la cartes videos on utilise l'API OpenGL, qui via le driver, permettre l'accélération matérielle.
Toutefois XGL est considérée comme "moins propre" puisqu'il faut un X avec de l'OpenGL qui gère l'affichage, plutôt que ce soit directement X qui gère tout ca - comme c'est le cas avec l'extension composite.
Mais il faut noter que dans les deux cas on patine sur des problèmes de drivers, donc c'est pas encore le bonheur du libriste.
[^] # Re: Juste une question
Posté par Anonyme . En réponse au journal Pilote propriétaire NVIDIA 1.0-8756. Évalué à 10.
Le rendu classique de X est de demander aux applications de ce dessiner directement sur l'écran, en gros X demande a Qt et Gtk de dessiner une portion de la fenêtre si elle n'est pas visible en entier. Comme certaines parties ne sont pas dessinées, il n'est pas possible de faire de la transparence et celle ci serait dépendante de l'ordre de rafraichissement. De plus, c'est un système orienté "sans accélération matérielle" ou la méthode la plus rapide est de demander le moins de travail aux applications (donc redessiner le moins de surface possible)
Avec un "compositeur" on demande à toutes les fenêtres de se dessiner, non pas directement dans le tampon mémoire principal - celui qui est affiché à l'écran -, mais dans un bout de mémoire à part. Après le "compositeur" pourra choisir quel tampon aller afficher, et comment l'afficher (transparence, redimensionnement).
Pour en revenir à nos moutons, l'extension composite a pour but d'accélérer la composition en manipulant directement l'accélération matérielle - c'est à dire les routines dédiées de la carte video - moyennant une petite couche d'abstraction j'imagine.
Sous Xgl on passe par l'OpenGL, ou a partir des tampon mémoires ou sont dessinées les fenêtres on génère des polygones texturés - d'où l'importance de GLX_EXT_texture_from_pixmap.
Donc plutôt que d'avoir à manipuler les routines de la cartes videos on utilise l'API OpenGL, qui via le driver, permettre l'accélération matérielle.
Toutefois XGL est considérée comme "moins propre" puisqu'il faut un X avec de l'OpenGL qui gère l'affichage, plutôt que ce soit directement X qui gère tout ca - comme c'est le cas avec l'extension composite.
Mais il faut noter que dans les deux cas on patine sur des problèmes de drivers, donc c'est pas encore le bonheur du libriste.