Cg : le « C » pour carte graphique est arrivé

Posté par  (site web personnel) . Modéré par Benoît Sibaud.
Étiquettes :
0
17
juin
2002
Matériel
nVidia vient de présenter « son » nouveau langage de programmation Cg (C graphique).

Ce langage qui propose un niveau d'abstraction supplémentaire par rapport à DirectX ou OpenGL, permet d'écrire du code (notamment pour la programmation des shaders) qui peut être portable sur tout type de processeur graphique (ATI, nVidia, Matrox) et toute API graphique (OpenGL, DirectX...). Il faut ensuite avoir le compilateur pour genérer le code compatible avec l'architecture et l'API.

Les spécifications de ce langage sont ouvertes et un compilateur de référence devrait bientôt être disponible. Libre aux constructeurs/éditeurs de proposer un compilateur pour son architecture.

NdA : si j'ai bien compris, avant Cg, la programmation de certaines fonctions graphiques (comme les shaders) doit être fait en assembleur pour chaque processeur graphique et chaque API.

Aller plus loin

  • # bon a premiere vue:

    Posté par  . Évalué à 10.

    c'est une norme ouverte
    ca a pas l'air d'etre propre a un fabricant
    c'est compatible avec openGL
    ca existe sous linux
    donc je dirait que ca a pas l'air mal.

    bon le seul truc c'est que ca a été developpé principalement pour faire des jeux enfin quand on voi la liste des boites qui ont données leurs avis...
    enfin je reste un peu mefiant quand meme, nvidia [cpaslibre] :-)
    • [^] # Re: bon a premiere vue:

      Posté par  (site web personnel) . Évalué à 10.

      Pour ceux qui veulent essayer de suite :)

      http://developer.nvidia.com/view.asp?IO=cg_toolkit(...)

      A noter une inversion sur le site de NVidia entre tarball et rpm :
      Cg-1.00-1.i386.rpm (~1 MB) Cg Toolkit 1.0 Public Beta for Linux, Tarball format.
      Cg-1.00-1.tar.gz (~1 MB) Cg Toolkit 1.0 Public Beta for Linux, RPM format.

      Par contre si y en a qui peuvent me dire pourquoi y a un Zip à 86Mo ?
      • [^] # Re: bon a premiere vue:

        Posté par  . Évalué à 4.

        reponse au pif sans renseignements :
        pour windows faut rajouter le compila avec alors que pour linux ca utilise gcc?
        • [^] # Re: bon a premiere vue:

          Posté par  . Évalué à 7.

          compilo de quoi ?
          C'est un langage à eux, c'est eux qui développent le compilo.

          Un compilo pour le reste du programme qui lui est en OpenGL ?
  • # Y a quand meme des trucs qui font peur...

    Posté par  . Évalué à 10.

    Au premier abord on voit des mots comme "ouvert" ou "libres aux autres frabicants", et pis on lit la FAQ:
    - "developed by NVIDIA in close collaboration with Microsoft": Ne faisont pas de l'anti-redmond primaire comme on en voit trop souvent sur DLFP, mais on ne les a jamais vu aller dans le sens du libre et de l'open.
    - "Who maintains the Cg Language Specification: NVIDIA maintains the Cg Language Specification and will continue to work with Microsoft to maintain compatibility with the DirectX High Level Shading Language (HLSL)": mouais, ca a l'air vachement ouvert aux concurents ces specifs !

    Cg est une couche d'abstaraction sur openGl et DirectX. Ce que ca m'inspire: Nvidia et Microsoft veulent faire disparaitre les specificites d'OpenGl et de ddirectX au profit de leur nouvelle implementation, dont les spes sont editees par Nvidia. Donc on passe du closed direct x chez Microsoft au closed qui englobe directx ET opengl chez Nvidia qui roule main dans la main avec microsoft. Donc c'est TRES INQUIETANT, et je pense que c'est une belle manoeuvre pour remettre en cause l'existence d'openGL en tant qu'alternative a direct X.

    Gardez a l'esprit la premiere question de la FAQ: "developed by NVIDIA in close collaboration with Microsoft". C'est du closed !!!
    • [^] # Re: Y a quand meme des trucs qui font peur...

      Posté par  . Évalué à 10.

      Ce que je ne comprends pas, c'est qu'est-ce que NVidia va gagner dans cette histoire d'association avec microsoft. C'est vrai quoi, ceux qui les interessent eux c'est de vendre du processeur, donc l'OS sur lequel tourne le jeux ils devraient s'en moquer un petit peu non ?

      Et puis changer encore une fois de language çà réduit les compatibilitées, etc ....
      • [^] # Re: Y a quand meme des trucs qui font peur...

        Posté par  . Évalué à 10.

        NVidia devient l'editeur de spe du standard, a la place de directx et opengl. On peut donc s'attendre a ce qu'il edite les spes en fonctions de sa propre implementation des tecnos et tout le monde devra suivre.

        Voici l'hegemonie qui arrive: Microsoft pour le soft, Nvidia pour le hard. Les spes passent par eux.
      • [^] # Re: Y a quand meme des trucs qui font peur...

        Posté par  . Évalué à 10.

        Et bien l'avantage pour NVidia c'est que si s'est eux qui font les specs et bien ils seront en avance sur leurs concurents et en plus ce sera prévu pour mieux fonctionner avec leurs cartes.
        L'alliance avec microsoft leur permet d'espèrer qu'à terme les autres constructeur vont être obligé de suivre...
        Et puis si ils s'entendent bien avec microsoft la xbox 2 sera aussi faite avec eux.

        Donc tout bénef ;) (enfin pour eux)
      • [^] # Re: Y a quand meme des trucs qui font peur...

        Posté par  . Évalué à 10.

        contrairement à ce que semble penser JMVF, ATI est bien sur les rangs pour la XBox2. Donc MS est bien en train de faire bosser NVidia en vrai esclave :

        1) qui veut faire une XBox avec moi ? nous on dirige le marché avec DirectX.
        2) NVidia sont les meilleurs, MS ne veut que du meilleur (je suis ironique là, mais pas eux)
        3) Quoi, ça nous coute trop cher votre GPU ! on baisse déjà notre merde à 199$ !
        4) bijour monsieur ATI ! oh c'est beau ! c'est moins cher ! ca vous dit de faire une XBox2 avec nous ?
        5) monsieur NVidia, on hésite sur la suite de notre collaboration, vous faites quoi pour nous ?
        6) NVidia : - euh nous on peut vous aider à enterrer OpenGL
        7) MS : - ok, on renforce votre hégémonie et vous renforcez la notre, "Faites nous confiance" et oubliez donc les épisodes précédent (comme OS/2 ;)
    • [^] # Re: Y a quand meme des trucs qui font peur...

      Posté par  . Évalué à 10.

      Le fait que NVIDIA veuille contrôler la spécif est pas choquant en soi : Sun fait la même chose avec Java, ça evite que n'importe qui fasse n'importe qu'oi avec le langage. ça n'empêche pas des implémentations indépendantes.
      • [^] # Re: Y a quand meme des trucs qui font peur...

        Posté par  (site web personnel) . Évalué à 6.

        en parlant de java, il me semble qu'il est interdit par Sun de faire une JVM libre pour les derniere versions de java. Suffit de faire une license comme il faut et tu bloque un peu ce que tu veux
        • [^] # Re: Y a quand meme des trucs qui font peur...

          Posté par  (site web personnel) . Évalué à 10.

          Je pense que c'est exactement le contraire. Depuis quelques temps (et en particulier grâce au travail de la fondation Apache et d'IBM (entre autres)), les specs qui sortent du Java Community Process peuvent être implantées en Open Source.

          Par contre, comme Java est une marque déposée, tu ne peux pas te prétendre Java comme ça ! Il y a eu en particulier des problèmes pour la partie J2EE, mais bon, ça n'empêche pas JBoss et consorts d'être utilisés et considérés comme des implantations tout à fait correctes (et open source) de J2EE.
        • [^] # Re: Y a quand meme des trucs qui font peur...

          Posté par  . Évalué à 8.

          Les rapports de Sun aux ll sont un peu plus complexes. Mais évoluent dans le bon sens.

          La communauté n'a pas oublié le coup de p... effectué à Blackdown au profit de Borland. Il possible de contribuer à Blackdown sous certaines conditions, notament la redistribution sous double licence par sun. D'ailleurs si quelqu'un peut me retrouver la _toute_première_ licence de blackdown (un sacré foutage de gueule), je suis prenneur.

          Ensuite, il y a le cas OO, là on peut choisir de permettre le double licenciement ou pas.

          Enfin, les contributions de Sun à GNOME son soit sous GPL, soit sous LGPL. De plus les développeurs Sun se soont parfaitement intégrés à la communauté GNOME.

          Il semble AMHA que Sun commence à comprendre ce qu'est le ll, mais il fort possible que Sun retourne sa veste dès qu'elle ne trouvera plus son intéret à contribuer à la communauté.
      • [^] # Re: Y a quand meme des trucs qui font peur...

        Posté par  . Évalué à 8.

        Deux questions :
        -- Sun n'élabore-t-il pas les spécifications de Java en collaboration avec d'autres éditeurs (dont le groupe Apache) ?
        -- N'est-ce pas un avantage concurrentiel énorme pour nVidia d'annoncer dans quelque temps que son nouveau chispset Jeforce (sic) 24.2, câble la nouvelle fonction rolo.blaster.transparo.reversible [TM (très marketing)] du langage Cg 22.3 ?

        Où sont les contre pouvoirs ?
      • [^] # Re: Y a quand meme des trucs qui font peur...

        Posté par  . Évalué à 10.

        Le fait que NVIDIA veuille contrôler la spécif est pas choquant en soi : Sun fait la même chose avec Java, ça evite que n'importe qui fasse n'importe qu'oi avec le langage.

        Si si, c'est choquant. En tous cas moi, ça me choque. C'est précisément ce que bien des gens reprochent à Java, et c'est précisément ce qui fait qu'on puisse faire n'importe quoi avec le langage ("on" représentant ici nvidia et microsoft).

        Les langages "normaux" comme C, C++, Lisp, ... ne sont pas aux mains de n'importe qui : il y a des organisations qui s'occupent les faire évoluer et de définir la norme (par exemple l'ANSI), et qui tiennent compte de tous les intérêts. Du coup l'ajout d'une nouvelle spécification au standard ne se fait qu'aprés de longues discussions et alors que la dite spécification a été longuement testée.

        Dans le cas de Cg, imagine que ce langage s'impose et devienne le standard unique pour la 3D. Nvidia aurait alors beau jeu de décider d'ajouter à la norme quelque chose qui ne marche que sur leurs cartes, voire que sur les os MS...
        Le même raisonnement tient pour Java, bien que Sun n'ait à priori aucun intérêt à ce genre de magouille dans un avenir proche.

        Bref, ça m'inspire plus de méfiance que d'enthousiasme. Si ils décident de rendre les specs dépendantes d'une organisation rassemblant au moins tous les constructeurs de cartes graphiques, pourquoi pas. Là, ça pue le pâté.
    • [^] # Parano ?

      Posté par  (site web personnel) . Évalué à 10.

      J'adore les précautions de langage du genre "je ne suis pas raciste, mais...". Ton raisonnement est quand même très très basé sur l'axiome "ça vient de chez MS, donc ça pue". C'est pas très fin.

      Par contre, des questions se posent effectivement au sujet de Cg et de la stratégie de NVidia. En fait, Cg est un concurrent direct de du OpenGL Shading Language (cf http://www.3dlabs.com/support/developer/ogl2/sourcecode/index.htm(...) ) qui est proposé pour l'intégration dans OpenGL 2.0 (l'implantation de ce langage par 3DLabs est open source). Le langage en question est paraît-il beaucoup plus évolué que Cg et est destiné au chip graphique que 3DLabs vient d'annoncer (cf http://www.tomshardware.com/graphic/02q2/020503/index.html(...) par exemple). Pour une discussion sur ce point, cf http://www.hardware.fr/news/lire/13-06-2002/#4909(...) par exemple. SL n'est pas implantable sur les GPU actuels, ce qui explique la trouille de NVidia...

      Le danger est qu'une fois de plus, un produit moins bon qu'un autre s'impose pour des raisons de marketing. Je suis d'accord qu'il s'agit d'une stratégie classique de Microsoft, mais je ne pense pas qu'il faille voir là une attaque de MS contre OpenGL (MS fait partie de l'ARB...), d'autant que Cg sera compatible OpenGL 1.4. Je pense que NVidia tente de contrer 3DLabs et utilise pour ce faire les armes dont elle dispose. C'est pas très joli, joli, mais je ne pense pas que cela présente un réel danger pour l'open source.
      • [^] # Parano ? Et comment !

        Posté par  . Évalué à 10.

        Autant je suis entièrement d'accord avec toi sur la première partie de ton post, autant je te trouve mais alors vraiment naïf quand tu penses que MS ne peut avoir de comportement de prédateur envers OpenGL vu qu'ils font partie de l'ARB ! C'est completement ignorer comment peuvent fonctionner ces comités ! Dans ce genre de regroupement, il y a toujours au moins 1 faul-cul sinon plus, toujours toujours toujours (exemple qui tue : Rambus et le JEDEC). D'ailleurs NVidia est aussi dans l'ARB...

        Donc oui NVidia tente des trucs, et MS aussi. Et là leur interêts convergent.
        • [^] # Re: Parano ? Et comment !

          Posté par  . Évalué à 3.

          Entierement d'accord.
          Et en plus j'ai des preuves :-)

          MS n'en est pas a son coup d'essai pour remplacer OpenGL. Farenheit ca vous dit quelque chose ? il y a quelque temps, MS avait passe un accord avec Silicon Graphics pour creer l'API 3D de nouvelle generation (oui, oui ils ont essaye de controler le developpement du successeur d'OpenGL) mais ca a (evidemment) fait un bide.

          Sans allez aussi loin directX est en concurence directe avec OpenGL...
      • [^] # Re: Parano ?

        Posté par  . Évalué à 8.

        Le succès du OpenGL Shading Language est lié à celui du prochain GPU de 3Dlabs (qui a l'air vraiment bien conçu) et à celui de OpenGL 2.0 (qui lui aussi paraît vraiment bien pensé).

        Mais il y a une ombre au tableau, si ce langage n'est pas compatible avec DX je craint que les autres constructeurs ne se ralient au Gc de Nvidia...
    • [^] # Re: Y a quand meme des trucs qui font peur...

      Posté par  . Évalué à -1.

      Gardez a l'esprit la premiere question de la FAQ: "developed by NVIDIA in close collaboration with Microsoft". C'est du closed !!!

      Il me semble que la on parle de collaboration etroite et pas le logiciel closed ....
      faudrait pas non plus s'enerver pour s'enerver.

      RuZed
    • [^] # Re: Y a quand meme des trucs qui font peur...

      Posté par  . Évalué à 6.

      OpenGL est a la rue pour ce qui est des shaders. Tout se fait via les extensions proprio, ce qui empèche toute portabilité simple. Il ne faut pas se leurrer, DirectX a su prendre l'avantage en releasant un nouvelle mouture quasiment tout les ans, surtout que maintenant les fabriquants taillent leurs chip en fonction de directX.

      Du coup un truc comme Cg peut apporter bcp a la communauté OpenGL via une pseudo standardisation. Pseudo car ca ne change en rien les specs d'opengl en elles même.

      Nvidia est un peu dans la même position qu'Intel. Ils sont suffisament gros pour conduire l'innovation ou ils veulent, et pas forcement dans le bon sens. Mais ca leur permets aussi de fournir pas mal de choses pour les developpeurs (il y a énormement d'article opengl chez nvidia).

      OpenGL reste l'API de choix pour les pros, d'autant plus que ceux-ci reste (ou viennent) sous *nix. Mais cela ne mène pas openGL sur la voie du grand public (ce qui est la cible des fonctions additionnelles des cg d'aujourd'hui...).
      • [^] # Re: Y a quand meme des trucs qui font peur...

        Posté par  . Évalué à 0.

        je crois que justement, les extensions ne sont plus proprio (compatibilite assuree entre celles d'ATI et de NVidia). de +, les shadders sont des extensions avec une connotation marqueteuse tres tendances (y a deja pas mal de version differente, rien que pour directx, qui correspondent a chaque nouvel HW, et on peut obtenir des effets presque semblable si l'on a EBMP).
    • [^] # Re: Y a quand meme des trucs qui font peur...

      Posté par  . Évalué à -2.


      Gardez a l'esprit la premiere question de la FAQ: "developed by NVIDIA in close collaboration with Microsoft". C'est du closed !!!

      Je ne vois pas vraiment ce qui te fais dire ça... Juste parce qu'il y a une collaboration avec Microsoft ? ou une mauvaise compréhension du terme « close » ? ou il y a quelquechose que je n'ai pas vu ?
      • [^] # Jeu de mots (douteux ? :) )

        Posté par  . Évalué à 3.

        À mon avis, c'est justement du second degré, avec un jeu de mot sur le terme anglais. un ":)" aurait peut-être été le bienvenu, mais c'est comme ça que je l'ai compris.
        • [^] # Vivi...

          Posté par  . Évalué à -3.

          ...c'est bien ca, desole pour le manque de ;) !
          • [^] # Re: Vivi...

            Posté par  . Évalué à -1.

            Ha bon... désolé d'avoir douté de ta conaissance de l'anglais... ;o)
  • # Les shaders, comment ça marche ?

    Posté par  . Évalué à 10.

    Grosso Modo, un Shader est un programme exécuté par le GPU qui agit sur les informations traversant le pipeline graphique, informations envoyées par le "programme utilisateur". Ces infos ça peut être des points 3D, des données de couleurs, des données textures, etc... Par exemple en sortie de pipeline vous avez un pixel à dessiner. En utilisant les infos sur la position de la lumière, sur la normale à la surface plus des infos de textures vous pouvez écrire un petit shader qui va assombrir ou éclaircir le pixel suivant la position de la plus ou moins rasante lumière : c'est du bump mapping. Et on peut faire vachement plein de trucs sympas, y'a qu'a voir les démos sur leur site.

    L'avantage de Cg, c'est qu'il permet de s'abstraire de pipeline utilisé (Direct X, OpenGL avec GPU ATI ou NVidia). Le programme qui utilise Cg sera accompagné d'un runtime qui compile les shaders "just in time" pour l'API utilisée.

    C'est un gros progrès pour les développeurs de 3D temps réel, qui finalement n'auront plus trop à ce soucier de savoir si ils écrivent pour OpenGL ou DirectX : voilà un bon point pour la portabilité.

    Et si NVidia ne fournit pas des solutions totalement libres pour Linux, n'oubliez pas qu'ils ont toujours supportés cet OS. NVidia n'est pas parfait, mais ils tirent la 3D vers le haut et Linux avec. Moi je dis "chapeau".
    • [^] # Re: Les shaders, comment ça marche ?

      Posté par  (site web personnel) . Évalué à 4.

      qu'ils ont toujours supportés cet OS

      corrige moi si je me trompe, mais fut un temps ou justement nvidia n'en avait rien a secoué de linux.
      Depuis quelques temps c'est vrai on a droit a des drivers (proprio) qui marchent pas torp mal.

      Et comme dit plus haut dans certains post, je ne crois pas a la bonne ame de Nvidia qui ne tente que d'avoir le monopole sur le marché 3D. C'est cool ils sont gentils avec leurs drivers, mais le jour ou directx et opengl et surtout opengl seront enterré par Cg il restera qui en haut qui decide? Nvidia et MS. Ca serait con de voir ATI & Cie se faire bouffer....
      • [^] # Cg != opengl

        Posté par  . Évalué à 10.

        Cg est un langage de compilation pour vertex et pixels shaders, pas une API graphique qui fait bcp d'autres choses.

        Nvidia s'interesse bcp a OpenGL pour le marché pro, car ce marché ne passera jamais a DirectX, et c'est la que les marges sont les plus impressionnante: une nvidia MX coutant moins de 150€ est revendue plus de 450€ en changeant juste son PCIid et en y ajoutant des drivers optimisés pour la 3D pro (grosse textures, bcp de lumières hards, lignes anti-aliasées). Sans compter que bcp de studio passent a linux, et devinez qui a les meilleurs drivers OpenGL (du moins du coté fonctionnalitées)?
  • # Réponse de Andrew Richards de Codeplay

    Posté par  . Évalué à 3.

    voila l'URL :
    http://www.theregister.co.uk/content/54/25732.html(...)

    PS : -1 car c'est assez laconique :)
  • # j'ai du mal à voir ce qui vous gêne

    Posté par  (site web personnel) . Évalué à 10.

    Qu'est ce que je vois comme reproches plus haut :

    - ca vient de nvidia :
    vous trouvez ca négatif vous qu'un constructeur assure une facon de mieux utiliser ses produits ?
    Meme si la chose était limité à directX et à leurs cartes je trouverai ca bien, ca ne donne qu'un plus, personne n'est obligé d'utiliser ca (mais ca va simplifier la vie de pas mal de monde)

    - coopération avec MS :
    Ils veulent que ca puisse s'interfacer avec directX non ? ca me semble tout à fait logique dans cette optique de coopérer avec le mainteneur des spec directX : MS
    A vrai dire ca serait une non coopération avec MS qui me gênrait

    - pas ouvert :
    Hum, les spec sont ouvertes, ils acceptent (ils écrivent meme "encourager") les implémentations externes notament une opensource. On peut regreter que leur compilo à eux soit fermé mais ils jouent franc jeu
    Ca s'interface avec opengl et directX (qui sont les deux API utilisées en général), ils veulent etre portable pour autre chose que leurs produits (produits concurents) .. ca me semble etre tout à fait honnete et de bonne initiative.

    - les spec restent controlées par nvidia :
    Bah, imaginons que moi je créé un langage parce que je pense qu'il est necessaire, si j'en ai les moyens je vais preferer en garder le controle pour éviter que quelqu'un fasse des choix qui me semblent mauvais. Sun a fait pareil, et ca me parait normal (quel gain ils auraient à risquer de voir déraper leur langage n'importe comment dans le futur ?)
    Et puis ils auraient lancé une structure type ANSI pour s'en occuper vous auriez dit que ca reviendrait au meme vu que ca serait "controlé" par nvidia.

    Franchement mis à part le fait de mettre leur compil en opensource il font tout pour rester le plus ouvert possible.
    Ca n'empeche pas la possibilité de dérapages mais je vois comprend mal les reproches sur la coopération avec MS, le fait qu'ils détiennent l'évolution de leur langage ....
    • [^] # Re: j'ai du mal à voir ce qui vous gêne

      Posté par  . Évalué à 7.

      Le fait que Nvidia et Microsoft sont en situation de quasi-monopole dans leur domaine
      respectif (complementaires) n'est certes pas un argument recevable pour critiquer ce
      nouveau "langage", meme si il y a largement matiere a un autre debat. Ce qui me gene
      c'est qu'on assiste la a la meme chose a laquelle on a assiste lorsque Microsoft a cree
      directX: un grand avantage pour les developpeurs qui n'ont plus a se soucier de
      l'implementation, et peuvent se concentrer sur leur soft lui-meme. C'est il est vrai un bond
      en avant de ce cote, mais les problemes sont la:
      - point de vue soft: quelques annees plus tard on voit le resultat. Tout le monde utilise
      cette API fermee, ce qui rend les jeux (exemple de soft le plus touche) difficilement
      portable sur une autre implementation. Alors on arrive toujours a s'en sortir a grand coup
      de wineX et autres rustines, qui si elles sont un veritable tour de force, n'en sont pas la
      bonne solution puisqu'on se borne a suivre le standard qu'on nous a impose.
      - point de vue hard: les constructeurs se bornent a aller dans le sens du bon vouloir des
      inges de directX pour la prochaine implementation: tel vertex-plopeur sera supporte ? On
      met le paquet la-dessus !!! Tel autre ne l'est pas ? Aux oubliettes. Tel constructeur
      implemente un fonction non direct X ? La fonction ne sera jamais exploitee. Un "bel"
      exemple est celui de 3dfx. Loin de moi le fait de dire que direct X a tue 3dfx, mais on voit
      que leur API glide ne les a pas aide. Leur fonctions propres non direct3d sont tombee dans
      l'oubli (souvenez vous du "T buffer").

      Bref j'ai peur qu'avec cette nouvelle couche d'abstraction chere aux developpeurs, ce soit
      directX et openGl qui courrent apres ce que Cg au final, et que celui-ci impose l'avenir de
      la 3d. Je ne veux pas paraitre parano, mais le marche est avide de ce genre d'unification qui
      apporte de la simplicitee. Une fois que tout le monde suit, une fois que c'est un standard, il
      est trop tard pour reculer.
      • [^] # Re: j'ai du mal à voir ce qui vous gêne

        Posté par  . Évalué à 10.

        Nvidia n'a pas de monopole, sinon tout juste commercial (et encore). Regarde 3dfx, ils avaient une position encore plus dominante avec un hard et surtout une API (le glide) complètement controlés.
        Seulement ils ont fait des erreurs et ont coulé vite fait. Les erreurs c'etait pas leurs extensions, mais le fait d'avoir ignorés longtemps la 3D fenétré, le mode 32 bits...

        Tout les autres joueurs de ce marché se plantent car ils leur manque souvent une pièce maitresse: le soft. S3 c'est planté la dessus, PowerVR itou, ATI a failli, Matrox aussi. Aujourd'hui si un fabriquant n'a pas de drivers digne de ce nom c'est le flop intégral assuré.

        D'ailleurs c'est un des coup de gueulle récurent de Carmark: les drivers qui ne suivent pas les specs ou qui sont buggés. Et ca pour tt le monde...
        • [^] # Re: j'ai du mal à voir ce qui vous gêne

          Posté par  . Évalué à 4.

          >Les erreurs c'etait pas leurs extensions, mais
          >le fait d'avoir ignorés longtemps la 3D fenétré,
          >le mode 32 bits...

          Je doute que la 3D fenetrée ai joué un grand role dans la chute de 3Dfx.
          Par contre avoir été en retard sur les cartes 2D/3D intégrés, avoir produit eux-meme leurs propres carte videos, être en retard au niveau prix/performances, la oui.

          Quand au Glide vs DirectX/OpenGL, DirectX fonctionnant sur toutes les cartes, ou est l'interet du Glide?

          Sinon pour revenir au language de NVidia, j'ai quand même l'impression qu'il va rentrer en conccurrence avec OpenGL2 en partie.
          Bref la guerre OpenGL vs DirectX continue..
          • [^] # Re: j'ai du mal à voir ce qui vous gêne

            Posté par  . Évalué à 5.

            Principalement ce qui a coulé 3Dfx, c'est sa gestion désastreuse d'un point de vue purment commerciale et non les limitations techniques. 3Dfx avait tous misé sur l'OEM et la vente de details pour joueurs fortuné, et n'a fait qu'un essais de produit entré de gamme pour les assembleurs ( vous savez la voodoo 2 + 2D je me rappel plus du nom tarabiscoté de la chose ), ils se sont donc retrouvé avec un marché super fluctuant, des problémes de productions et de stockage qui on coulait les finances de la boite bien avent la sortie du voodoo 3, qui fut aussi un echec faute de disponibilité.

            Bon apres pour le Cg, le but de NVidia est pas vraiment de rentré en concurence avec DirectX 9 et OpenGL2 ( 2 API qu'on risque d'attendre encore un petit bout de temps ) qui comporteront une programation des shaders, mais justement de paliler le manque actuel d'API pour les shaders ( unitées de traitements programmables present sur la carte ), NVidia comme ATI comme tous les grands nom de la 3D, on pariaient sur les shader pour faire exploser le nombre polygone et d'effet a l'ecran, ils en sont méme venue a en normaliser la programmation au niveau fonctionalité et asm. Le problémes c'est que leurs programmation complexe (asm), limite leurs integrations dans les jeux et autres applications, donc NVidia sort le Cg pour que dés maintenant les programmeurs integres les shaders a leurs softs et que tous le monde puisse, vendre plus de produit a grands renfort d'effets inedits.
            C'est pour cela que le Cg a des specifications ouvertes, si le Cg était propre a NVidia il se ramasserait lamentablement.
            Pour le moment le Cg est prevue pour palier le manque d'API actuel, mais il se pourrait aussi que dans le futur le Cg puisse permettre une evolution plus rapide des shaders et autres fonctions graphique avencés, sans attendre l'evolution des standars qui peuvent étre assez long ( cf OpenGL 2 ), donc ca a l'air pas mal comme idée.
      • [^] # Re: j'ai du mal à voir ce qui vous gêne

        Posté par  . Évalué à 8.

        Je pense qu'on ne peut pas comparer Cg avec DirectX.
        DirectX est une bibliothèque fermée, Cg est un language avec des specs ouvertes. Cela veut dire que n'importe qui peut écrire un compilateur pour Cg -> exit le problème de portabilité (théoriquement car il faut que quelqu'un écrive ce compilateur).
        En ce qui concerne le fait d'«imposer» sa norme, Nvidia ne va pas s'amuser à faire évoluer la norme du language car cela ne représente aucun intérêt pour eux et cela risque de les décribiliser au près des dévelloppeurs.
        En ce qui concerne l'avenir de la 3d, il n'y a aucune crainte à avoir car il ne s'agit que d'une *extension* pour faciliter la programmation bas-niveau.

        Il faut rester vigillant mais ne voyons pas le diable partout !
        • [^] # Re: j'ai du mal à voir ce qui vous gêne

          Posté par  . Évalué à 1.

          Oui mais le problème est que les specs d'OpengL2.0 prévoient justement un langage comme le Cg pour les shaders. Pourquoi NVidia (qui fait partie de l'ARB) s'emmerderait à développer et proposer le Cg ? Parce que s'ils arrivent à l'imposer avant que des cartes compatibles OGL2 n'arrivent, ils vont maîtriser totalement cette partie du marché. Même s'ils font un truc ouvert (ce qui est nécessaire pour que ce soit adopté en masse), on peut imaginer que ça va mieux marcher chez eux que chez les autres, ou que ça va marcher chez eux avant que ça marche chez les autres... Mais de toutes façons, ils vont s'imposer comme un acteur majeur du marché, peut-être plus proches des professionnels (qui y viennent, vu le rapport qualité/prix).

          Maintenant, je pense plutôt que c'est Microsoft qui est venu voir NVidia pour leur demander d'être gentils avec eux, de pas leur casser leur Dx... Sinon, je ne vois pas trop l'intérêt pour NVidia, à part peut-être une vague reconnaissance... ?
          • [^] # Re: j'ai du mal à voir ce qui vous gêne

            Posté par  (site web personnel) . Évalué à 4.

            Tu vois pas l'interet ?

            dX est tout de meme encore beaucoup plus utilisé dans les jeux que OGL (et quand il y a les deux les dX est souvent mieux fait, les jeux id sont l'exception).
            Ces cartes étant achetées principalement par des gamer ils ne peuvent l'ignorer. Il me semble donc logique qu'ils cherchent à ce qu'elles soient utilisable au plus facilement avec dX.

            Ca me parait aussi "bete" que ca. Et pui sun outil qui fait abstraction de l'API (dX ou OGL) d'en bas ca n'est pas négatif.

            Visiblement c'est le fait qu'ils traitent avec MS (via directX) qui te gene, mais bon, que dX soit beaucoup utilisé et apartienne à MS c'est un fait, Nvidia ne va pas faire semblant de l'ignorer tout de meme ?

            Je dirais meme que si l'optique était de passer au tout OGL, un outil qui permet de faire une prog unique pour OGL et dX (du moins sur les shader) est peu etre le meilleur moyen d'avoir une transition pour les developpeurs ...

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.