Page suivantePage pr�c�denteTable des mati�res

9. FAQ: OpenGL/Mesa ?

9.1 Qu'est ce qu'OpenGL ?

OpenGL est une API pour le graphisme de niveau interm�diaire d�velopp�e par SGI � partir de leur interface pr�c�dente Iris GL. OpenGL est devenu un standard il y a de �a quelques ann�es. Il est fourni et maintenu par l'ARB ( Architectural Revision Board ), une organisation � laquelle appartiennent par exemple SGI, IBM, DEC et Microsoft.

OpenGL fournit tout un ensemble de fonctions 2D et 3D pour le rendu de triangles et de polygones sur du mat�riel acc�l�rateur muni d'une architecture en pipeline. De fa�on plus g�n�rale, OpenGL forme un ensemble d'outils puissant pour le graphisme acc�l�r� sur ordinateur.

9.2 O� trouver davantage d'informations sur OpenGL ?

Le site officiel d'OpenGL, administr� par les membres de l'ARB : www.opengl.org,

On pr�f�rera peut �tre la passerelle vers OpenGL de Mark Kilgard : reality.sgi.com/mjk_asd/opengl-links.html. Ce site contient des pointeurs vers des livres, des pages de manuel en ligne, GLUT, GLE, Mesa, des portages sous divers OS ainsi que de nombreuses d�mos et des outils.

Si le d�veloppement de jeu utilisant OpenGL vous tente, il existe une liste de diffusion OpenGL-GameDev-L@fatcity.com accessible via Listserv@fatcity.com. Il s'agit d'une liste � contenu fortement technique et dont le d�bit est tr�s �lev�. Vous recourerez s�rement � procmail pour ventiler la centaine de messages quotidiens qui en provient. Pour r�duire le besoin en bande passante, servez vous de la commande SET OpenGL-GameDev-L DIGEST. Cette liste est inappropri�e si vous cherchez des documents d'introduction. L'archivage est assur� par le logiciel ListServ. Les commandes INDEX OpenGL-GameDev-L et GET OpenGL-GameDev-L "filename" permettent de se faire un id�e avant de souscrire.

9.3 IGlide met-il en oeuvre OpenGL ?

Non. Glide est une API propri�taire de 3Dfx dont plusieurs fonctions sont sp�cifiques aux composants Voodoo Graphics (tm) et Voodoo Rush (tm). Une librairie OpenGL 3Dfx est en cours de r�alisation ( voyez plus bas ). Diverses fonctionnalit�s Glide n�cessiteraient des extensions � OpenGL, certaines �tant d�j� disponibles par ailleurs ( les textures palettis�es par exemple ).

La librairie Mesa de Brian Paul et le pilote Mesa Voodoo de David Bucciarelli sont ce qui se rapproche le plus d'une version Linux d'OpenGL acc�l�r�e gr�ce � des p�riph�riques particuliers ( voyez plus bas ).

9.4 Existe-t-il un pilote OpenGL pour 3Dfx ?

Les sites web de 3Dfx et de Quantum3D annoncent une version d'OpenGL pour Voodoo Graphics (tm) en fin d'ann�e 1997. Le pilote est actuellement en b�ta et seuls peuvent y acc�der les d�veloppeurs ayant souscrit � un accord de b�ta-test sp�cifique.

Aucun portage vers Linux n'a encore �t� annonc� pour l'instant.

9.5 Existe-t-il une version commerciale d'OpenGL pour Linux et 3Dfx ?

Je n'ai entendu parler de rien de tel. La derni�re fois que je m'y suis int�ress�, ni MetroX, ni XInside ne proposaient OpenGL.

9.6 Qu'est-ce que Mesa ?

Mesa constitue une r�alisation libre de l'API OpenGL, dont l'auteur est Brian Paul, et � laquelle de nombreuses personnes ont contribu�. Ses performances sont respectables et bien qu'elle ne soit pas certifi�e de fa�on officielle, sa conformit� aux sp�cifications de l'ARB la rend, sinon parfaitement compatible avec OpenGL, du moins plus compl�te que bon nombre de produits commerciaux.

9.7 Mesa fonctionne-t-elle avec 3Dfx ?

La derni�re version de Mesa 2.6 fonctionne avec Linux Glide 2.4. Bien que ce soit le cas depuis des versions plus anciennes, ce pilote est encore en d�veloppement. Attendez vous donc � des bugs et des performances �loign�es de l'optimum. Les progr�s sont cependant permanents et les correctifs aux bugs viennent souvent assez vite.

Il vous faudra l'archive de la biblioth�que Mesa : iris.ssec.wisc.edu FTP site. Il est �galement conseill� de s'abonner � la liste de diffusion, notamment pour d�busquer les bugs ou les limitations du pilote. V�rifiez que vous disposez bien de la version la plus r�cente. Mesa 3.0 est en pr�paration.

9.8 Qu'en est-il de la portabilit� de Mesa pour Glide?

Mesa est disponible pour Linux et Win32. Une application qui s'appuie sur Mesa ne devrait �tre sp�cifique qu'en ce qui concerne le code li� au syst�me. Typiquement il s'agira de passer d'X � Windows ou de WGL � GLX. Si vous avez recours � GLUT ou � Qt, vous devriez �viter toutes les sp�cificit�s dues au syst�me pour une grande majorit� d'applications. Il n'y a que quelques domaines particuliers, comme l'�chantillonage des positions successives de la souris, qui ne sont pas couverts par les GUI portables dont on dispose.

Mesa/Glide est �galement disponible pour DOS. Il s'agit d'un portage 32 bits maintenu par Charlie Wallace qui assure la synchronisation avec Mesa. Pour la derni�re version, reportez vous � : www.geocities.com/~charlie_x/.

9.9 O� trouver des informations sur Mesa ?

La page web de Mesa : www.ssec.wisc.edu/~brianp/Mesa.html. L'archive de la liste de distribution Mesa : www.iqm.unicamp.br/mesa/. Cette liste n'est certes pas d�di�e � 3Dfx ni � Glide mais il s'agit d'un bon point de d�part si le recours au mat�riel 3Dfx pour acc�l�rer Mesa vous int�resse.

9.10 O� trouver des informations sur Mesa Voodoo ?

Pour les informations les plus � jour sur le pilote Mesa Voodoo de David Bucciarelli tech.hmw@plus.it, reportez vous � la page web : www-hmw.caribel.pisa.it/fxmesa/.

9.11 Mesa g�re-t-il le texturage multiple ?

Pas encore en ce qui concerne Mesa 2.6 mais la question est � l'�tude. Vous disposerez probablement d'une extension OpenGL EXT_multitexture sous Mesa une fois qu'elle sera achev�e. Il n'y a pas de sp�cifications fig�es pour le texturage multiple dans OpenGL. La version 1.2 d'OpenGL est cens�e pr�ciser les choses. Les prochaines versions de Mesa incluront peut �tre une mise en oeuvre sp�cifique au pilote Glide mais ceci ne sera pas une priorit� tant qu'il ne se trouvera que quelques cartes Obsidian Quantum3D � int�grer plusieurs TMU. La banalisation des cartes Voodoo 2 (tm) changera certainement la donne.

9.12 Mesa supporte-t-elle le filtrage tri-lin�aire en une seule �tape ?

Linux Glide g�re cette op�ration mais ce n'est pas le cas de Mesa ( au moins jusqu'� la version 2.6 ). Le d�veloppement est en cours.

9.13 Qu'est-ce que le hack Mesa ( "Window Hack" ) ?

La derni�re version de Mesa incorpore une fonctionnalit� exp�rimentale pour XFree86 sous Linux. L'�mulation GLX de Mesa copie le dernier tampon de m�moire vid�o mis � jour depuis la carte Voodoo Graphics (tm) vers la m�moire vid�o pour chaque appel � la fonction glXSwapBuffers. Mesa offre �galement cette possibilit� sous Windows.

Il en r�sulte bien s�r une charge assez importante au niveau du bus PCI, et ce d'autant plus que le m�canisme utilise l'extension SHM du MIT � X11 et non pas le DGA XFree86 lors des acc�s � la m�moire vid�o. On pourrait th�oriquement employer la m�me technique avec SVGA par exemple. Le calcul du rendu limit� � une fen�tre peut donc tirer pleinement parti de la pr�sence d'une carte Voodoo Graphics (tm). De plus, on �vite l'interm�diation VGA qui d�grade le signal vid�o ( les moniteurs haut de gamme tels le EIZO F784-T l'illustrent tr�s bien ).

Notez que cette fonctionnalit� exp�rimentale n'a RIEN � voir avec le Voodoo Rush (tm). Elle ne concerne que les cartes Voodoo Rush (tm), un point c'est tout. Enfin, il est n�cessaire d'utiliser une version modifi�e de GLUT puisque la gestion des �v�nements et la cohabitation avec le gestionnaire de fen�tres sont alors du ressort de l'application ( et non du pilote ! ).

V�rifiez le positionnement des variables suivantes :


export SST_VGA_PASS=1          # to stop video signal switching
export SST_NOSHUTDOWN=1        # to stop video signal switching
export MESA_GLX_FX="window"    # to initiate Mesa window mode

Si vous oubliez une des variables SST, votre carte VGA sera d�sactiv�e et l'affichage dispara�tra. X restera cependant toujours actif et vous risquez d'�prouver certaines difficult�s pour revenir en aveugle � une situation normale.

Pour clore le sujet, on remarquera que la biblioth�que libMesaGL.a ( ou celle en .so ) est susceptible de contenir les fonctions d'interfa�age pour diff�rents clients. Ainsi les fonctions GLX, OSMesa et fxMesa ( voir m�me SVGAMesa ) peuvent �tre compil�es au sein d'une unique biblioth�que libMesaGL.a. Un programme client attentif saura les appeler simultan�ment.

9.14 Qu'en est-il de GLUT ?

La distribution GLUT de Mark Kilgard constitue une excellente ressource pour ce qui est des applications type et des utilitaires. Vous la trouverez � : reality.sgi.com/mjk_asd/glut3/. La derni�re version est GLUT 3.6 et les discussions ont commenc� pour GLUT 3.7 ( alias GameGLUT ). Mark Kilgard ayant r�cemment quitt� SGI, il est possible que l'archive se d�place en cours d'ann�e; pour l'instant elle reste en place sur le site de SGI.

Il existe une liste de diffusion sp�cifique � GLUT : glut@perp.com. Envoyez � majordomo@perp.com le message suivant :


 help
 info glut
 subscribe glut
 end

GLUT g�rant le d�doublement des tampons de m�moire, le fen�trage, les �v�nements et d'autres op�rations fortement li�es au mat�riel et au syst�me d'exploitation, la cohabitation de GLUT avec Voodoo Graphics (tm) n�cessite un support qui est encore en cours de d�veloppement au niveau de GLX pour Mesa. La plupart des situations sont d�j� prises en compte.


Page suivantePage pr�c�denteTable des mati�res

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:31