Xgl

< ! -- Commenté dehors parce que l'image a été supprimée : --> Le Xgl est une architecture du serveur du X conçue pour tirer profit des cartes graphiques modernes par l'intermédiaire de leurs conducteurs d'OpenGL , posés sur le OpenGL par l'intermédiaire du glitz . Il soutient l'accélération de matériel de de tous les X, applications de XVideo d'OpenGL et de et effets graphiques par un logiciel de gestion de fenêtres de Compositing tel que le Compiz ou le Beryl . Le projet a été lancé par le David Reveman du Novell et libéré la première fois le 2 janvier , le 2006 .

Histoire

Xgl a été à l'origine développé sur les listes d'adresses publiques, mais pendant longtemps, jusqu'à ce que le le 2006 du 2 janvier la plupart de développement de Xgl ait été fait derrière les portes fermées. Ce jour la source à Xgl a été rouverte au public, et incluse dans le Freedesktop.org , avec la restructuration principale pour permettre un éventail de conducteurs soutenus d'affichage. Le serveur X centralise utilisé par Xgl incluent le Xglx et le Xegl . En février 2006 le serveur a gagné la publicité large après un affichage public où l'équipe de bureau de Novell a démontré un ordinateur de bureau using Xgl avec plusieurs effets visuels tels que les fenêtres translucides du et un ordinateur de bureau 3D tournant. Les effets avaient été d'abord mis en application dans un directeur composé appelé le Glxcompmgr (ne pas être confondu avec Xcompmgr ), maintenant désapprouvé parce que plusieurs effets ne pourraient pas être en juste proportion mis en application sans interaction plus serrée entre le logiciel de gestion de fenêtres et le directeur composé. Comme solution David Reveman a développé le Compiz , le premier logiciel de gestion de fenêtres approprié de Compositing de d'OpenGL pour le système de fenêtre de X. Plus tard, en septembre 2006, le logiciel de gestion de fenêtres de Compositing de du Beryl a été libéré comme fourchette du Compiz original. Compiz et Beryl ont fusionné en arrière en avril 2007, qui ont eu comme conséquence le développement de la fusion de Compiz de .

Centralise

OpenGL ne spécifie pas comment initialiser un affichage et manoeuvrer des contextes de schéma. Au lieu de cela ces opérations sont effectuées par un détail d'api au système indigène de fenêtrage. Jusqu'ici il y a deux approches principales différentes à résoudre ce problème d'initialisation. Très probablement la majorité de chacun principal contiendra le même code et les différences seront principalement dans les parties d'initialisation des serveurs.

Xglx

Le Xglx était la première partie postérieure mise en application pour cette architecture. Il est également celui où la majorité de développement a lieu à l'heure actuelle. Il exige d'un serveur déjà existant de X de fonctionner sur et emploie le GLX pour créer une fenêtre d'OpenGL que Xgl puis emploie, semblable au Xnest . Ce mode est seulement prévu pour être employé pour le développement à l'avenir, car il est superflu d'exiger d'un serveur de X de courir Xgl sur.

Chez XDevConf 2006 (la conférence 2006 de développement de X), le NVIDIA a fait une présentation arguant du fait que c'est la mauvaise direction à prendre parce que le serveur posé soustrait des dispositifs des cartes loin. Ceci fait à conducteur des possibilités spécifiques comme le soutien des verres 3D et le moniteur duel soutiennent beaucoup plus difficile (pdf).

Cependant, l'initialisation de délégation à un serveur existant de X permet aux lotisseurs de se concentrer immédiatement sur la fonctionnalité de serveur plutôt que consacrant le temps substantiel aux détails de se connecter par interface au nombreux matériel visuel. Au moment où, Xglx ne soutient pas officiellement les moniteurs multiples, bien qu'il ait été réalisé sur Ubuntu pimpant/ATI/NVIDIA (twinview).

Xegl

Le Xegl a serait le futur de Xgl et un but à long terme du développement de serveur de X. Il partage une grande partie du code de schéma avec le serveur de Xglx, mais l'initialisation de l'OpenGL aspirable et de la gestion de contexte est traitée par l'EGL api développé par Khronos (EGL est un équivalent system-independent de fenêtre aux api de GLX et de WGL, qui permettent respectivement l'appui d'OpenGL dans X et Microsoft Windows). L'exécution courante emploie MESA-en solo pour fournir le rendu d'OpenGL directement au framebuffer de Linux de ou au DRI au matériel de graphiques. Le en date du juillet 2007 Xegl peut seulement être couru using le matériel de graphiques de Radeon R200 et le développement est actuellement calé. Il est probable qu'il reste ainsi jusqu'à ce que le serveur de Xglx se soit prouvé qu'et les conducteurs fermés de source ajoutent le soutien de l'EGL api, quand ce devrait être un remplacement transparent pour le serveur niché de Xglx.

