DirectX ou OpenGL

DirectX ou OpenGL - Programmation

Marsh Posté le 05-05-2002 à 22:24:20    

Voilà, chui po très au courant de la chose, g me suis mis sur DirectX depuis un petit moment mais des gens me disent que l'OpenGL c aussi puissant & bcp + simple...J'aimerai votre avis et les avantages / inconvénients que vous trouvez à ces 2 librairies, pr me faire un opinion !
Merci d'avance :hello:

Reply

Marsh Posté le 05-05-2002 à 22:24:20   

Reply

Marsh Posté le 05-05-2002 à 22:27:37    

tss tss. on te ment. pas le choix, routines assembleur ou sinon rien.
 
sérieusement, c'est le nième sujet sur la chose, donc recherche.

Reply

Marsh Posté le 05-05-2002 à 22:52:51    

g fais recherches mais aucune réponse claire....Apparemment les 2 se valent

Reply

Marsh Posté le 06-05-2002 à 00:04:56    

le opengl a un grand avantage, il fonctionne sur plusieurs platte forme...
 
tu peux faire aisément du opengl en delphi, c++....
il y a beaucoup de tutoriel qui te facilite la vie...


---------------
Borland rulez: http://pages.infinit.net/borland
Reply

Marsh Posté le 06-05-2002 à 00:49:02    

cgmarmotte a écrit a écrit :

Voilà, chui po très au courant de la chose, g me suis mis sur DirectX depuis un petit moment mais des gens me disent que l'OpenGL c aussi puissant & bcp + simple...J'aimerai votre avis et les avantages / inconvénients que vous trouvez à ces 2 librairies, pr me faire un opinion !
Merci d'avance :hello:  




 
DirectX 8 est plus puissant, plus intégré et plus répandu que OpenGL (en nombre de plateforme cliente). De plus c'est une API orientée objet contrairement à OpenGL. Enfin si tu utilises VC++, le SDK de DX8 est intégré à l'IDE pour developper rapidement des applis 3D.
DX8 intègre les vertex shaders en standard qqsoit les cartes.
DX8 est plus pratique à mettre en oeuvre pour la réalisation d'un moteur 3D avec des effets complexes (multi-passes, ombres, meshes skinnable par exemple)
 
La norme DX possède un réel support et suit l'évolution du hardware.
 
Les 2 seuls avantages de OpenGL est qu'il tourne aussi sur Linux et qu'il est plus simple de coder son 1er programme qui fait tourner un simple cube.


---------------
"Dieu a exploité tous nos complexes d'infériorité, en commençant par notre incapacité de croire à notre propre divinité." - Emil Michel Cioran
Reply

Marsh Posté le 08-05-2002 à 00:05:55    

Tetragrammaton IHVH a écrit a écrit :

 
 
DirectX 8 est plus puissant, plus intégré et plus répandu que OpenGL (en nombre de plateforme cliente). De plus c'est une API orientée objet contrairement à OpenGL. Enfin si tu utilises VC++, le SDK de DX8 est intégré à l'IDE pour developper rapidement des applis 3D.
DX8 intègre les vertex shaders en standard qqsoit les cartes.
DX8 est plus pratique à mettre en oeuvre pour la réalisation d'un moteur 3D avec des effets complexes (multi-passes, ombres, meshes skinnable par exemple)
 
La norme DX possède un réel support et suit l'évolution du hardware.
 
Les 2 seuls avantages de OpenGL est qu'il tourne aussi sur Linux et qu'il est plus simple de coder son 1er programme qui fait tourner un simple cube.  




 
ok, tu me rassures & t'expliques bien la chose, g continue sur ma lancée :)
merci  :jap:

Reply

Marsh Posté le 08-05-2002 à 13:09:40    

opengl c'est vraimpent accessible meme au debutat ,en peu de temps j'ai fait des truc pas mal ,directx j'ai jamais essayé par contre.

 

[jfdsdjhfuetppo]--Message édité par Grand Aigle le 08-05-2002 à 13:09:52--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 08-05-2002 à 14:04:25    

bah les deux ont des avantages/désavantages:
 
L'Opengl: est multi-plateforme et expose TOUTES les fontions des cartes 3D par des extensions propriétaires (et c'est là tout la discussion je trouve).  
 
Ce qui veut dire que tu utilises une carte 3D à fond mais tu peux avoir un moteur dédié nVidia ou Ati ou X ( et là la portabilité hum :( ).
 
Autre désavantage: les extensions propriétaires sont sujette à royalties, dans le cas ou un fabricant (par exemple SIS) aye une carte qui supporte les mêmes fonctions qu'une autre carte (nVidia ou Ati).  
 
Ce qui veut dire qu'avec deux cartes qui ont le même niveau de fonctionnalitées, la carte de celui qui est arrivé après l'autre, si les programmeurs se basent sur la première carte, devra payer pour avoir les extensions de la première.
 
Exemple: nVidia a fait des échanges de brevets avec S3 pour pouvoir EXPOSER le S3TC dans les drivers Opengl.
 
Evidemment ou bout d'un moment des extensions propriétaires sont généreusement -sic- donnés par leur possesseurs ou groupe ARB (Architecture Review Board) de l'OpenGL.
Tu voir dans Quake3 ou autre, les extensions "gratuite" (ARB), et les extensions propriétaires (NV,ATI,S3,KTX....)
 
DirectX: Uniquement Windows, mais tout ce qui est normalisé par Microsoft est en accès "libre" pour tous les fabricants.  
Ie les vertexs/pixels shaders, qui sont issus du R&D de nVidia, mais qui sont accès libre sans royalties pénalisantes à SIS,VIA,Ati... etc etc..  
 
Il n'y a pas de notion d'extension propriétaire.
Si le Hard peut le faire, le driver le déclare.
 
Sysmétriquement Grosoft cherche à faire une normalisation "propre" sans extensions propriétaires violantes, ce qui fait qu'un Geforce3/4 ou une Radeon 8500 n'ont PAS toutes leurs fonctionnalitées d'exposées dans le DirectX8.
 
De plus quand tu fait un moteur DirectX 8, tu cibles une cartes 3D DirectX 8 quelle que soit sa marque. Quand tu fait un moteur 3D en OpenGl, bin tu peux avoir un truc dépendant d'une carte précise d'un fabricant.
 
Le DirectX 8 t'imposes aussi une approche directe par Vertex & Index Buffer, ce qui est la méthode la plus rentable pour une carte T&L.
Alors que l'OpenGl, te pemet de faire du code de porc sans t'en rendre compte au début (je dit bien au début, après tu retombes sur la même chose au final).
 
A partir du moment ou tu dois mantenir tes modèles 3D en mémoire que ce soit un tableau de vertex maison, ou un vertex buffer ça change pas grand chose.
 
Donc ça se défends, et ça se vaux, ça dépends jusqu'oû tu veux aller...
 
Mais je trouve que la portabilité n'est plus là ou on croit qu'elle est..... Et aucun des deux n'a l'avantage sur l'autre.

Reply

Marsh Posté le 09-05-2002 à 00:08:33    

ok, g commence à y voir clair là :)
Merci pour vos explications, c tout à fait ce que g recherchais  :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed