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 + JNI + linux


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 22
    Par défaut Opengl + JNI + linux
    Salut,

    Je voudrais faire un programme java qui utilise l'OpenGL grace à JNI. J'ai ce code pour initialiser l'Opengl:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    	// Obtention du "Device context"
    	hDC = ::GetDC(hWnd);
     
    	if (hDC == 0) {
    		return false;
    	}
     
    	// On choisit le format pour le "Device context"
    	PIXELFORMATDESCRIPTOR pfd;
    	::ZeroMemory(&pfd, sizeof(pfd));
    	pfd.nSize = sizeof(pfd);
    	pfd.nVersion = 1;
    	pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER;
    	pfd.iPixelType = PFD_TYPE_RGBA;
    	pfd.cColorBits = 24;
    	pfd.cDepthBits = 16;
    	pfd.cStencilBits = 1;
    	pfd.iLayerType = PFD_MAIN_PLANE;
     
    	int format = ::ChoosePixelFormat(hDC, &pfd);
    	if (format == 0) {
    		::ReleaseDC(hWnd, hDC);
    		hDC = 0;
    		return false;
    	}
     
    	if (!::SetPixelFormat(hDC, format, &pfd)) {
    		::ReleaseDC(hWnd, hDC);
    		hDC = 0;
    		return false;
    	}
     
    	// Cr�ation du contexte
    	hRC = ::wglCreateContext(hDC);
    	if (hRC == 0) {
    		::ReleaseDC(hWnd, hDC);
    		hDC = 0;
    		return false;
    	}
     
    	// Activation du contexte
    	if (!::wglMakeCurrent(hDC, hRC)) {
    		::wglDeleteContext(hRC);
    		hRC = 0;
    		::ReleaseDC(hWnd, hDC);
    		hDC = 0;
    		return false;
    	}
     
    	// Tout s'est bien pass�
    	return true;
    Le problème c'est que hWnd, hDC sont des classes propre a windows donc sa ne marche pas sous linux Et je ne sais pas comment faire

    Merci de m'aider

  2. #2
    Expert confirmé

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 819
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 819
    Par défaut
    Salut

    Citation Envoyé par kilopoli Voir le message
    Et je ne sais pas comment faire
    Question conne, mais... ça ne serait pas plus simple d'utiliser JOGL?
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 22
    Par défaut
    Je comptais faire un éditeur qui utilise java ce qui rendra l'édition plus convivial et pour jouer au jeu, sa sera uniquement en C++ qui est plus rapide que java

  4. #4
    Expert confirmé

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 819
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 819
    Par défaut
    Citation Envoyé par kilopoli Voir le message
    Je comptais faire un éditeur qui utilise java ce qui rendra l'édition plus convivial et pour jouer au jeu, sa sera uniquement en C++ qui est plus rapide que java
    Je veux bien, no problem (je ne lancerai pas de troll à savoir qui sera le plus rapide)... mais ça n'enlève rien à ma question: pourquoi ne pas utiliser JOGL pour la partie Java?
    On a déjà inventé la roue, c'est peut-être pas la peine de s'y remettre
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/04/2009, 19h22
  2. Optimisation d'OpenGL sous Linux
    Par erniubo dans le forum OpenGL
    Réponses: 5
    Dernier message: 23/12/2008, 11h44
  3. Bench OpenGl pour Linux
    Par _ZoD_ dans le forum OpenGL
    Réponses: 1
    Dernier message: 06/04/2007, 13h25
  4. Mettre à jours les dev d'OpenGL sous Linux
    Par Yno dans le forum OpenGL
    Réponses: 6
    Dernier message: 06/11/2006, 09h17
  5. OpenGL et Linux
    Par Tellmarch dans le forum OpenGL
    Réponses: 6
    Dernier message: 18/10/2004, 16h26

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