CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

OpenGL ou DirectX ?

SuperDindon
SuperDindon
Niveau 8
14 février 2003 à 18:42:57

Tiens, ce qu´écris Passage me rappelle Philip K.Dick. Ca devient même évident que MS aura toujours un risque de concurrence, car il ne pourra pas bouffer tous les petits malins, dont d´ailleurs Linux dont la graticuité en fait une super défense. MS pourra toujors dse débarasser des nouveaux, ceux qui ne sont encore pas connus et dont la disparition passera inapercue m^me aux yeux des informaticiens, mais pas de Linux. Un développeur d´OS racheter des droits sur l´OS OpenSource de notre génération et programmé par des développeurs du monde entier, ça serait un scandale, ça ne marchera pas. Alors les médias s´en mêleraient, le grand public serait mis au courant, et bye bye MS,ou en tout cas il en sortira pas en un morceau.

hs_dino
hs_dino
Niveau 9
14 février 2003 à 19:55:36

Alors, OpenGL ou DirectX ?

arnaud81
arnaud81
Niveau 7
14 février 2003 à 20:10:55

lol dino : )

Je laisse tomber les API et je passe en cran au dessus ! Je laisse ce choix au moteur 3D...compatible Windows et Linux de preference : P

ted33
ted33
Niveau 5
14 février 2003 à 21:40:52

parfaitement ! Quake III ou le futur DooM III ! mais au fait, ils utilisent OpenGL ces moteurs non ? ; )

Lightness1024
Lightness1024
Niveau 10
15 février 2003 à 12:56:31

quand je pense que vous etes capables d´ecrire tout ca en si peu de temps et kan je suis pas la en plus. et cerise sur le gatal: tout ca parti d´un post remonté de 2001 ( par misterUp surement)
! !!

impressionnant non ?

et pour ma part: pendant un temps je me suis aussi rebelé contre MS mais je me suis rendu compte a force de comparaison que ils sont vraiment bons et que leur OS est kan meme bien foutu et tres pratique ( simple a utiliser, puissant, efficace) c´est finalement a moitié a cause de leur $ kils sont leader, et a moitié grace a leurs competences !

a propos de DX: la SDK est gratuite ( je c plus ki ki disais ke MS la faisait payer)

j´ai pas repérer de grosses conneries dans les post précedents, pour une fois kon a affaire a un débat serieux entre connaisseurs et sans insultes je dis: bravo.

@#; Lightness1024! <- celui ki a tout raté parce ke il peu pas se loger la semaine : (

arnaud81
arnaud81
Niveau 7
15 février 2003 à 15:57:12

Un peu de finesse dans un forum de merde : P

Light, c moi qui ai remonte la chose, et c est moi qui ai dit que le sdk etait payant...., bon je pensais a la XBoite en disant ca, le payement d une licence, c comme si on payait le sdk non ? on peut pas dire ca ? Et tous ceux qui ont developpes sur Direct X avant la XBoite, bah, c etait des testeurs gratuit qui se faisait bien laffaire a Windows....Je m´enfonce alors je la ferme ma C-Boite ( Camembert-Boite).

Mais alors la solution du pb c est koi ? ?? Allez votez !

  • Direct X
  • OpenGL
  • Moteur 3D ( a bas les API bas niveau, vive l´abstraction ! !! ; -)
Lightness1024
Lightness1024
Niveau 10
15 février 2003 à 17:27:03

lol exact ca ca vo qqch, faites votre propre moteur 3D complet comme Crystal Space.

GamerFou2
GamerFou2
Niveau 7
15 février 2003 à 17:41:40

bon je pensais a la XBoite en disant ca, le payement d une licence, c comme si on payait le sdk non ?

Tout les kits de développement pour console de jeu vidéo sont payants de toute facon ( Sony, Nintendo et MS forcément)
L´avantage de la Xboite comme tu dis c´est qu´en connaissant DirectX ( par Windows) tu ne seras pas dépaysé en développant sur XBox ce qui n´est pas le cas pour les autres plateformes.

Mais alors la solution du pb c est koi ?

Bin faire un moteur le + "portable" possible qui supporte donc toutes les API et facile à adapter aux nouvelles qui pourraient voir le jour . ..

Si tu comptes rester sur Windows bin pourquoi ne pas utiliser ce qui l´exploite le mieux, DirectX donc, sachant que tout y est intégré ( 3D, son, réseau, I/O etc...)

arnaud81
arnaud81
Niveau 7
16 février 2003 à 18:56:11

euh...pour linstant SDL me suffit lol ! !!!!!!
ou sinon, Crystql Space me tente pas mal quand je referais de la 3d....

et UP ! ce topic, faut le sauver tellement qu y a trop de reflexion dedans !

hs_dino
hs_dino
Niveau 9
16 février 2003 à 19:23:03

Tiens au fait, en parlant OpenGL, s´il y en a qui savent comment redimmensionner la fenetre de rendu sans besoin de killer le contexte et/ou qui savent comment créer des textures 16 bits, et bien ca m´aiderais pas mal. Merciiiiiii !

GamerFou2
GamerFou2
Niveau 7
16 février 2003 à 22:17:24

Pour les textures je suis pas sur du format que tu souhaites utiliser mais c´est quelquechose dans ce genre : ( cf la doc pour les autrex formats...)

glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB5_A1, textureWidth, textureHeight, 0, GL_BGRA_EXT, GL_UNSIGNED_SHORT_1_5_5_5_REV, pTextureData);

Pour redimensionner le viewport c´est une fonction assez classique :

void ResizeGLScene(GLsizei _width, GLsizei _height)
{
if ( !_height) _height = 1;

glViewport(0,0,_width,_height); // Reset the current viewport

glMatrixMode(GL_PROJECTION); // select the projection matrix
glLoadIdentity(); // reset the projection matrix

// Calculate the aspect ratio of the window
gluPerspective(45.0f, ( GLfloat)_width/(GLfloat)_height, 0.1f, 100.0f);

glMatrixMode(GL_MODELVIEW); // Select the modelview matrix
glLoadIdentity(); // Reset the modelview matrix
}

YoKy
YoKy
Niveau 3
16 février 2003 à 22:55:19

"> Mais alors la solution du pb c est koi ?
Bin faire un moteur le + "portable" possible qui supporte donc toutes les API et facile à adapter aux nouvelles qui pourraient voir le jour . . .
Si tu comptes rester sur Windows bin pourquoi ne pas utiliser ce qui l´exploite le mieux, DirectX donc, sachant que tout y est intégré ( 3D, son, réseau, I/O etc...)"

Bah moi je dirais que tout dépend ce qu´il veut faire...
Si il veut faire un jeu, c navrant à dire, mais vu que 90 % ( plus surement) des joueurs sont sur Windows, pourquoi s´embeter avec la portabilité ( arg c dur de dire ca, mais faut etre réaliste aussi)...
Et comme avec un jeu on recherche souvent la performance la plus importante ( sauf peut etre pour le Solitaire lol), sous Windows c DirectX ( sauf peut etre si tu t´appelles Carmack ; ) )

hs_dino
hs_dino
Niveau 9
16 février 2003 à 23:49:14

Merci d´avoir passé quelques instants a l´étude de mon problème.

Pour les textures, mon problème etait au niveau du "UNSIGNED_SHORT_1_5_5_5_REV", j´utilisais UNSIGNED_BYTE qui provoquait donc un crash dans opengl32.dll.

J´ai besoin de 2 formats : RGBA(4,4,4,4) et RGB(5,6,5)

Pour RGBA(4,4,4,4), j´ai fait ca :
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB4, textureWidth, textureHeight, 0, GL_BGRA_EXT, GL_UNSIGNED_SHORT_4_4_4_4_REV, pTextureData);
et ca marche.

Par contre, pour RGB(5,6,5), j´ai fait ca :
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB5, textureWidth, textureHeight, 0, GL_BGR_EXT, GL_UNSIGNED_SHORT_5_6_5_REV, pTextureData);
et là ca marche pas. Pas compris...

Pour le viewport, c´est ce que je faisais, mais ca ne marche pas.
Je resize le viewport, ca marche en interne dans le rendu opengl, mais lors du swapbuffer il n´affiche qu´une partie dont les dimensions correspondent a la taile de la fenetre lors de sa creation. Encore une fois, comprends pas...

maskware
maskware
Niveau 8
17 février 2003 à 13:25:11