Raisonnement

Structurer tout le rendu sur OpenGL a pu potentiellement simplifier le développement de conducteur visuel. Il enlève la séparation artificielle du la 2D accélération de et de 3D . C'est avantageux comme les 2D opérations unaccelerated fréquemment (qui est contre-intuitif, puisque la 2D est un sous-ensemble de 3D).

Il enlève également tout le code conducteur-dépendant du serveur de X lui-même, et tient compte du accéléré composent et le rendent l'indépendant d'opérations de du conducteur de graphiques.

Concurrents

L'accélération de matériel des 2D opérations de schéma a été un dispositif commun de beaucoup de systèmes de fenêtre (X11 y compris) pendant beaucoup d'années. La nouveauté de Xgl et de systèmes semblables est l'utilisation des api spécifiquement développés pour le rendu 3D pour accélérer les 2D opérations de bureau. Avant l'adoption du l'anti-aliased schéma par X11, l'utilisation des api du rendu 3D pour le 2D rendu de bureau était indésirable parce que de tels api n'ont pas fait au Pixel les garanties précises de rendu qui font partie de la définition originale du protocole X11.

le rendu Matériel-accéléré de fenêtre et d'ordinateur de bureau d'OpenGL, limité à employer OpenGL pour la composition en texture, a été en service dans OS X de Mac, en technologie appelée le quartz extrême, depuis le Mac de OS x v10. Le quartz le 2D extrême de est un perfectionnement de ce dispositif et plus directement comparable à Xgl. Comme Xgl, extrémité de quartz la 2D apporte l'accélération d'OpenGL à toutes les 2D opérations de schéma (pas simplement ordinateur de bureau compositing) et les bateaux avec le Mac de OS x v10.4 , mais est désactivée par défaut en attendant une déclaration formelle de la production-promptitude. L'animation de noyau est la prolongation de cet effort pour le léopard (Mac de OS x v10.

Plusieurs interfaces de bureau basées sur les api 3D ont été développées, plus récemment OpenCroquet et le verre de regard de projet de de Sun Microsystems ; celles-ci tirent profit de l'accélération 3D pour le logiciel établi dans leur propre cadre, mais ne semblent pas accélérer les 2D applications de bureau existantes rendues dans leur environnement (souvent par l'intermédiaire des mécanismes comme VNC ).

Le Microsoft a développé une technologie semblable basée sur le DirectX , appelé le DWM , en tant qu'élément de son Windows Vista du système d'exploitation. Cette technologie était première montrée publiquement au 2003 PDC d'octobre de Microsoft.

Disponibilité

Le en date du mai 2006 , le serveur du X de Xgl (et les composants relatifs comprenant le directeur compositing de Compiz et les outils graphiques associés de config) se transporte en tant que non-default dans une distribution principale de Linux, le SUSE 10.1, et est inclus dans le Linux de Frugalware de ou l'ordinateur de bureau 10. Xgl d'entreprise de Linux du SUSE peut être installé assez facilement pour le Ubuntu 6.06 LTS (Drake pimpant) et 6.10 (Eft énervé) et pour le Freespire avec les paquets binaires des dépôts officieux . Xgl est également disponible car un paquet recouvert dans le Linux de Gentoo de , et car un PKGBUILD pour le Linux de voûte de .

Le plus défunt Linux 2007 de Mandriva de inclut les paquets officiels pour courir le Compiz , using Xgl et AIGLX . Mandriva fournit le drak3d , un outil pour configurer un ordinateur de bureau 3D dans deux clics. Également Sabayon est un distro qui a XGL et AIGLX déjà installés par défaut avec les conducteurs de propriété industrielle de nVidia et de binaire d'ATI.10 "Eft" énervé ; et postérieur AIGLX , pas Xgl d'utilisation, par défaut.

Si l'exécution d'AIGLX ou de NVIDIA du rendu indirect accéléré peut être employée, il n'y a aucun besoin d'employer Xgl. Xgl n'est pas nécessaire pour aucun jeu de puces de graphiques d'Intel de 810 en avant, de NVIDIA GeForce 2 à GeForce 7 (par le conducteur de fonctionnaire 9629), et de cartes d'ATI avec l'appui d'AIGLX (par le radeon libre de ou les conducteurs non-libres de fglrx de ).

Random links:Industrie de hache de Langdale | John Osborne (politicien) | Hélicoptère de CHC | Brian Macdonald | L'amour d'une soirée | Xgl