Salut les jeunes,

J'utilise la librairie de binding Pyopengl et j'ai un petit soucis avec la génération de vertex buffer. Avec la génération de nom, plus exactement.

Voici le code tout bête que j'ai pu trouver dans les tutoriels que j'ai lus :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
from OpenGL import GL
 
# ...
 
name = GL.GLuint(0)
GL.glGenBuffers(1, name)
 
# ...

Code pour lequel je reçois l'erreur suivante :

ValueError: glGenBuffers requires 1 arguments (n), received 2: (1, c_uint(0L))

Sauf que la signature de la méthode glGenBuffers est :

glGenBuffers( GLsizei(n), GLuintArray(buffers) ) -> None

2 arguments donc.

On m'a également conseillé d'utiliser la "version ARB" de cette fonction, de la manière suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
from OpenGL import GL
from OpenGL.GL.ARB import vertex_buffer_object
 
# ...
 
self.__buffer = GL.GLuint(0)
vertex_buffer_object.glGenBuffersARB(1, self.__buffer)
 
# ...
J'obtiens malheureusement exactement la même erreur. Je débute un peu en Python donc je me dis qu'il y a peut-être quelque chose que je fais mal. J'espère donc qu'une âme charitable pourra m'éclairer de ses lumières.

Pour info j'utilise pyopengl 3.0.0

Merci d'avance !