Je vois pas en quoi openGL est une API obselete ou trop vieille, la principale "nouveauté" ds les cartes graphiques ces derniers temps est la programmabilité des shaders, et que je sache, les extensions openGL non-proprietaires necessaires pour ca etaient dans le glext.h de nVidia depuis 2001...
Ce qu´il y a de bien dans openGL c´est justement ces extensions qui font que les nouvelles fonctions sont disponibles quasiment directement. De plus ( infirmez moi si je me trompe), lorsqu´on code avec directX, il faut revoir la syntaxe a chaque nouvelle version non ?

MisterUP
MisterUP
Niveau 5
17 février 2003 à 13:35:44

"lorsqu´on code avec directX, il faut revoir la syntaxe a chaque nouvelle version non ? "

Comme avec OpenGL.
Un programme codé sous DirectX1 fonctionne avec DirectX9 puisque que ce dernier contient toutes les versions précedentes.
Ce qu´il signifie qu´il faut effectivement recoder les appels DirectX pour utiliser les nouvelles fonctionnalités, mais pas obligé si on préfère rester a une version précise.
Meme chose avec OpenGL, si tu veux utiliser les nouvelles extensions, il faut reimplémenter ton moteur, ca ne se fait pas tout seul.
En résumé, je ne sais si c´est un argument de comparaison valide.

arnaud81
arnaud81
Niveau 7
17 février 2003 à 13:44:07

quand tu dis que les extensions sont publique...ca veut quelles marchent aussi avec les cartes ATI ?

je ne crois pas non. Certes les extensions c sympa pour tester les dernieres nouveautes. Cependant, DirectX les offres aussi maintenant. En ces extensions ne sont pas normalises et ne sont accessible que par des moyens batard.

Il suffit de regarder John Carmack qui ne code plus un moteur, mais des moteurs, un pour chaque carte graphique a la mode...On a connu mieux comme avantages avec OpenGL....Avec DirectX, c´est + cool : programme une fois, ca marche pour tout...a condition que la carte soit compatible. : P

maskware
maskware
Niveau 8
17 février 2003 à 14:04:35

les extensions dans le glext.h de nvidia specifient ARB_Vertex_Program et ARB_Fragment_Program, et ces extensions ( ainsi que toutes celles de l´ARB d´ailleurs), sont utilisables par toutes les cartes. Des qu´une nouvelle fonction est cree, elle est de suite intergree dans les extensions proprietaires ( NV_Point_Sprites, etc...), puis plus tard dans des extensions de l´ARB, tres modulables, car par exemple ARB_Vertex_Program permet d´utiliser les vertex shaders sur une geforce 2 ( si l´extension exsite ( geforce 3 par ex), il l´use, sinon il wrape tout seul sur GL_NV_Vertex_Program, dispo lui, des sur les gf2)

maskware
maskware
Niveau 8
17 février 2003 à 14:07:20

ensuite, si carmack developpe pour des cartes specifiquement, c´est pour obtenir les meilleures performances que possible, mais il pourrait tres bien uniquement utiliser les extensions de l´ARB et de SGI ( compatibles avec tout)... mais bon etant donné que doom III est un moteur avant d´etre un jeu, ca explique p-e le pourquoi...

arnaud81
arnaud81
Niveau 7
17 février 2003 à 16:57:59

Pour les extensions ARB, bah carmack a fait son moteur au moins en trois partie :

  • NVidia
  • ATI
  • ARB

dun autre cote, pourquoi passer par des extensions alors qu elles sont normalisees ? Elles pourraient etre directement integrees dans le set dinstruction d´OpenGL...comme directX. ca rendrait les choses plus simple.

Kouic
Kouic
Niveau 9
17 février 2003 à 17:57:05

" Les extentions [...] pourraient etre directement integrees dans le set dinstruction d´OpenGL...comme directX. ca rendrait les choses plus simple."

Ba, ce n´est pas dans la philosophie de OpenGL. Avant d´integrer quelque chose dans OGL, il faut que ce soit approuver par un commité ( ou un truc du genre). Donc, ce qui est integrer dans OGL a ete deja testé approuvé. OpenGL n´a pas pour but de permettre a monsieur tout le monde de faire un jeux mais de fournir une librairie graphique fiable ( c´est le plus important) et performante ( si possible).
En plus de cela, il offre aux programmateur la possiblite d´utiliser les toutes dernieres fonctions graphiques des cartes recentes grace a ses extensions.

Il est ou le probleme ?
Au moins comme ca ca fait du travail !
Haaaaaaaaaaa, vous utilisateur de DirectX, vous etes devenu trop faignant ! ; )

Kouic, mesquin et cruel

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment