bonjour,
je suis entrain de créer un minecraft-like mais comme je suis débutant j'ai quelques problèmes surtout avec OpenGL avec ce bout de code en ce moment :
j'ai besoin de "f" pour utiliser certaines fonctions d'OpenGL (c'est un QGLFunctions)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if(f.glIsShader(m_vertexID) == GL_TRUE) f.glDeleteShader(m_vertexID);
m_vertexID est un GLuint qui contient l'ID de mon vertex shader
j'ai un assert sur la première ligne qui me renvois a ce bout de qglfunctions.h
sortie de l'application :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 inline GLboolean QOpenGLFunctions::glIsShader(GLuint shader) { #ifdef QT_OPENGL_ES_2 GLboolean result = ::glIsShader(shader); #else Q_ASSERT(QOpenGLFunctions::isInitialized(d_ptr)); GLboolean result = d_ptr->IsShader(shader); #endif Q_OPENGL_FUNCTIONS_DEBUG return result; }
une fenetre visual c++ runtime library s'ouvre avec un message "this application has requested the Runtime to terminate it in an unusual way, please contact..."Démarrage de C:\Users\Administrateur\Desktop\programmes\build-OpenGL-Desktop_Qt_5_3_0_MinGW_32bit-Debug\debug\OpenGL.exe...
ASSERT: "QOpenGLFunctions::isInitialized(d_ptr)" in file C:\Qt\5.3\mingw482_32\include/QtGui/qopenglfunctions.h, line 1715
Invalid parameter passed to C runtime function.
Invalid parameter passed to C runtime function.
C:\Users\Administrateur\Desktop\programmes\build-OpenGL-Desktop_Qt_5_3_0_MinGW_32bit-Debug\debug\OpenGL.exe s'est terminé avec le code 3
puis une fenetre OpenGL.exe a cessé de fonctionner.
(oui j'ai appellé mon programme OpenGL pour l'instant)
j’espère que quelqu'un pourra m'aider
merci
Partager