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 :

openGL : plusieurs cartes video ?


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 68
    Par défaut openGL : plusieurs cartes video ?
    Bonjour à tous,

    Dans un premier temps, j'aimerai une réponse un peu générale, aussi je ne donne pas de détails précis sur le code utilisé.
    J'ai fait une appli openGL qui doit ouvrir 4 fenètres windows différentes sur 4 écrans différents. Dans ma config de test, j'ai une carte nVidia 9600GT(pcie) et une carte ATI radeon 5200 (PCI), avec deux écrans par carte vidéo. les fenêtres s'affichent correctement sur la carte nVidia (principale) mais pas sur l'autre carte (j'ai juste des rectangles blancs, pas de dessin openGL).
    J'ai configuré un écran principal et étendu le bureau windows à tous les autres écrans.
    Chaque fenètre est une classe dérivée de CFrameWnd, qui crée son propre dc et rendering context openGL.

    Y'a t-il une methode particulière à suivre pour dessiner en openGL sur plusieurs cartes graphiques ?

    Merci d'avance

    Oliv.

  2. #2
    Membre éprouvé Avatar de Robxley
    Homme Profil pro
    Docteur ingénieur traitement d'image
    Inscrit en
    Mai 2009
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Docteur ingénieur traitement d'image

    Informations forums :
    Inscription : Mai 2009
    Messages : 158
    Par défaut
    Je dis peut être des bêtises mais il me semble que l'exécution d'opengl est indépendant du matériel. Attention je ne dis pas que le matériel ne sert à rien bien sur que les cartes graphiques permet d'accélérer le rendu opengl. Mais que la liaison entre Opengl et ton hardware se fait lors de la création d'un contexte entre Opengl et ton hardware (généralement durant la création de ta fenêtre d'affichage), et contexte qui par défaut prend bien sur ta configuration graphique par défaut de ton système soit dans ton cas ta carte NVIDIA.

    Pour te donner un exemple, je sais pas si tu connais un peu SDL, mais lors de la création de ton contexte à l'aide de la fonction :
    SDL_Surface* SDL_SetVideoMode(int width, int height, int bitsperpixel, Uint32 flags);

    avec width, height et bitsperpixel : respectivement largeur, hauteur, profondeur de ta fenêtre.

    Et flags : qui peut prend les valeurs :
    SDL_SWSURFACE : qui crée un contexte avec ton système plutôt que ta carte vidéo
    ou
    SDL_HWSURFACE : qui crée un contexte avec ta carte vidéo.

    Donc dans ton cas je pense que c'est un peu la même idée que dans mon exemple mais sur la sélection de l'une ou l'autre carte graphique.

    Après je ne sais pas s'il existe une API style SDL qui permet de faire le choix entre plusieurs pilote de carte graphique.

  3. #3
    Membre très actif Avatar de oxyde356
    Homme Profil pro
    Ingénieur Recherche Imagerie
    Inscrit en
    Février 2006
    Messages
    797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Recherche Imagerie

    Informations forums :
    Inscription : Février 2006
    Messages : 797
    Par défaut
    Surement un problème de contexte OpenGL, vérifie les erreurs retournées par les fonctions OpenGL

  4. #4
    Membre chevronné Avatar de icer
    Inscrit en
    Janvier 2006
    Messages
    332
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 332
    Par défaut
    Bonjour,

    Il n'y pas de spécification OpenGL pour gérer les contextes. Même avec Glut, qui est pourtant fait pour gérer la fenêtre de l'application et les événements utilisateur, je pense qu'il n'est pas possible de sélectionner une carte graphique.

    La sélection de la carte graphique devrait plutôt se faire au niveau du système d'exploitation. Peut-être qu'il y a un moyen de sélectionner la carte graphique avant de démarrer ton application? Dans ce cas il faudrait consulter la documentation de l'OS.

    Bon courage.

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


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

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

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 157
    Billets dans le blog
    152
    Par défaut
    Je ne sais pas comment réglé le problème dans un tel cas, je sais juste que chaque écran est représenté par un 'display'. Le second point, c'est que sous Windows rien ne marche comme sous les autres plateformes.
    Donc pour résumé, je pense comme icer, que pour arrivé à ce que vous voulez, il faut tripatouiller avec la WinAPI...
    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. Barebone et carte video silencieuse
    Par shenron666 dans le forum Composants
    Réponses: 2
    Dernier message: 02/10/2005, 19h22
  2. ma carte video est elle morte?
    Par Death83 dans le forum Composants
    Réponses: 6
    Dernier message: 09/09/2005, 23h21
  3. Connection Cable - plusieurs carte réseau
    Par Ultra-FX dans le forum Réseau
    Réponses: 7
    Dernier message: 08/02/2005, 09h06
  4. charger une scene dans la memoire de la carte video
    Par Arnaudv6 dans le forum OpenGL
    Réponses: 10
    Dernier message: 11/09/2004, 01h44
  5. Réponses: 7
    Dernier message: 04/06/2004, 15h20

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