Je ne cherche pas à lancer une guerre, je veux vraiment avoir votre point de vue sur le sujet...
J´ai de plus en plus de mal à suivre tous ceux qui annoncent les biens faits de OpenGL. Je viens de lire ( bon... en diagonal je l´admets =p) le post de Kouic sur " se lancer en prog" et je me pose quand même quelques questions face à tout ça...
---------------
OpenGL:
+ Est facile comparé à DX.
+ Portable
+ Gratuit
---------------
DirectX:
+ Gratuit
+ Est rendu à la version 9, OGL en est encore à la version 1.4, aucune révision majeure n´a eu lieu depuis des années, seulement des corrections ( d´où le . 4 pour les moins futés).
+ Support DirectMusic
+ Support DirectSound
+ Support DirectInput
+ Support DirectPlay
+ Stabilité supérieure dans un environnement Windows
+ Vitesse généralement supérieure ( bien que ça n´est pas toujours été vrai) dû à une bonification des chipsets de cartes graphiques face au D3D
+ Vient avec un SDK complet.
+ À ce que j´ai pu comprendre, la version 9 inclu un meilleur support et une plus grande facilité d´accès aux shaders.
+ Direct X vient avec son propre format de mesh ( les . x) et une fonction pour les charger ce qui n´est tout de même pas si mal si on compare à OGL qui ne fournit qu´une fonction obsolète et non-portable pour charger des bitmaps.
Quelqu´un peut m´expliquer ? Une fois OGL 2 sortie je vais piger mais là...
La portabilité ça importe vraiment ? Des gamers sur Linux y´en a pas une pelleté comparé à ceux sur Windows.
- OpenGL prend en charge les fonctions bien avant directX, suffit de telecharger le glext.h mis a jour quelques temps apres le sortie des cartes ( contrairement a directX ou faut attendre une " vraie" version complete. En + avec cette mentalité d´extension, il y a juste des fonctions a rajouter, rien a reecrire, c pour ca qu´openGL n´a pas besoin de sortir tous les ans ou tous les ans et demi.
- Pour le son et la musique y´a OpenAL ( utilisé dans l´unreal warfare engine entre autres), qui plus est Direct sound ne prend pas en charge les formats . mp3 et le . ogg non ? ( cf: coderz magazine n°1 =) Ca fait limité pr l´utilisation qd mm.
- Pour direct input et direct play, y´a wxwindow ou SDL, avec une architecture fenetre et reseau totalement portable ( utile pour linux et mac ( faut pas les oublier eux =)).
- Pour la stabilité les seules plantages que j´ai eu en GL sont celles dues a des erreurs de code... je pense que la stabilité des 2 se vaut pour peu qu´on code proprement
- Vitesse superieure bof... dans les jeux pros elle est equivalente. j´ai pas fait de tests strictements identiques ss dx et gl pr demontrer par a + b mais je suppose qu´elle est identique a peu de choses pres
- C sur que le fait qu´il n´y ait pas de SDK rend opengl moins " user-friendly", mais la facilité de programmation comparé a directX reequilibre les choses =) OpenGL n´est que l´api graphique, le reste on doit le trouver ailleurs
- Pour les shaders, avec opengl on peut les ecrire directement via les extensions arb_fragment_program et arb_vertex_program ou on peut implementer le C for Graphics de nvidia... C´est plus sage, car la communauté est deja grande et les shaders ecrits sont hardware independants et cross api =)
- Le chargement des fichiers peut sembler etre problematique au debut mais en fait de compte il est tres vite resolu, il existe plein de libraries pour les loaders... L3DS et Lib3DS pour le format . 3ds par exemple... l´intel JPG library ou jpeglib, la librairie du consortium JPEG pour le chargement des . jpg... C´est pas un reel probleme, en + pour les formats geometriques on controle le loading de A à Z donc si il y a des objets supplementaires qu´on veut charger on peut ( voir la hierarchie des fichier . 3ds =)
- Neanmoins ce n´est pas malin de comparer OpenGL a directX, car l´un est une api graphique et l´autre un SDK de jeux... Mais OpenGL peut etre utilisé avec de nombreux tools 3rd party, de libraries etc... donc au final, ca revient a plus de fonctionalités, la simplicité du coding opengl et du vrai C++ en plus =)
opengl + 46 autres librairies . .. ca fait du code super propre ca ! mais bien sur . ..
Vachement homogène comme code à l´arrivée!
ouais ouais je vous entends déjà dire.. mais si tu encapsules les différentes lib dans ta propre librairie bin le code sera homogène.
mais oui n´empêche que !
mmmmmm aitasseur....tu as raison...n´empeche qu´il est vrai que microsoft est connu pour faire du code propre....
Mais c´est le principe des librairies non ?
Et tes DLL ? ce ne sont pas des lirairies ?
Vi certainement, mais ce que je voulais dire c´est qu´à vouloir vraiment utiliser OpenGL autant l´associer avec DirectX pour les autres composants... Plutôt que d´en utiliser 45 autres!
Alors on me dira et la portabilité bordel ! ?
on s´en fout de la portabilité ! ! ce n´est qu´une belle merde inventée par certains programmeurs qui se masturbent bien l´esprit en prétendant faire du code qui tourne sur tel ET tel ET tel système!
-> finalité : se faire plaisir à titre personnel, en tant que programmeur pour prétendre avoir un code " portable", alors qu´en fait ca ne sert à rien pour les utilisateurs ( qui sont pour la plupart sur Windows)!
AHAHAHAHAH
opengl est mieux car il a pas des noms de type de variable ou fonction de 150 caractères ; )
Enfin, il faut comparer ce qui est comparable.
Compare direct3D avec opengl..
Si on programme sous windows, et qu´on veut du son, du réseau... alors on peut utiliser directsound directplay...etc Si c´est sous linux, comme il a été dit, il y a des librairies tout aussi performantes ( voire mieux.. pas besoin de 50 lignes pour créer sa fenètre).
Si c´est juste pour programmer pour son plaisir, et pas faire un jeu complet, alors opengl est plus facile a prendre en main, notamment avec glut. En 50 lignes on peut afficher un triangle. Avec direct3D ben... avec 50 lignes on a à peine un titre dans une fenêtre ; )
Sinon une dernière critique pour directx. Tu semblais dire que la version 9 c´est mieux qu´une 1.4. Mais lorsqu´ils changent de version, même s´il garde la compatibilité ascendante, il y a de gros changements. Par ex de la version 7 à 8, directdraw ( fonctions 2D) a complètement disparu, et il faut utiliser les fonctions des textures pour par ex faire un ptit jeu en 2D. Avant également pour la 3D, il fallait créer des surfaces 2D, et ca utilisait les fonctions de flip de la 2D. Changer d´architecture comme ca entre version c´est pas terrible, alors que opengl rajoute seulement des fonctionalités quand de nouveaux standards sont implémentés en dur sur les cartes.
On leur a peut être pas dit ce qu´il y avait après 1.4 tout simplement . ..
Laissez les chercher le numéro de version suivant. Ils vont pas tarder à le trouver j´en suis sur.
( ahahahah)
c´est sur qu´une version 9 ca fait vachement sérieux... ils ont eu besoin d´un tas de versions pour arriver à un truc + ou - correct..
bah ecoutes Aitasseur c pas parce que tu fais du code que pour windows que tu dois blamer ceux qui veulent essayer de porter leur projet sur macos ou linux.
Ensuite je vois pas en quoi l´utilisation de multiples libraries vient nuire à la clareté du code, il suffit de creer un wrapper entre la librarie et ton application et voila, t´a les fonctions dont t´a besoin...
Et pour finir les numeros de versions importent peu, avec OpenGL t´a toutes les fonctions existantes avec glext.h... Le seul truc qui chagera a la version 2 c le langage haut niveau de shaders mais y´a deja le Cg donc... M´enfin bon c´est sur que c´est moins stylé que d´utiliser une api avec un gros chiffre derriere ( car si le chiffre est gros c parce que c´est tres puissant)
Je reste partiellement daccord avec mon opinion et de base et celle de aitasoeur ( le partiellement c´est pour l´histoire des programmeurs qui se masturbent à l´idée de faire du code portable...)
Côté propreté il me semble de mauvaise foi de ne pas admettre que d´utiliser OpenGL et plusieurs autres sytèmes ( SDL, Glut, . ..) enlève du professionalisme au code.
Kookii j´ai un peu de mal à te suivre, la version 9 de DX est impressionante selon moi ( pas seulement ± correcte). Beaucoup, beaucoup de détails intéressant. Parlons de DDraw... *Ahem* OpenGl n´offre pas d´alternative pour faire uniquement de la 2D, je pense que la question est close ; ). Sérieusement, ouais, ils font des gros changement à chaque version de l´API, mais ce qui est venu avant est encore présent en grand partie, ce qui permet de tout mettre à jour et d´augmenter la vitesse du proggy... C´est pas si mal selon moi.
En ce qui concerne la réponse de MASkwarE... errr ouais bin dit de même j´te donnerais presque entièrement raison ; ). Cependant ( car y´en a un), plusieurs programmeurs ici et là admettent la puissance de DX sur OpenGL côté vitesse. L´API change encore et encore et encore et les créateurs de chipsets bossent pour suivre tout c´est changement. Vous allez me faire croire que c´est pas bénéfique côté vitesse ? OGL n´a pas bénéficié de toutes ces mises à jour... Pour en tirer vraiment d´la vitesse ( OGL), il faut acheter une carte basé sur un chipset particulier ( hmmm j´avais vu une carte de ce genre... FireGL, c´est possible ? ).
La stabilité... Encore une fois, produit Microsoft avec produit Microsoft, comment voulez-vous que ça soit moins stable ( surtout après 9 versions) qu´un produit Microsoft avec produit SGI...
Je reste septique au bout du compte.
Oh et une petite chose, les libraries qui managent eux-mêmes la class de la fenêtre ( GLUT entre-autre), ça n´est pas du tout recommendable selon moi ( surtout que, faire une fenêtre, ça n´est pas si compliqué une fois qu´on a saisi que c´est surtout d´la matière à retenir par coeur ou, en tout cas, à noter et recopier).
tu dis que passer d´une version a l´autre est facile?
Je me reexplique
ben passe de la version 7 a la 8. Bien sur tu peux tjrs en utilisant la 8 utiliser les fct de la 7 puisqu´´ils gardent une compatbilite avec les versions d avant. Mais je peux t´assurer que l´architecture 2d/3d de la 7 a la 8 a completement change, et je suppose que les " proggy" ont du revoir toutes leur structures pour s´adapter a ce changement.
Pour revenir au cote proprete, en quoi utiliser des librairies differentes enleve a la proprete et au professionalisme?
en quoi utiliser direct3D et directsound par ex est plus propre que opengl et directsound?
Y´a un truc dans directsound qui fait
y´a rien qui lie direct3d aux autres trucs de directx. Avant y´avait la 2D et 3d mais maintenant c´est finit.
Alors faut comparer ce qui est comparable.
Direct3D et opengl
pcq on peut faire du opengl avec directsound directplay...etc
on peut aussi faire du opengl avec sdl si on veut faire le malin sous linux.
donc faut pas comparer tout directx juste avec opengl.
je maintiens donc ce que j´ai dit, opengl et directx ( sans direct3D) ou bien direct3d + directx ( le reste) c´est aussi propre l´un que l´autre car inclure d3d ou opengl c pareil...
c´est juste psychologique.
je me suis mal exprimé en fait.
directx + opengl, c´est juste dans le principe que c´est pareil, mais en réalité c´est pas une tres bonne methode de faire comme ca, puisqu´on perd en facilite d utilisation ( tout directx) et portabilite.
Et ce qui est plus profesionnel a mon avis c´est d´avoir des modules bien separes, interchangeables. Genre la gestion du clavier me plait pas avec SDL ben jvais prendre autre chose ou en faire un a moi. Si on fait ca avec directx, alors on perd le seul avantage de directx qui est le tout en un...
Niveau performance, direct3d et opengl se valent en vitesse. La seule difference que tu pourras voir c´est celle que le systeme d exploitation fera. Mais bon, afficher 1M de triangle c´est pas opengl ou directx qui le fait, ils se contentent juste d envoyer les instructions a la carte graphique. Apres ca depend donc de comment son gérés les composants materiels, et p-e qu´entre windows et linux par ex, il y aura une ptite difference. Mais ca viendra pas de ce que t´utilises pour la 3d
quelques petits point:
- l´histoire du professionalisme, c´est juste histoire de faire comme les grand, et de faire bien en societe en sortant des noms techniques anglais bien complique et surtout bien creux.
c´est vrai que les gars qui ont fait UT2003 et neverwinter night sont des amateurs! faire leurs portage sous linux a l´aide de la SDL! pfffffff quel amateurisme! ils meriteraient d´aller se flageller dans la boue...
- pour l´histoire de la rapidite entre les 2 api, ca n´a rien avoir, il faut engueuler les drivers qui sont mal optimises.
- comme il a ete dit, on ne compare pas directx VS OpenGL mais directgraphics VS OpenGL, ou alors on fait du catch a 4 avec DirectX VS SDL+OpenGL
- OpenGL gere la 2D, mais SDL nain clut aussi ca
- OpenGL est a jour, elle inclut toute les dernieres fonctionnalites
- pour les histoires des milliers de libs, je me leve et je proteste!
si on utilise la SDL, qu´as-t-on besoin comme lib supplementaire par rapport a directx???
lire les fichiers 3DS? ah oui, mais pour directx aussi! ou alors faut les transformer en . x
ca alors aucune erreurs a corriger sur tout le topic, je vais devenir chomeur moi.
Hé oh, y´a une limite à l´extrêmisme.
" l´histoire du professionalisme, c´est juste histoire de faire comme les grand, et de faire bien en societe en sortant des noms techniques anglais bien complique et surtout bien creux.
c´est vrai que les gars qui ont fait UT2003 et neverwinter night sont des amateurs! faire leurs portage sous linux a l´aide de la SDL! pfffffff quel amateurisme! ils meriteraient d´aller se flageller dans la boue..."
Attention, je n´ai jamais, jamais, jamais dis que OpenGL ne permettait pas d´obtenir un bon résultat. J´entends simplement qu´il me semble que la balance penche vers Direct X en ce qui concerne la propreté. De mon point de vue, DX offre un ensemble tout-en-un et OGL est quand même pas mal plus éparpillé.
Vous ne devriez pas dire " L´API n´a rien à voir avec la vitesse", les constructeurs de carte vidéo font leurs plans et leurs drivers en tenant compte desdits API. Il existe des chipsets qui travaillent mieux sur OGL que sur D3D et vice-versa. Il m´apparait simplement qu´il en existe plus qui penche pour D3D. Tant que personne n´aura de chiffres, ça ne sera que pur spéculation, évidemment...
SDL, je connais SDL, j´ai utilisé SDL et je ne suis pas un p´tit fou de SDL. En fait, tout ce qui se trouve sous licence LGPL ou sous GPL ( reprenez moi si ce sont là les mauvaises initiales =p) me tombe sur les nerfs.
Sans compté que SDL vient avec une liste de bugs identifiés et non corrigés et certains sont en lien avec des choses très courante ( notamment, l´audio) mais c´est une autre histoire...
OpenGL est à jour et inclut les dernières fonctionnalités... Ouais, nous y croyons. Donc OGL 2 qui est en dév c´est pour rien ça ? Les nouvelles cartes graphiques spécialement adapté aux nouvelles fonctionalités de DX 9 ( Radeon 9700 par ex.), c´est pour rien aussi ? Pourquoi on ne parle pas des " nouvelles fonctionalités de OGL" ?
Et il faut faire attention, ce n´est pas tant d´avoir des " milliers ( le mot est bcp trop fort)" de libs mais bien d´en avoir beaucoup qui ne sont pas du tout sous la même bannière. Avec l´ensemble DX, tout est là et tout est Microsoft. D´un côté il va y avoir ceux qui diront que Microsoft c´est bon pour les chiottes et de l´autre ceux qui vont admettre que de tout regrouper sous une compagnie diminue les chances de bugs, d´incompatibilité, etc. Attention ! Il ne s´agit pas là de quelque chose de FLAGRANT, ne venez pas dire " OH OH OH j´ai jamais eu de prob avec X lib" il s´agit simplement d´une interprétation qui me semble logique.
J´ai un peu de mal à vous suivre avec la 2D là. Tu créés ton prog sur DX 7 tu le compiles, tu as DDraw... Tu décides de commencer un prog sur DX 9, tu peux encore faire du DDraw. Tu veux passer de DX 7 à DX 9 avec ton vieux prog en DDraw, dacc mais il va y avoir du porting à faire, c´est chiant mais c´est rien de sorcier...
" Attention, je n´ai jamais, jamais, jamais dis que OpenGL ne permettait pas d´obtenir un bon résultat. J´entends simplement qu´il me semble que la balance penche vers Direct X en ce qui concerne la propreté. De mon point de vue, DX offre un ensemble tout-en-un et OGL est quand même pas mal plus éparpillé. "
qu´entends-tu par proprete du code exactement?
si tu utilise SDL ou tiens, clanlib pour changer, tu obtiens un ensemble homogene et aussi propre que directx.
et en quoi OpenGL est-il eparpille? les noms des fonctions sont normalisees et leurs differentes formes ( vecteurs...) le sont tout autant.
ben quand je lis ca:
" Côté propreté il me semble de mauvaise foi de ne pas admettre que d´utiliser OpenGL et plusieurs autres sytèmes ( SDL, Glut, . . .) enlève du professionalisme au code.
j´ai plutot la nain pression que d´apres toi, c´est le nom de la societe qui nain porte plus que la qualite du produit...
d´ailleurs, j´ai pas bien compris pour OpenAL, ca signifie que si c´est fait par SGI c´est propre,
et si non, ca ne l´est pas?
et en parlant de UT2003 et neverwinter night, j´ai voulu te montrer que ces solutions developpees pourtant par des amateurs pouvaient etre des solutions viables.
pour la vitesse entre les differentes api, je suis d´accord avec toi! et cela depends de chaque constructeur.
pour les bugs de la sdl, tu peux les corriger, tu as les sources!
" OpenGL est à jour et inclut les dernières fonctionnalités... Ouais, nous y croyons. Donc OGL 2 qui est en dév c´est pour rien ça ? Les nouvelles cartes graphiques spécialement adapté aux nouvelles fonctionalités de DX 9 ( Radeon 9700 par ex.), c´est pour rien aussi ? Pourquoi on ne parle pas des " nouvelles fonctionalités de OGL" ? "
pour les nouvelles fonctionnalites des cartes, tu noteras la presence des extensions correspondantes sous OpenGL.
mais a vrai dire, je suis plutot en terrain nain connus la. je me suis pas encore trop nain teresse a OpenGL2.
et en allant sur le site de 3dlabs:
" Our goals for OpenGL 2.0 are to add support for pixel and fragment shaders, improve memory management and give applications more control over the rendering pipeline. In doing so, we still will provide compatibility with OpenGL 1.3 - so older applications will run on graphics accelerators with OpenGL 2.0 drivers."
mais peut-etre que c´est pour des raisons marketing. chaque version de directx nain tegre un certain nombre de fonctionnalites. cela peut etre plus commercial et plus avantageux de clamer haut et fort que toutes ces fonctionnalites sont nain tegrees en hardware par la carte.
" Et il faut faire attention, ce n´est pas tant d´avoir des " milliers ( le mot est bcp trop fort)" de libs mais bien d´en avoir beaucoup qui ne sont pas du tout sous la même bannière. Avec l´ensemble DX, tout est là et tout est Microsoft. D´un côté il va y avoir ceux qui diront que Microsoft c´est bon pour les chiottes et de l´autre ceux qui vont admettre que de tout regrouper sous une compagnie diminue les chances de bugs, d´incompatibilité, etc. Attention ! Il ne s´agit pas là de quelque chose de FLAGRANT, ne venez pas dire " OH OH OH j´ai jamais eu de prob avec X lib" il s´agit simplement d´une interprétation qui me semble logique. "
SDL ou clanlib ou d´autres, te fournissent un ensemble de fonctions tout aussi homogene que le fait directx
" J´ai un peu de mal à vous suivre avec la 2D là. Tu créés ton prog sur DX 7 tu le compiles, tu as DDraw... Tu décides de commencer un prog sur DX 9, tu peux encore faire du DDraw. Tu veux passer de DX 7 à DX 9 avec ton vieux prog en DDraw, dacc mais il va y avoir du porting à faire, c´est chiant mais c´est rien de sorcier..."
avec directx, si tu veut suivre l´evolution technologique tu es oblige de re-apprendre toutes les nouvelles nain terfaces a chaque nouvelle version.
Ehhh merdeuh...
Comme d´habitude, j´arrive trop tard ( saleté de décalage horaire à la con ; P )
J´aurais bien envie de rectifier quelques trucs:
" Vous ne devriez pas dire " L´API n´a rien à voir avec la vitesse", les constructeurs de carte vidéo font leurs plans et leurs drivers en tenant compte desdits API."
Ici, l´API n´a rien a voir. C´est le problème des construteurs, ça vient de la carte vidéo. Maintenant, on se retrouve à un cul de sac: Imaginons qu´il y aille environ 80% de chipsets pour DX, 20% pour OGL. ( Chiffres fictifs). Bon alors, la première logique est de se dire: pour que ça roule plus vite, on va faire DX. Et maintenant, quesqu´ils font, les C.G. OpenGL? On s´en fout c´est ça? Après, vous allez aller marquer sur la boite de votre
jeu-devenu-hypercélèbre-qui-vous-rendra-riche-et-q
ue-vous-décider-de-commercialiser-parce-qu´il-a-du
-potentiel:
Attention, vous devez posséder une des CG suivants:
-----(ect.)
Sinon votre jeu ne roulera pas parfaitement.
Je trouve ça croche, moi là... Qui a dit arnaque ?
Bon, je suis d´accord pour le côté, All-In-One de DirectX. C´est mieux, à mon avis.
Un gros problème chez Microsoft/DirectX, c´est leur politique de nouveauté. Je m´explique:
Chez ´Krosoft, quant ils font une nouvelle version de DX, ils la conçoivent et la rajoute comme une nouvelle couche sur l´ancienne. Pourquoi? Pour garder la compatibilité avec les anciennes versions, pardi! Le problème est le suivant: à chaque nouvelle version, on se retrouve toujours avec quelque chose de plus gros, un mastodonte de fonctions archaïques couplé avec une bonne version: Yé, on a LPDIRECT3D9! Mais c´est que le fait d´avoir aussi LPDIRECT3D7 et LPDIRECT3D8 ne serait pas lourd? C´est que ce vieil arsenal est toujours là, emcombrant et prenant de la place. Et Microsoft fignolant comme il le peut la nouvelle couche sur les anciennes, c´est fait un peu n´importe comment, et c´est comme ça que l´on se retrouvait à devoir utiliser des LPDIRECTDRAW7 pour faire du Direct3D7 =)
[Chose réglée avec le 8, il me semble]
Hopefully, OGL ne souffre pas de ce problème: les nouvelles versions sont des améliorations à des fonctions déjà existantes par exemple, ou de nouvelles tout court. Vous voyez comment c´est ingénieux? Pas de nouvelles couches, et les programmes qui appellent par exemple glVertex3f de OGL1.2 alors que sur l´ordi, il y a OGL1.4 recoivent le glVertex3f de OGL1.4, surement optimisé, sans modification du code! Je ne voit pas de problème là dedans, que des avantages. =)
Kelios
---------
Tiens, encore une discussion sur D3D vs OpenGL ?
On va encore se taper dessus ; )
Pour ce qui concerne la propertée du code, ba, moi je code en C++, donc meme si j´utilise une classe en C mal faite je la transforme en Classe toute propre.
Et si c´est une classe mal faite dont je me sert, je la transforme aussi en classe toute propre.
Si votre code est crade, c´est votre faute, pas celle des libs que vous utilisez.
Il y a tros de librairie a utiliser pour se servir de OpenGL ? ?
Bien, laisser tomber la prog, car il n´y a que ca, des libs en pagailles.
Encore une fois, lorsque l´on sait programmer et structurer un programe cela ne pose aucun probleme.
Pour la rapidité de OpenGL/ D3D, la je rigole bien fort. D3D est plus rapide que OpenGL... En fait tout ce joue dans votre code. Si y´a tros de poly ca ramera, normal. Ne comptez pas passer de 30 fps a 60 fps en changant de lib 3D.
D3D supporte les dernieres avancées technologique en 3D et le tout integrer ?
C´est bizzare, si je structure bien un prog en OpenGL je fait la meme chose. Mais bon, bien sur, si mon programe tiens dans le main.cpp, y aura plus de mal...
En fait, c´est bien une question de gout.
Moi je n´utilise pas DirectX parcsque je ne l´aime pas. C´est juste mon gout personnel, et mon OS preferer qui on fait pencher la balance.
Je peux en faire autant que quelqu´un qui utilise directX.
De toute facon, si tu ne fait pas ca pour le boulot, utilise la lib qui te fait le plus plaisir. Apres tout, on ne code pas pour s´ennuyer.
arf, je crois que j´ai mal nain terprete un de tes paragraphes!
desole!
bon je reprends alors ; -)
" Et il faut faire attention, ce n´est pas tant d´avoir des " milliers ( le mot est bcp trop fort)" de libs mais bien d´en avoir beaucoup qui ne sont pas du tout sous la même bannière. Avec l´ensemble DX, tout est là et tout est Microsoft. D´un côté il va y avoir ceux qui diront que Microsoft c´est bon pour les chiottes et de l´autre ceux qui vont admettre que de tout regrouper sous une compagnie diminue les chances de bugs, d´incompatibilité, etc. Attention ! Il ne s´agit pas là de quelque chose de FLAGRANT, ne venez pas dire " OH OH OH j´ai jamais eu de prob avec X lib" il s´agit simplement d´une interprétation qui me semble logique. "
si j´ai bien compris, tu veux dire que si tout est fait par une seule entite cela diminue les bugs et les nain compatibilites. je ne suis pas trop d´accord.
car par exemple, dans le jeu, tu auras une partie sonore, une autre graphique, etc...
et pourquoi cela est-il mieux que ce soit fait par la meme entite?
en quoi la partie sonore nain flue-t-elle sur la partie graphique ou rezo?
il vaut mieux tout decouper en partie(sonore, graphique, reseau, scripts...). mais que chaque partie fasse bien son boulot!
remarque, tu me diras que c´est le cas dans directx avec DG, DI, DS...
donc, justement, qu´est-ce que ca change si un tel ferait DG, un autre DI, et un autre DS puique toutes ces parties sont bien separees?
et on peut etendre ce raisonnement aux chargement des fichiers avec une lib pour les objets 3D, une autre pour les images...
evidement, cela n´est pas tres normalise du point de vue des nains terfaces, mais c´est pareil pour toutes les apis!
si tu prends directx, sdl, ou clanlib, tu auras une nain terface standardisee pour certaines fonctions(equivalentes pour les 3), mais des que tu en sors tu seras confronte au meme probleme de standardisation des nains terfaces.
voilivoilou!
j´ai peut-etre raconte quelques conneries, je regarde la tv en meme temps...