Windows Vista : Aero vu du côte technique
L'une des nouveautés les plus visibles de Windows Vista tient naturellement à son interface graphique baptisée Aero Glass. Il s'agit d'ailleurs de l'une des fonctions qui a fait couler le plus d'encre car pour la première fois un système d'exploitation Microsoft utilise les capacités d'une puce graphique 3D pour le simple affichage du bureau. Et pour profiter des nouveaux effets de l'interface que sont l'animation des fenêtres ou leur transparence il faut impérativement disposer d'une carte graphique de type
DirectX 9.0 ayant par ailleurs des
pilotes compatibles WDDM. Concrètement, les cartes de type GeForce FX 5200 et Radeon 9500 ou supérieures sont compatibles Aero. Le cas des chipsets avec circuit graphique intégré est plus épineux, particulièrement chez Intel où l'i855GM, qui équipe pourtant nombre de portables Centrino de première génération, ne gère tout simplement pas Aero Glass. Bien sûr Vista dispose en quelque sorte d'une interface de secours pour les machines dont le circuit graphique est trop ancien ou trop faible, mais nombre des effets et fioritures d'Aero disparaissent purement et simplement. En vérité, ce sont même deux interfaces allégées qui sont disponibles : Vista Basic qui est assez proche de l'interface XP et Classique, qui réplique l'interface de Windows 2000.
Windows Vista : avec Aero Glass et sans...
Pour profiter d'Aero Glass il faudra au minimum taper dans du i945G chez Intel, le 915G n'offrant par défaut aucune prise en charge de l'interface graphique comme nous avons pu le vérifier dans nos tests. Microsoft indique d'ailleurs qu'Intel ne proposera pas de pilote WDDM pour les circuits i915G... Le GeForce 6150 de NVIDIA supporte pour sa part l'interface Aero offerte par la Beta 2 de Vista et ce nativement, tout comme le Radeon Xpress 200 d'ATI. Reste que durant nos tests nous avons pu observer des performances assez faibles au niveau des changements de fenêtre en 1280x1024, résolution native de nombre de LCD, avec ce genre d'IGP. La faute notamment à la mémoire partagée…
Mais en quoi consiste Aero exactement ? Plus que les simples effets graphiques ci et là, Aero repose naturellement sur DirectX et n'est en fait que la partie visible d'un ensemble d'API, des bibliothèques de programmation, qui permettent aux développeurs de créer des applications tirant profit des nouvelles capacités graphiques du système d'exploitation. Techniquement, Aero se base sur un tout nouveau modèle de pilote graphique dit WDDM (Windows Display Driver Model). Pour s'afficher, Aero utilise le pipeline Direct3D et octroie à chaque fenêtre du système une surface d'affichage pleine taille. Tout cela est géré par le Desktop Window Manager et par l'Unified Composition Engine (UCE). Le bureau est en effet recomposé dynamiquement plusieurs fois par seconde, tout comme le contenu de chaque fenêtre, pour finalement offrir des effets assez intéressants comme la prévisualisation du contenu des fenêtres lorsque celles-ci sont réduites à l'état de boutons sur la barre des tâches, et ce y compris pour les applications diffusant des flux vidéos. Qui plus est, l'UCE utilise diverses techniques pour éviter de surcharger la bande passante mémoire et le processeur lors de l'affichage des fenêtres, en ne modifiant par exemple que les zones d'affichage ayant effectivement changées plutôt que l'ensemble du bureau. Enfin, face à un Windows XP où le processeur du PC est mis à contribution dès que l'on déplace une fenêtre, c'est ici le GPU qui est mis à contribution, entrainant de facto une baisse de la consommation processeur.
Pilotes graphiques WDDM et DirectX 9.0 en attendant DirectX 10…
En ce qui concerne l'accélération graphique, Windows Vista dispose comme nous l'évoquions plus haut d'un tout nouveau modèle de pilote graphique, le WDDM. Celui-ci repose entièrement sur DirectX, qui agit comme une sorte d'intermédiaire entre le pilote graphique et le noyau graphique. Le modèle WDDM impose aux pilotes graphiques de se diviser en deux parties : un pilote s'exécutant en mode utilisateur, et un pilote s'exécutant en mode noyau, le but étant toujours d'assurer un maximum de stabilité. Tout ou presque s'exécutant au niveau du pilote en mode utilisateur, un simple redémarrage du pilote suffit en cas de plantage à réinitialiser le circuit 3D. Autre nouveauté majeure, le GPU devient une ressource partagée entre les applications et ce afin que plusieurs applications 3D s'exécutent au même moment. Grâce à ce nouveau système, l'installation de pilote graphique ne nécessite plus le redémarrage du système.
Sous Vista, on distingue deux niveaux de support DirectX : le premier se base sur des spécifications améliorées de DirectX 9.0c, le second repose sur DirectX 10. Cette nouvelle API 3D de Microsoft inaugurera notamment le Shader Model 4.0 qui reprend certains des principes de la
Xbox 360. Celui-ci devrait ainsi offrir l'unification des instructions de shaders afin de traiter de la même manière les vertex et les pixel shaders alors qu'il serait question d'introduire un nouveau type de shaders baptisé geometry shaders. Mais l'autre nouveauté de taille de DirectX 10 vient du fait que les capacités d'une puce graphique compatible seront fixes et identiques d'une marque à l'autre. Aujourd'hui DirectX interroge les puces graphiques pour savoir quelles fonctions sont prises en charge et quelles fonctions ne sont pas supportées : avec DirectX 10 le matériel devra être unifié et prendre en charge obligatoirement toutes les spécifications de Microsoft. Cela devrait donc mettre un terme aux fonctions propriétaires que l'on retrouve chez ATI mais pas chez NVIDIA, et vice-versa. Sachez enfin que Vista assurera une compatibilité descendante avec les applications DirectX 8 (par exemple).
Propriétés DirectX sous Windows Vista Beta 2
Côté OpenGL, Windows Vista se base sur le moteur logiciel OpenGL 1.4, pas de problème donc pour les fans de
Doom, même si les pilotes Beta d'ATI ne comprennent pour l'heure aucun support de l'OpenGL... Autre étrangeté : l'exécution d'applications OpenGL fenêtrées désactive l'interface graphique Aero au profit de la version basique. A noter qu'avec Vista, le pipeline vidéo évolue également. Par défaut, le
Windows Media Player utilise en effet les accélérations DXVA et l'on peut profiter d'un affichage simultané de jeux 3D et de la lecture d'une vidéo. En revanche, la compatibilité avec les applications de lecture vidéo actuelle pose problème : la simple utilisation de
VLC ou de Nero ShowTime permet de s'en convaincre puisque l'interface graphique Aero est systématiquement désactivée dès le lancement de la vidéo.