IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenGL Discussion :

Débuter avec OpenGL, quelel version ?


Sujet :

OpenGL

  1. #1
    Membre éclairé Avatar de Kromagg
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2008
    Messages : 275
    Par défaut Débuter avec OpenGL, quelel version ?
    Bonjour à tous

    J'aimerai me lancer dans l'API OpenGL, seulement avec toutes les nouvelles modifications de la nouvelle version de l'API je ne sais plus trop comment je dois organiser mon apprentissage.
    Dois-je apprendre à utiliser une ancienne version d'abord (avec toutes les fonctions déprécier que cela inclus) + passer à la nouvelle, ou alors directement utiliser la dernière version ?

    Merci d'avance
    Kromagg

  2. #2
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 895
    Par défaut
    Bonjour

    Puisque tu débutes, autant commencer par le commencement. La base d'OpenGL repose toujours sur les spécifications d'OpenGL 1.x. Le "Red Book" d'OpenGL (la référence) se trouve sur Internet très facilement et je crois que tu peux trouver un lien sur ce forum dans les post-its.
    Les versions supérieurs ne proposent que des optimisations dans le rendu et les shaders.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 35
    Par défaut
    Bonjour, je ne suis pas d'accord avec GLDavid. Je suis débutant, comme vous, en OpenGL et j'ai décidé d'apprendre directement OpenGL 3.0. L'approche "tout shader" est maintenant généralisée (DirectX, OpenGL). A mon humble avis, il est urgent d'oublier ou de ne pas apprendre les fonctionnalités dépréciées D'OpenGL.

  4. #4
    Membre chevronné
    Inscrit en
    Février 2008
    Messages
    413
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Février 2008
    Messages : 413
    Par défaut
    Bonjour,

    ayant débuté il y a quelques années, je me range plutôt du côté de GLDavid: les bases, même si à terme elles seront dépréciées, sont super importantes.
    Quand on débute et qu'on veut afficher un cube, si il faut en plus s'occuper des shaders qui vont avec ca me paraît beaucoup d'un coup.

    Quand je vois le temps qu'il m#a fallût pour "apprendre" les shaders et les maîtriser un minimum...

    Mais bon, les avis des gens qui débutent directement en 3.0 comme toi TresNulDev m'interessent du coup, peut être n'est -ce pas SI compliqué que ca au final...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 35
    Par défaut
    Bonjour ShevchenKik. Puisque DirectX, OpenGL ES et maintenant OpenGL 3.0 sont passées au "tout shader", et d'après le peu d'expérience que j'en ai, je crois vraiment qu'il vaut mieux commencer par les bonnes pratiques directement. De plus, si on a déjà fait un peu de programmation auparavant (genre C/C++ ou Java...), on ne sera pas très dépaysé par GLSL. Ce qui est difficile, je crois, ce sont les algorithmes, pas les langages. On peut alors très bien prendre un ancien tutoriel OpenGL et l'adapter aux pratiques moderne. Si c'est un vrai tutoriel bien fait, l'accent sera mis sur l'algorithme présenté et le code correspondant sera secondaire; donc, il n' y aura pas besoin de connaître les fonctionnalités dépréciées.

  6. #6
    Membre chevronné
    Inscrit en
    Février 2008
    Messages
    413
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Février 2008
    Messages : 413
    Par défaut
    Re,

    oui je comprends bien ton point de vue, et qq part tu as raison, mais il y a un point TRES important que j'ai oublié dans mon premier post:
    Quel sont les plateformes (ie: les cartes graphiques) visées?

    J'en fait la triste experience tous les jours depuis que je fais de développe de manière professionnelle: Les FBOs, shaders, VBOs et tout c bien beau, mais si la moitié (voire le quart, le 8eme, qu'importe le nombre) des clients visés n'ont pas de carte qui supporte ca, tu peux faire ce que tu veux, au final il te faudra prévoir des solutions pour ces ordis là, en l'occurence faire du rendu en OpenGL 1.2 par exemple...

    Si c'est pour bosser dans les jeux, c moins grave, car les joueurs maintiennent leurs PCs un minimum à jour...dans l#industrie par contre c'est une autre paire de manches...

    Crois-moi j'aimerais bien passer a OpenGL 3.0....peut être d'ici 5 ans...

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 35
    Par défaut
    ShevchenKik, je n'avais pas pensé au problème des plateformes "cibles" pour le développement en OpenGL. De ce point de vue, votre avis est très valable et pertinent. Le fait est que j'essaie de développer en OpenGL en amateur, pour le plaisir... Donc le problème que vous soulevez ne me concerne pas trop...

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 399
    Par défaut
    Salut,

    moi je pense clairement que openGL 2.x (ou anterieur) doit rester l'API bas niveau de choix pour l'apprentissage de la 3D. openGL 3.0 (et posterieur) est acces optimisation et utilisation massive du GPU.

    Debuter en 3D n'est déja pas forcément évident alors si en plus il faut directement se farcir les vbo,fbo, shader et autres. C est tellement vaste maintenant qu'il faut apprendre les concepts au fur et a mesure. A commencer par les tranformations matricielles dans un univers 3D.

    Le mode immédiat a beau être le mode de rendu le plus lent, il est aussi le plus intuitif et est donc parfait pour l'aprentissage. Ca permet d'appréhender les concepts de la 3D en douceur. Une fois qu'on maitrise le mode immédiat, le passage aux vertex arrays / vbo se fait très facilement.

    Pareil avant de se lancer dans la programmation GPU, il faut un minimum de maitrise de la 3D avec pipeline fixe.

    Je trouve openGL 3 en peu élististe pour se lancer dedans sans aucune connaissance 3D. Evidemment c'est loin d'être impossible mais ce sera plus ardue ca c'est sur.

    Ensuite niveau tuto, tu trouvera tout ce que tu veux très facilement jusqu'a openGL 2.x, pour le 3.x c'est déja moins évident.

    Apres tu dis vouloir te lancer dans l'apprentissage d'openGL, mais c'est l apprentissage de l'API ou de la 3D ? As tu deja touché a des moteurs 3D haut niveau ou a direct3D ou autre, ou es tu totalement novice dans le domaine de la 3D ?

    Donc en gros moi je dirai :
    _ Si tu n'as aucune connaissance en 3D et que tu souhaites utiliser openGL pour apprendre la 3D alors commence par openGL 2.x (ou anterieur)
    _ Si tu maitrise déja bien la théorie de la 3D que tu connais des moteurs/API et que ce qui t'interesse est l'apprentissage de l'API openGL alors la oui autant passer directement a la version 3.x
    SPARK
    Moteur de particule C++ opensource avec modules de rendu OpenGL, Irrlicht et SFML

  9. #9
    Membre extrêmement actif

    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 408
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 408
    Par défaut
    d'accord avec ceux préconisant opengl < 3

    connaitre le pipeline fixe ne peut qu'être bénéfique pour comprendre l'intérêt du pipeline programmable, et pour afficher un simple cube, c'est amplement suffisant.

  10. #10
    Membre éclairé Avatar de Kromagg
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2008
    Messages : 275
    Par défaut
    Oui je connais déjà un peu la 3D, je suis sur ce livre en ce moment http://www.amazon.fr/Math-Primer-Gra.../dp/1556229119

    J'ai déjà quelques connaissances, très basique de DirectX 9 grâce à ce livre (que je commence) : http://www.amazon.fr/Introduction-3d.../dp/1556229135

    J'ai aussi déjà touché à Ogre sans entrer vraiment en profondeur dans l'utilisation de ce dernier.

    En fait si je souhaite apprendre OpenGL, c'est parce que je rentre en master Réalité Virtuelle et que lors de mon entretien, on m'a dit qu'OpenGL était l'API le plus utilisé dans ce domaine. De plus, j'aimerai avoir quelques notions d'OpenGL avant de commencer ma formation, histoire d'avoir un peu d'avance, et honnêtement je ne pense pas qu'ils vont nous apprendre les rouages de la version 3.0

    Kromagg

  11. #11
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 895
    Par défaut
    Citation Envoyé par Kromagg Voir le message
    Oui je connais déjà un peu la 3D, je suis sur ce livre en ce moment http://www.amazon.fr/Math-Primer-Gra.../dp/1556229119

    J'ai déjà quelques connaissances, très basique de DirectX 9 grâce à ce livre (que je commence) : http://www.amazon.fr/Introduction-3d.../dp/1556229135

    J'ai aussi déjà touché à Ogre sans entrer vraiment en profondeur dans l'utilisation de ce dernier.

    En fait si je souhaite apprendre OpenGL, c'est parce que je rentre en master Réalité Virtuelle et que lors de mon entretien, on m'a dit qu'OpenGL était l'API le plus utilisé dans ce domaine. De plus, j'aimerai avoir quelques notions d'OpenGL avant de commencer ma formation, histoire d'avoir un peu d'avance, et honnêtement je ne pense pas qu'ils vont nous apprendre les rouages de la version 3.0

    Kromagg
    Hello

    Je suis content de voir que les commentaires suivant mon post te recommandent également de prendre connaissance d'abord de la base avant d'attaquer les derniers raffinements d'une API. Ce qui est logique somme toute. On ne peut comprendre les dernières évolutions d'un système si on ne connait pas la base.
    Je ne connais pas le master que tu veux suivre. Mais, lorsque j'ai appris OpenGL (d'ccord, c'était il y a 10 ans), on nous a enseigné que la base. Libre à nous d'en rester là ou de prendre notre autonomie pour apprendre les optimisations. Je suppose que ce sera la même chose pour ton master. On vous enseignera la base, puis à vous de vous débrouiller pour chercher l'information pour améliorer vos rendus.

    Une petite chose que l'on oublie souvent. Apprendre OpenGL, c'est bien. Mais c'est encore mieux lorsqu'on appréhende OpenGL avec un langage bien acquis. En gros, la connaissance d'un langage va conditionner ton apprentissage d'OpenGL. Inutile d'espérer des performances ahurissantes quand on ne sait pas optimiser un programme dans un langage donné.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

  12. #12
    Membre éclairé Avatar de Kromagg
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2008
    Messages : 275
    Par défaut
    Je vais donc commencer par la version 2.x car je pense de toute façon que je ne commencerai pas par la 3.0 au master dans lequel je suis pris.

    Merci à tous pour vos conseils

    Kromagg

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Installer et débuter avec WebGL, l'implémentation d'OpenGL pour nos navigateurs
    Par LittleWhite dans le forum Développement 2D, 3D et Jeux
    Réponses: 0
    Dernier message: 24/04/2013, 23h56
  2. Débuter avec openGL, problem pour afficher des primitives
    Par kosa_nostra dans le forum OpenGL
    Réponses: 1
    Dernier message: 06/11/2011, 20h40
  3. Débuter avec OpenGL 3.x
    Par mohdaef dans le forum OpenGL
    Réponses: 24
    Dernier message: 04/06/2010, 01h39
  4. Débuter avec OpenGL
    Par Franck.H dans le forum OpenGL
    Réponses: 3
    Dernier message: 26/11/2009, 19h12
  5. Version pour débuter avec DELPHI
    Par Lokia dans le forum Delphi
    Réponses: 19
    Dernier message: 28/02/2007, 18h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo