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 :

Interprocess possible en OpenGL ?


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2006
    Messages
    450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 450
    Par défaut Interprocess possible en OpenGL ?
    Bonjour,

    Je suis en train de travailler dans une application qui travaille sur deux processus. L'un d'eux sert pour l'affichage (qui ne nous appartient pas et qui est closed source), l'autre c'est notre application. Comme l'on essaye de deporter le maximum de code du framework proprietaire, je me suis demande s'il etait possible de creer par exemple un VBO dans un processus A, d'envoyer l'identifiant de ce VBO au processus B et que ce soit le processus B qui affiche le VBO. Savez-vous si c'est possible ?

  2. #2
    Membre Expert
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 580
    Par défaut
    oui et non

    si tu veux pouvoir créer une resource opengl dans un thread et la partager avec un autre thread il faut que tu actives le partage de contexte avec wglShareLists

    mais si le processus d'affichage est closed-source, je sais pas si tu peux obtenir le handle du contexte d'origine
    et en plus, il faut que tu actives le contexte dans le thread courant, et donc le thread qui avait le contexte devra le récupérer après
    si c'est pas prévu à l'origine ça va être galère voire impossible

    à mon avis, c'est mort
    Tutoriels OpenGL
    Je ne répondrai à aucune question en MP
    - Si c'est simple tu dis que c'est compliqué et tu le fait
    - Si c'est compliqué tu dis que c'est simple et tu le sous-traite ou le fait faire par un stagiaire.

  3. #3
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    En plus si ça peut fonctionner entre threads d'un même processus, je doute que ce soit toujours le cas entre deux processus différents.

  4. #4
    Membre émérite

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2006
    Messages
    450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 450
    Par défaut
    wglShareLists marche si c'est deux contextes dans le meme process... Je crois que c'est impossible...

  5. #5
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 540
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 540
    Par défaut
    A tout hasard ( je ne suis pas spécialiste d'Open GL ) tu peux toujours créer un pipe je précise bien que c'est une éventualité..
    Sous Windows il y a une API comme CreatePipe
    Pipes
    A pipe is a section of shared memory that processes use for communication. The process that creates a pipe is the pipe server. A process that connects to a pipe is a pipe client. One process writes information to the pipe, then the other process reads the information from the pipe. This overview describes how to create, manage, and use pipes.
    attention à utiliser avec précaution !

  6. #6
    Membre émérite

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2006
    Messages
    450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 450
    Par défaut
    Citation Envoyé par Mat.M Voir le message
    A tout hasard ( je ne suis pas spécialiste d'Open GL ) tu peux toujours créer un pipe je précise bien que c'est une éventualité..
    Sous Windows il y a une API comme CreatePipe
    Le probleme n'est pas la communication entre les process, le probleme est le partage de ressource OpenGL entre les process.

  7. #7
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 540
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 540
    Par défaut
    Citation Envoyé par TanEk Voir le message
    Le probleme n'est pas la communication entre les process, le probleme est le partage de ressource OpenGL entre les process.
    ?? Open GL ne possède pas de ressources !
    Open GL c'est juste une interface entre la carte graphique et le reste du système informatique ;
    Open GL lui il traduit les instructions du genre : dessines-moi tel ou tel polygone et le chipset de la carte graphique va comprendre cela et agir en conséquence.
    La carte graphique c'est elle oui qui a les ressources

Discussions similaires

  1. Réponses: 5
    Dernier message: 06/11/2013, 09h28
  2. Le multithread SDL/OpenGL est il possible ?
    Par aliwatte dans le forum SDL
    Réponses: 1
    Dernier message: 05/03/2013, 08h18
  3. Réponses: 1
    Dernier message: 23/02/2009, 12h53
  4. d'un modeleur a openGL est ce possible?
    Par nooblender dans le forum OpenGL
    Réponses: 5
    Dernier message: 03/09/2006, 11h32
  5. [Matrice]Est ce possible avec OpenGL?
    Par bnoix dans le forum OpenGL
    Réponses: 7
    Dernier message: 19/05/2005, 17h47

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