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 :

glGetString(GL_VERSION) et creation de context


Sujet :

OpenGL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 74
    Points : 41
    Points
    41
    Par défaut glGetString(GL_VERSION) et creation de context
    Bonjour,

    J'ai remarquer que lorsque je crée un context opengl avec wglCreateContext(), glGetString(GL_VERSION) retourne 4.0 !
    Est-ce normal ? Je croyais que pour créer un context opengl 3.x / 4.x nous devions utiliser wglCreateContextAttribs ?

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 064
    Points
    219 064
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    En fait, dans la page de documentation, rien ne dit que c'est le numero de version du contexte qui est retourné. Par contre, il est dit que cela permet de reconnaître la plateforme (et les capacités ?). Donc, c'est surement toujours la version OpenGL maximale supportées.

    Dans la spécification, ils sont un peu plus précis :
    GetString returns the version number (in the VERSION string) that can be
    supported by the current GL context.
    The profile implemented by the context may be queried by calling GetIntegerv
    with value CONTEXT_PROFILE_MASK, which returns a mask containing one of the
    bits in table 22.1, corresponding to the API profile implemented by the context (see
    appendix D.1).
    Après, pour tester, je conseillerai de forcer le contexte à 2.0 (ou 3.0) et de voir ce que retourne la fonction, mais je pense qu'il retournera toujours 4.0 (sinon, il n'y aurait pas de moyen de savoir si un contexte 4.0 est supporté).
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 74
    Points : 41
    Points
    41
    Par défaut
    merci d'avoir pris le temps de me répondre ! Lorsque je force le contexte a 2, la fonction échoue. Lors que je la force a 3.3, GL_VERSION retourne 3.3 ...

  4. #4
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 064
    Points
    219 064
    Billets dans le blog
    120
    Par défaut
    L'algorithme décrit par les spécifications et qui est lié à wglCreateContext() est un algorithme qui essaie de trouver le contexte qui possède la configuration la plus proche (best match) de la configuration demandée par l'utilisateur.
    Plus précisément, la carte graphique / pilote possède une série de contexte (que l'on peut connaitre avec glxinfo). Avec wglCreateContextAttribs(), nous spécifions le contexte que nous aimerions avoir (rien ne dit que le contexte crée sera exactement celui que l'on veut). Donc j'imagine que les contextes prioritaires, sont bien les contexte OpenGL 4.0.
    (En fait, la spécification défini même comment les différentes options sont prioritaires et si on doit garder celle dont le score est le plus haut, ou le plus bas).
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

Discussions similaires

  1. creation de contextes
    Par ninsekh dans le forum QlikView
    Réponses: 2
    Dernier message: 06/02/2012, 09h26
  2. Réponses: 0
    Dernier message: 30/06/2009, 12h42
  3. Réponses: 1
    Dernier message: 16/01/2008, 12h30
  4. [système] Comment ajouter un item dans le context menu de Windows ?
    Par ddmicrolog dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 29/06/2005, 17h03
  5. Creation d une clee dans la registry en VC++
    Par rico27fr dans le forum MFC
    Réponses: 4
    Dernier message: 30/05/2002, 12h36

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